/* ==========================================================================
   OPTION B — « ATELIER »  ·  surcharge visuelle du thème enfant
   Palette : graphite #0E1418 · os #F1F0EC · pétrole #2E7F8C · laiton #C2A16B
   Typo    : Space Grotesk (titres) + Inter (texte)
   Tout est scopé sur body.wh-option-b → retirer la classe = retour à l'ancien
   ========================================================================== */

body.wh-option-b {
    overflow-x: hidden;
    --ob-graphite: #0E1418;
    --ob-graphite-2: #162027;
    --ob-graphite-3: #1E2A31;
    --ob-bone: #F1F0EC;
    --ob-bone-2: #E9E8E3;
    --ob-petrol: #2E7F8C;
    --ob-petrol-dark: #1F5C66;
    --ob-brass: #C2A16B;
    --ob-ink: #0E1418;
    --ob-muted: #6C777D;
    --ob-muted-light: #A9B4BA;
    --ob-line: #DBDAD4;
    background: var(--ob-bone) !important;
    color: #2C3439 !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

body.wh-option-b h1,
body.wh-option-b h2,
body.wh-option-b h3,
body.wh-option-b h4,
body.wh-option-b .wh-hero-title,
body.wh-option-b .wh-ap-title,
body.wh-option-b .wh-faq-home-title,
body.wh-option-b .wh-footer-heading {
    font-family: 'Space Grotesk', 'Inter', sans-serif !important;
}

/* ==========================================================================
   1. EN-TÊTE
   ========================================================================== */

body.wh-option-b .site-header {
    background: var(--ob-graphite) !important;
    border-bottom: 1px solid #232F35 !important;
    box-shadow: none !important;
}

body.wh-option-b body.wh-option-b .custom-warehouse-header {
    background: var(--ob-graphite) !important;
    padding: 18px 40px !important;
}

body.wh-option-b .wh-logo-text {
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    color: #FFFFFF !important;
    font-size: 24px !important;
}

body.wh-option-b .wh-roof path {
    stroke: var(--ob-petrol) !important;
}

/* Barre de recherche : rectangle graphite, filet fin */
body.wh-option-b .wh-search-form {
    background: var(--ob-graphite-2) !important;
    border: 1px solid #2C3A42 !important;
    border-radius: 0 !important;
    overflow: hidden;
}

body.wh-option-b .wh-search-field {
    background: transparent !important;
    color: #E7ECEE !important;
    font-size: 13px !important;
}

body.wh-option-b .wh-search-field::placeholder {
    color: #7C8A90 !important;
}

body.wh-option-b .wh-search-category {
    background: transparent !important;
    color: #A9B4BA !important;
    border-left: 1px solid #2C3A42 !important;
    font-size: 12px !important;
}

body.wh-option-b .wh-search-btn {
    background: var(--ob-petrol) !important;
    color: #FFFFFF !important;
    border-radius: 0 !important;
}

/* Compte / panier */
body.wh-option-b .wh-header-right .wh-label,
body.wh-option-b .wh-header-right .wh-value,
body.wh-option-b .wh-cart-text {
    color: #D7DEE1 !important;
    font-size: 11px !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-header-right .wh-label {
    color: #7C8A90 !important;
}

body.wh-option-b .wh-cart-count {
    background: var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

/* Navigation secondaire */
body.wh-option-b .wh-sub-nav-bar {
    background: var(--ob-graphite-2) !important;
    border-top: 1px solid #223037 !important;
    border-bottom: 1px solid #223037 !important;
}

body.wh-option-b .wh-sub-nav-link,
body.wh-option-b .wh-sub-nav-menu > li > a {
    color: #B8C2C7 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-sub-nav-link:hover,
body.wh-option-b .wh-sub-nav-menu > li > a:hover,
body.wh-option-b .wh-sub-nav-menu > li.current-menu-item > a {
    color: #FFFFFF !important;
    box-shadow: inset 0 -2px 0 var(--ob-petrol);
}

/* ==========================================================================
   2. HERO — graphite, texte à gauche, photo à droite
   ========================================================================== */

body.wh-option-b .wh-hero-section {
    min-height: 620px !important;
    display: block !important;
    text-align: left !important;
    background-color: var(--ob-graphite) !important;
    background-image: var(--bg-desktop) !important;
    background-size: min(50%, 720px) 100% !important;
    background-position: right center !important;
    background-repeat: no-repeat !important;
}

body.wh-option-b .wh-hero-overlay {
    background-image: linear-gradient(
        90deg,
        #0E1418 0%,
        #0E1418 33%,
        rgba(14, 20, 24, .97) 40%,
        rgba(14, 20, 24, .78) 48%,
        rgba(14, 20, 24, .44) 58%,
        rgba(14, 20, 24, .14) 70%,
        rgba(14, 20, 24, 0) 82%
    ) !important;
}

body.wh-option-b .wh-hero-content {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 96px 44% 96px 36px !important;
    min-height: 620px !important;
    justify-content: center !important;
    align-items: flex-start !important;
    text-align: left !important;
    gap: 0 !important;
}

body.wh-option-b .wh-hero-top,
body.wh-option-b .wh-hero-bottom {
    align-items: flex-start !important;
    max-width: 100% !important;
    width: 100% !important;
}

body.wh-option-b .wh-hero-top::before {
    width: 26px !important;
    height: 1px !important;
    border-radius: 0 !important;
    background: var(--ob-brass) !important;
    box-shadow: none !important;
    margin-bottom: 30px !important;
}

body.wh-option-b .wh-hero-title {
    font-size: clamp(2.2rem, 3.85vw, 3.55rem) !important;
    font-weight: 500 !important;
    line-height: 1.02 !important;
    letter-spacing: -.032em !important;
    max-width: 17ch !important;
    text-shadow: none !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-hero-subtitle {
    margin-top: 26px !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: var(--ob-muted-light) !important;
    max-width: 42ch !important;
    text-shadow: none !important;
}

body.wh-option-b .wh-hero-actions {
    margin-top: 38px !important;
    justify-content: flex-start !important;
}

body.wh-option-b .wh-btn-primary {
    min-width: 0 !important;
    padding: 17px 32px !important;
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-btn-primary:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
    transform: none !important;
    box-shadow: none !important;
}

/* ==========================================================================
   3. À PROPOS
   ========================================================================== */

body.wh-option-b .wh-about-preview-section {
    background: var(--ob-bone) !important;
    padding: 92px 0 !important;
}

body.wh-option-b .wh-ap-eyebrow {
    color: var(--ob-petrol) !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .24em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-ap-title {
    font-size: clamp(1.9rem, 3.1vw, 2.75rem) !important;
    font-weight: 500 !important;
    line-height: 1.08 !important;
    letter-spacing: -.028em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-ap-text {
    color: #55616A !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

body.wh-option-b .wh-ap-cta,
body.wh-option-b .wh-faq-home-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 0 6px !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ob-ink) !important;
    border-radius: 0 !important;
    color: var(--ob-ink) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    transform: none !important;
}

body.wh-option-b .wh-ap-cta:hover,
body.wh-option-b .wh-ap-cta:focus-visible,
body.wh-option-b .wh-faq-home-cta:hover,
body.wh-option-b .wh-faq-home-cta:focus-visible {
    color: var(--ob-petrol) !important;
    border-bottom-color: var(--ob-petrol) !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

body.wh-option-b .wh-ap-image {
    border: 1px solid #D6D4CC !important;
    border-radius: 0 !important;
    filter: saturate(.92) contrast(1.02);
}

body.wh-option-b .wh-ap-glass {
    background: var(--ob-graphite) !important;
    border: 1px solid var(--ob-graphite-3) !important;
    border-radius: 0 !important;
    color: #C7D0D4 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-ap-glass-title {
    color: var(--ob-brass) !important;
    font-size: 10px !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
}

body.wh-option-b .wh-ap-glass-list li {
    color: #B9C4C9 !important;
    font-size: 12.5px !important;
    border-color: #26333A !important;
}

body.wh-option-b .wh-ap-glass-list svg [stroke] {
    stroke: var(--ob-petrol) !important;
}

/* ==========================================================================
   4. FAQ
   ========================================================================== */

body.wh-option-b .wh-faq-home-section {
    background: #FFFFFF !important;
    padding: 88px 0 !important;
}

body.wh-option-b .wh-faq-home-eyebrow {
    color: var(--ob-petrol) !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .24em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-faq-home-title {
    font-weight: 500 !important;
    letter-spacing: -.028em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-faq-home-accent {
    background: var(--ob-brass) !important;
    width: 34px !important;
    height: 2px !important;
    border-radius: 0 !important;
}

body.wh-option-b .wh-faq-home-text {
    color: #55616A !important;
    font-size: 14.5px !important;
    line-height: 1.7 !important;
}

body.wh-option-b .wh-faq-home-cta {
    color: var(--ob-ink) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid var(--ob-ink) !important;
}

body.wh-option-b .wh-accordion-item {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    margin-bottom: 10px !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-accordion-item:hover,
body.wh-option-b .wh-accordion-item.active {
    border-color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-accordion-item .wh-accordion-header {
    background: #FFFFFF !important;
    color: var(--ob-ink) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    letter-spacing: -.005em !important;
    text-align: left !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    width: 100% !important;
}

body.wh-option-b .wh-accordion-item.active .wh-accordion-header {
    background: #FFFFFF !important;
    box-shadow: inset 3px 0 0 var(--ob-petrol) !important;
}

body.wh-option-b .wh-accordion-item .wh-accordion-icon {
    color: var(--ob-petrol) !important;
    font-weight: 500 !important;
}

body.wh-option-b .wh-accordion-item .wh-accordion-content p {
    color: #55616A !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

/* ==========================================================================
   5. BANDEAU SERVICES (4 colonnes)
   ========================================================================== */

body.wh-option-b .wh-features-section {
    background: var(--ob-bone) !important;
    border-top: 1px solid var(--ob-line) !important;
    border-bottom: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-feature {
    border-right: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-feature:last-child {
    border-right: 0 !important;
}

body.wh-option-b .wh-feature-text h4 {
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-feature-text p {
    color: var(--ob-muted) !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
}

body.wh-option-b .wh-feature-icon svg [stroke="#F06E38"] {
    stroke: var(--ob-petrol) !important;
}

body.wh-option-b .wh-feature-icon svg [stroke="#333"] {
    stroke: var(--ob-ink) !important;
}

/* ==========================================================================
   6. PIED DE PAGE
   ========================================================================== */

body.wh-option-b .site-footer {
    background: var(--ob-graphite-2) !important;
    color: #93A0A6 !important;
    border-top: 0 !important;
}

body.wh-option-b .custom-warehouse-footer {
    background: transparent !important;
}

body.wh-option-b .wh-footer-heading {
    color: #FFFFFF !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-footer-links a,
body.wh-option-b .wh-footer-content a {
    color: #9AA6AC !important;
    font-size: 12.5px !important;
}

body.wh-option-b .wh-footer-links a:hover,
body.wh-option-b .wh-footer-content a:hover {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-footer-bottom {
    border-top: 1px solid #26333A !important;
}

body.wh-option-b .wh-footer-copyright {
    color: #7C8A90 !important;
    font-size: 11.5px !important;
}

/* ==========================================================================
   7. WOOCOMMERCE — cartes produit, boutons, formulaires
   ========================================================================== */

body.wh-option-b .woocommerce ul.products li.product,
body.wh-option-b .woocommerce-page ul.products li.product {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden;
}

body.wh-option-b .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.wh-option-b .woocommerce ul.products li.product .price {
    font-family: 'Space Grotesk', sans-serif !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce ul.products li.product .price {
    font-weight: 600 !important;
}

body.wh-option-b .woocommerce a.button,
body.wh-option-b .woocommerce button.button,
body.wh-option-b .woocommerce input.button,
body.wh-option-b input[type="submit"],
body.wh-option-b .widget a.button,
body.wh-option-b .site-footer .button,
body.wh-option-b .wh-side-cart-panel .button {
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

body.wh-option-b .woocommerce a.button:hover,
body.wh-option-b .woocommerce button.button:hover,
body.wh-option-b .woocommerce button.alt,
body.wh-option-b .woocommerce button.alt:hover {
    background: var(--ob-petrol-dark) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .woocommerce .woocommerce-loop-category__title,
body.wh-option-b .woocommerce div.product .product_title {
    font-family: 'Space Grotesk', sans-serif !important;
    color: var(--ob-ink) !important;
}

/* ==========================================================================
   8. RESPONSIVE
   ========================================================================== */

@media (max-width: 900px) {
    body.wh-option-b .custom-warehouse-header {
        padding: 14px 16px !important;
    }

    body.wh-option-b .wh-sub-nav-bar {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.wh-option-b .wh-hero-section {
        background-image: linear-gradient(180deg, rgba(14, 20, 24, .78) 0%, rgba(14, 20, 24, .88) 100%), var(--bg-mobile) !important;
        background-size: cover !important;
        min-height: 520px !important;
    }

    body.wh-option-b .wh-hero-section {
        min-height: 0 !important;
    }

    body.wh-option-b .wh-hero-content {
        padding: 72px 24px 84px !important;
        min-height: 0 !important;
    }

    body.wh-option-b .wh-ap-glass {
        position: static !important;
        margin-top: 18px !important;
    }
}

/* --- Newsletter (pied de page) ------------------------------------------- */

body.wh-option-b .wh-newsletter-form input[type="email"] {
    background: var(--ob-graphite) !important;
    border: 1px solid #2C3A42 !important;
    border-radius: 0 !important;
    color: #E7ECEE !important;
    font-size: 13px !important;
}

body.wh-option-b .wh-newsletter-form button {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-newsletter-form button:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

/* --- Alignement de l'en-tête -------------------------------------------- */

body.wh-option-b .site-header .col-full {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ==========================================================================
   EN-TÊTE — VARIANTE 1 « OS & ENCRE » (barre claire, un seul étage)
   ========================================================================== */

@media (min-width: 993px) {

    body.wh-option-b .site-header {
        background: var(--ob-bone) !important;
        border-bottom: 1px solid var(--ob-line) !important;
        box-shadow: none !important;
    }

    /* Le conteneur d'en-tête devient une seule ligne : on « dissout » le bloc
       interne pour que logo / nav / recherche / compte soient frères. */
    body.wh-option-b .site-header .col-full {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 34px !important;
        max-width: 1320px !important;
        margin: 0 auto !important;
        padding: 0 32px !important;
        height: 92px !important;
        box-sizing: border-box !important;
    }

    body.wh-option-b .custom-warehouse-header {
        display: contents !important;
    }

    body.wh-option-b .wh-header-left {
        order: 1;
        flex: 0 0 auto;
        gap: 0 !important;
    }

    body.wh-option-b .wh-logo-text {
        color: var(--ob-ink) !important;
        font-size: 21px !important;
        letter-spacing: .01em !important;
    }

    /* Le toit du logo passe en pastille alignée (et non superposée au mot) */
    body.wh-option-b .wh-logo-house {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    body.wh-option-b .wh-roof {
        position: static !important;
        width: 26px !important;
        height: 10px !important;
        flex: 0 0 auto;
    }

    /* Navigation intégrée à la même ligne */
    body.wh-option-b .wh-sub-nav-bar {
        order: 2;
        flex: 1 1 auto !important;
        display: flex !important;
        background: transparent !important;
        border: 0 !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        justify-content: flex-start !important;
    }

    body.wh-option-b .wh-sub-nav-container {
        display: flex !important;
        align-items: center !important;
        height: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.wh-option-b .wh-sub-nav-menu {
        display: flex !important;
        align-items: center !important;
        gap: 26px !important;
    }

    body.wh-option-b .wh-sub-nav-menu > li > a.wh-sub-nav-link {
        color: #43505A !important;
        padding: 0 0 5px !important;
        line-height: 1 !important;
    }

    body.wh-option-b .wh-sub-nav-menu > li > a.wh-sub-nav-link:hover,
    body.wh-option-b .wh-sub-nav-menu > li.current-menu-item > .wh-sub-nav-link {
        color: var(--ob-ink) !important;
        box-shadow: inset 0 -2px 0 var(--ob-petrol) !important;
    }

    /* Recherche */
    body.wh-option-b .wh-search {
        order: 3;
        flex: 0 0 auto !important;
        width: 360px !important;
        max-width: 360px !important;
    }

    body.wh-option-b .wh-search-form {
        width: 360px !important;
        height: 42px !important;
        background: #FAF9F6 !important;
        border: 1px solid #D5D3CB !important;
        border-radius: 0 !important;
    }

    body.wh-option-b .wh-search-field {
        color: var(--ob-ink) !important;
        font-size: 12.5px !important;
        height: 40px !important;
    }

    body.wh-option-b .wh-search-field::placeholder {
        color: #8B959A !important;
    }

    body.wh-option-b .wh-search-category {
        color: #6C777D !important;
        border-left: 1px solid #E2E0D9 !important;
        background: transparent !important;
        font-size: 11px !important;
    }

    body.wh-option-b .wh-search-btn {
        background: var(--ob-petrol) !important;
        color: #FFFFFF !important;
        border-radius: 0 !important;
    }

    /* Compte + panier */
    body.wh-option-b .wh-header-right {
        order: 4;
        flex: 0 0 auto;
        gap: 22px !important;
    }

    body.wh-option-b .wh-header-right svg [stroke="#ffffff"] {
        stroke: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-header-right svg [fill="#ffffff"] {
        fill: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-account .wh-label {
        color: #7B868C !important;
    }

    body.wh-option-b .wh-account .wh-value {
        color: #43505A !important;
    }

    body.wh-option-b .wh-cart-toggle {
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        background: var(--ob-ink) !important;
        padding: 11px 18px !important;
        border-radius: 0 !important;
    }

    body.wh-option-b .wh-cart-toggle svg [stroke="#ffffff"] {
        stroke: #FFFFFF !important;
    }

    body.wh-option-b .wh-cart-toggle svg [fill="#ffffff"] {
        fill: #FFFFFF !important;
    }

    body.wh-option-b .wh-cart-text {
        color: #FFFFFF !important;
    }

    body.wh-option-b .wh-cart-count {
        background: var(--ob-petrol) !important;
        color: #FFFFFF !important;
        top: -7px !important;
        right: -9px !important;
    }

    body.wh-option-b .wh-cart-icon-wrapper {
        overflow: visible !important;
    }
}

/* --- Mobile : on garde la barre claire, icônes en encre ------------------- */

@media (max-width: 992px) {
    body.wh-option-b .site-header,
    body.wh-option-b .custom-warehouse-header {
        background: var(--ob-bone) !important;
        border-bottom: 1px solid var(--ob-line) !important;
    }

    body.wh-option-b .wh-header-right svg [stroke="#ffffff"],
    body.wh-option-b .wh-mobile-menu-toggle svg [stroke="#ffffff"],
    body.wh-option-b .wh-mobile-search-toggle svg [stroke="#ffffff"] {
        stroke: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-account-mobile svg,
    body.wh-option-b .wh-cart-icon-wrapper svg,
    body.wh-option-b .wh-mobile-search-toggle svg,
    body.wh-option-b .wh-mobile-menu-toggle svg {
        stroke: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-account-mobile,
    body.wh-option-b .wh-mobile-search-toggle {
        color: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-logo-house {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
    }

    body.wh-option-b .wh-roof {
        position: static !important;
        width: 22px !important;
        height: 9px !important;
        top: auto !important;
        flex: 0 0 auto;
    }

    body.wh-option-b .wh-header-right svg [fill="#ffffff"] {
        fill: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-logo-text {
        color: var(--ob-ink) !important;
    }

    body.wh-option-b .wh-cart-count {
        background: var(--ob-petrol) !important;
        color: #FFFFFF !important;
        top: -7px !important;
        right: -9px !important;
    }

    body.wh-option-b .wh-cart-icon-wrapper {
        overflow: visible !important;
    }
}

/* ==========================================================================
   PANIER LATÉRAL — variante « Os & encre »
   ========================================================================== */

body.wh-option-b .wh-side-cart-overlay {
    background: rgba(14, 20, 24, .55) !important;
    backdrop-filter: blur(2px);
}

body.wh-option-b .wh-side-cart-panel {
    background: #FFFFFF !important;
    border-left: 1px solid #E4E2DA !important;
    box-shadow: -24px 0 60px rgba(14, 20, 24, .18) !important;
    max-width: 440px !important;
}

body.wh-option-b .wh-side-cart-header {
    background: var(--ob-bone) !important;
    border-bottom: 1px solid var(--ob-line) !important;
    padding: 22px 26px !important;
}

body.wh-option-b .wh-side-cart-header h3 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
    border-bottom: 2px solid var(--ob-petrol) !important;
    padding-bottom: 7px !important;
}

body.wh-option-b .wh-side-cart-close {
    width: 38px !important;
    height: 38px !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 1px solid var(--ob-line) !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-side-cart-close:hover,
body.wh-option-b .wh-side-cart-close:focus-visible {
    background: var(--ob-petrol) !important;
    border-color: var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

/* Lignes produit */
body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart {
    padding: 0 26px !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li.woocommerce-mini-cart-item {
    border-bottom: 1px solid var(--ob-line) !important;
    padding: 20px 0 !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li > a:not(.remove) {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li > a:not(.remove):hover {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li > a:not(.remove) img {
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FAF9F6 !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li .quantity {
    color: var(--ob-muted) !important;
    font-size: 12.5px !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove {
    border-radius: 0 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    width: 26px !important;
    height: 26px !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove::before {
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove:hover {
    background: var(--ob-petrol) !important;
    border-color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove:hover::before {
    color: #FFFFFF !important;
}

/* Pied collant : total + boutons */
body.wh-option-b .wh-side-cart-content .wh-mini-cart-footer {
    background: var(--ob-bone) !important;
    border-top: 1px solid var(--ob-line) !important;
    box-shadow: none !important;
    padding: 20px 26px 24px !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__total {
    color: var(--ob-muted) !important;
    font-size: 12px !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__total .amount {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    color: var(--ob-ink) !important;
    letter-spacing: -.01em !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button {
    border-radius: 0 !important;
    padding: 16px 18px !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button.wc-forward {
    background: transparent !important;
    border: 1px solid var(--ob-ink) !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button.wc-forward:hover {
    background: var(--ob-ink) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button.checkout {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button.checkout:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

/* État vide */
body.wh-option-b .wh-side-cart-content .wh-mini-cart-empty {
    padding: 48px 34px 52px !important;
}

body.wh-option-b .wh-mini-cart-empty-icon {
    width: 76px !important;
    height: 76px !important;
    border-radius: 0 !important;
    background: var(--ob-bone) !important;
    border: 1px solid var(--ob-line) !important;
    margin-bottom: 22px !important;
}

body.wh-option-b .wh-mini-cart-empty-icon svg [stroke="#F06E38"] {
    stroke: var(--ob-petrol) !important;
}

body.wh-option-b .wh-mini-cart-empty-icon svg [fill="#F06E38"] {
    fill: var(--ob-petrol) !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__empty-message {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-mini-cart-empty-text {
    color: var(--ob-muted) !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

body.wh-option-b .wh-mini-cart-empty-cta.button {
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 15px 30px !important;
}

body.wh-option-b .wh-mini-cart-empty-cta.button:hover {
    background: var(--ob-petrol-dark) !important;
}

/* Mobile */
@media (max-width: 992px) {
    body.wh-option-b .wh-side-cart-panel {
        max-width: 100% !important;
        border-left: 0 !important;
    }

    body.wh-option-b .wh-side-cart-header {
        padding: 18px 20px !important;
    }

    body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart {
        padding: 0 20px !important;
    }

    body.wh-option-b .wh-side-cart-content .wh-mini-cart-footer {
        padding: 18px 20px 22px !important;
    }
}

/* --- Icônes Font Awesome absentes : on remplace par des glyphes propres --- */

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button::after {
    display: none !important;
    content: "" !important;
}

body.wh-option-b .wh-side-cart-content .woocommerce-mini-cart__buttons a.button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove::before {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    content: "\00d7" !important;
    font-size: 17px !important;
    line-height: 1 !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-side-cart-content ul.woocommerce-mini-cart li a.remove:hover::before {
    color: #FFFFFF !important;
}

/* ==========================================================================
   BOUTIQUE (archive) + FICHE PRODUIT — variante « Os & encre »
   ========================================================================== */

/* --- Fil d'Ariane -------------------------------------------------------- */

body.wh-option-b .woocommerce-breadcrumb {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    margin: 0 0 30px !important;
}

body.wh-option-b .woocommerce-breadcrumb a {
    color: var(--ob-ink) !important;
    text-decoration: none !important;
}

body.wh-option-b .woocommerce-breadcrumb a:hover {
    color: var(--ob-petrol) !important;
}

/* --- Colonne de filtres -------------------------------------------------- */

body.wh-option-b .wh-shop-sidebar {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    padding: 26px 24px !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-sidebar-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid var(--ob-petrol) !important;
    margin: 0 0 14px !important;
}

body.wh-option-b .wh-sidebar-cat-list a {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    color: #43505A !important;
    text-decoration: none !important;
    display: block;
    padding: 6px 0 !important;
}

body.wh-option-b .wh-sidebar-cat-list a:hover,
body.wh-option-b .wh-sidebar-cat-list .current-cat > a,
body.wh-option-b .wh-sidebar-cat-list li.active > a {
    color: var(--ob-petrol) !important;
    font-weight: 600 !important;
}

body.wh-option-b .wh-cat-item {
    border-bottom: 1px solid #EFEDE7 !important;
}

body.wh-option-b .wh-cat-item:last-child {
    border-bottom: 0 !important;
}

/* --- Barre d'outils (tri + vue) ----------------------------------------- */

body.wh-option-b .wh-toolbar-sort-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
}

body.wh-option-b .wh-toolbar-sort-select {
    border: 1px solid var(--ob-line) !important;
    background: #FFFFFF !important;
    border-radius: 0 !important;
    font-size: 12.5px !important;
    color: var(--ob-ink) !important;
    height: 40px !important;
    padding: 0 30px 0 12px !important;
}

body.wh-option-b .wh-toolbar-view-switcher button,
body.wh-option-b .wh-toolbar-filter-btn {
    border: 1px solid var(--ob-line) !important;
    background: #FFFFFF !important;
    border-radius: 0 !important;
    color: var(--ob-muted) !important;
    width: 40px !important;
    height: 40px !important;
}

body.wh-option-b .wh-toolbar-view-switcher button.is-active,
body.wh-option-b .wh-toolbar-view-switcher button:hover {
    border-color: var(--ob-ink) !important;
    color: var(--ob-ink) !important;
}

/* --- Grille produits ----------------------------------------------------- */

body.wh-option-b .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    margin: 0 0 40px !important;
    clear: both;
}

body.wh-option-b .woocommerce ul.products::before,
body.wh-option-b .woocommerce ul.products::after { display: none !important; }

body.wh-option-b .woocommerce ul.products li.product,
body.wh-option-b .wh-product-card {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

body.wh-option-b .wh-product-card-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

body.wh-option-b .wh-card-image-wrapper {
    background: #FAF9F6 !important;
    border-bottom: 1px solid var(--ob-line) !important;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px !important;
}

body.wh-option-b .wh-card-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

body.wh-option-b .wh-card-content {
    padding: 18px 20px 20px !important;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

body.wh-option-b .wh-card-brand {
    font-family: 'Inter', sans-serif !important;
    font-size: 9.5px !important;
    font-weight: 600 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--ob-petrol) !important;
    margin: 0 0 8px !important;
}

body.wh-option-b .wh-card-title,
body.wh-option-b .woocommerce-loop-product__title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: var(--ob-ink) !important;
    letter-spacing: -.01em !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    min-height: 40px;
}

body.wh-option-b .wh-card-price {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: var(--ob-ink) !important;
    letter-spacing: -.01em !important;
    margin: 0 0 6px !important;
}

body.wh-option-b .wh-card-price del {
    font-size: 13px !important;
    color: var(--ob-muted) !important;
    font-weight: 400 !important;
}

body.wh-option-b .wh-card-stock {
    font-size: 11px !important;
    letter-spacing: .06em !important;
    color: var(--ob-muted) !important;
    margin: 0 0 14px !important;
}

body.wh-option-b .wh-card-stock.in-stock::before {
    background: var(--ob-petrol) !important;
}

body.wh-option-b .wh-loop-actions {
    display: flex !important;
    flex-direction: column;
    gap: 8px !important;
    margin-top: auto !important;
}

body.wh-option-b .wh-loop-btn {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 13px 14px !important;
    border-radius: 0 !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-loop-add-cart {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-loop-add-cart:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

body.wh-option-b .wh-loop-buy-now {
    background: transparent !important;
    border: 1px solid var(--ob-ink) !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-loop-buy-now:hover {
    background: var(--ob-ink) !important;
    color: #FFFFFF !important;
}

/* Badges (promo / nouveauté) */
body.wh-option-b .onsale,
body.wh-option-b .wh-card-badges span {
    background: var(--ob-ink) !important;
    color: #FFFFFF !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 9.5px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 5px 9px !important;
}

/* Bloc « vus récemment » */
body.wh-option-b .wh-recently-viewed-section {
    background: var(--ob-bone) !important;
    border-top: 1px solid var(--ob-line) !important;
    padding: 44px 0 10px !important;
    margin-top: 20px;
}

body.wh-option-b .wh-recently-viewed-section h2,
body.wh-option-b .wh-recently-viewed-box > h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce nav.woocommerce-pagination ul li a,
body.wh-option-b .woocommerce nav.woocommerce-pagination ul li span {
    border-radius: 0 !important;
    border-color: var(--ob-line) !important;
    font-family: 'Space Grotesk', sans-serif !important;
}

body.wh-option-b .woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--ob-ink) !important;
    color: #FFFFFF !important;
}

/* ==========================================================================
   FICHE PRODUIT
   ========================================================================== */

body.wh-option-b .woocommerce div.product div.images,
body.wh-option-b .woocommerce div.product div.summary {
    width: 48.5% !important;
}

body.wh-option-b .woocommerce div.product div.images {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    padding: 26px !important;
    border-radius: 0 !important;
}

body.wh-option-b .woocommerce-product-gallery__image img {
    border-radius: 0 !important;
}

body.wh-option-b .wh-zoom-hint {
    font-size: 10.5px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    margin-top: 14px !important;
}

body.wh-option-b .product_title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.7rem, 2.6vw, 2.35rem) !important;
    font-weight: 500 !important;
    line-height: 1.08 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
    margin: 0 0 16px !important;
}

body.wh-option-b .wh-meta-row {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 16px !important;
}

body.wh-option-b .wh-meta-row .wh-brand {
    color: var(--ob-petrol) !important;
    font-weight: 600 !important;
}

body.wh-option-b .wh-meta-row .wh-divider {
    color: var(--ob-line) !important;
}

body.wh-option-b .wh-rating .star-rating span::before,
body.wh-option-b .woocommerce .star-rating span::before {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-review-count {
    font-size: 11.5px !important;
    color: var(--ob-muted) !important;
}

body.wh-option-b .wh-summary-divider {
    border: 0 !important;
    border-top: 1px solid var(--ob-line) !important;
    margin: 20px 0 !important;
}

body.wh-option-b .wh-price-wrapper {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 22px !important;
}

body.wh-option-b .wh-price-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
}

body.wh-option-b .wh-price-amount {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-quantity-wrapper {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px !important;
}

body.wh-option-b .wh-quantity-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
}

body.wh-option-b .woocommerce .quantity input.qty {
    height: 46px !important;
    width: 64px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 14px !important;
    color: var(--ob-ink) !important;
    text-align: center !important;
}

body.wh-option-b .wh-cart-buttons {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap;
}

body.wh-option-b .single_add_to_cart_button {
    flex: 1 1 190px;
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 16px 26px !important;
    box-shadow: none !important;
}

body.wh-option-b .single_add_to_cart_button:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

body.wh-option-b .wh-buy-now-btn {
    flex: 1 1 190px;
    border-radius: 0 !important;
    background: transparent !important;
    border: 1px solid var(--ob-ink) !important;
    color: var(--ob-ink) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 16px 26px !important;
}

body.wh-option-b .wh-buy-now-btn:hover {
    background: var(--ob-ink) !important;
    color: #FFFFFF !important;
}

/* Onglets */
body.wh-option-b .woocommerce-tabs ul.tabs {
    padding: 0 !important;
    margin: 56px 0 0 !important;
    border-bottom: 1px solid var(--ob-line) !important;
    display: flex;
    gap: 30px;
}

body.wh-option-b .woocommerce-tabs ul.tabs::before,
body.wh-option-b .woocommerce-tabs ul.tabs::after { display: none !important; }

body.wh-option-b .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .woocommerce-tabs ul.tabs li a {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    padding: 0 0 12px !important;
    border-bottom: 2px solid transparent !important;
    display: block;
}

body.wh-option-b .woocommerce-tabs ul.tabs li.active a,
body.wh-option-b .woocommerce-tabs ul.tabs li a:hover {
    color: var(--ob-ink) !important;
    border-bottom-color: var(--ob-petrol) !important;
}

body.wh-option-b .woocommerce-Tabs-panel {
    padding: 28px 0 0 !important;
    color: #55616A !important;
    font-size: 14.5px !important;
    line-height: 1.75 !important;
}

body.wh-option-b .woocommerce-Tabs-panel h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
    letter-spacing: -.02em !important;
    margin-bottom: 12px !important;
}

/* Produits liés */
body.wh-option-b .related.products,
body.wh-option-b .upsells.products {
    margin-top: 64px !important;
    clear: both;
}

body.wh-option-b .related.products > h2,
body.wh-option-b .upsells.products > h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    letter-spacing: -.025em !important;
    color: var(--ob-ink) !important;
    margin-bottom: 24px !important;
}

/* Notices */
body.wh-option-b .woocommerce-message,
body.wh-option-b .woocommerce-info,
body.wh-option-b .woocommerce-error {
    border-radius: 0 !important;
    border: 1px solid var(--ob-line) !important;
    border-top: 2px solid var(--ob-petrol) !important;
    background: #FFFFFF !important;
    color: #43505A !important;
    box-shadow: none !important;
    font-size: 13.5px !important;
}

@media (max-width: 1100px) {
    body.wh-option-b .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 700px) {
    body.wh-option-b .woocommerce ul.products { grid-template-columns: 1fr !important; }
    body.wh-option-b .woocommerce div.product div.images,
    body.wh-option-b .woocommerce div.product div.summary { width: 100% !important; }
    body.wh-option-b .woocommerce div.product div.summary { margin-top: 26px !important; }
}

/* --- Correctifs boutique : prix et pastille de stock ---------------------- */

body.wh-option-b .wh-card-price,
body.wh-option-b .wh-card-price > .amount,
body.wh-option-b .wh-card-price > span,
body.wh-option-b .wh-card-price ins,
body.wh-option-b .wh-card-price .woocommerce-Price-amount,
body.wh-option-b .wh-card-price .woocommerce-Price-currencySymbol {
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-card-price ins {
    text-decoration: none !important;
}

body.wh-option-b .wh-card-price del,
body.wh-option-b .wh-card-price del .amount {
    color: var(--ob-muted) !important;
    font-weight: 400 !important;
}

body.wh-option-b .wh-card-stock,
body.wh-option-b .wh-card-stock.in-stock {
    color: var(--ob-muted) !important;
    font-size: 11px !important;
    letter-spacing: .06em !important;
}

body.wh-option-b .wh-stock-dot,
body.wh-option-b .wh-card-stock.in-stock .wh-stock-dot {
    background-color: var(--ob-petrol) !important;
    width: 5px !important;
    height: 5px !important;
}

body.wh-option-b .wh-card-stock.out-of-stock,
body.wh-option-b .wh-card-stock.out-of-stock .wh-stock-dot {
    color: #9A5B54 !important;
    background-color: #9A5B54 !important;
}

/* --- Onglets produit : pleine largeur, barre visible --------------------- */

body.wh-option-b .single-product div.product .woocommerce-tabs,
body.wh-option-b .woocommerce-tabs {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
    border-top: 1px solid var(--ob-line) !important;
    margin-top: 56px !important;
    width: 100% !important;
}

body.wh-option-b .woocommerce-tabs ul.tabs {
    display: flex !important;
    gap: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border-bottom: 1px solid var(--ob-line) !important;
    background: transparent !important;
}

body.wh-option-b .woocommerce-tabs ul.tabs::before,
body.wh-option-b .woocommerce-tabs ul.tabs::after { display: none !important; }

body.wh-option-b .woocommerce-tabs ul.tabs li {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 16px 0 !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    border-bottom: 2px solid transparent !important;
    margin-bottom: -1px;
}

body.wh-option-b .woocommerce-tabs ul.tabs li.active a,
body.wh-option-b .woocommerce-tabs ul.tabs li a:hover {
    color: var(--ob-ink) !important;
    border-bottom-color: var(--ob-petrol) !important;
}

body.wh-option-b .woocommerce-tabs .panel {
    background: transparent !important;
    padding: 30px 0 0 !important;
    box-shadow: none !important;
    max-width: 820px;
}

body.wh-option-b .woocommerce-tabs h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
    letter-spacing: -.02em !important;
    margin: 0 0 14px !important;
}

body.wh-option-b .woocommerce-tabs p {
    font-size: 14.5px !important;
    line-height: 1.75 !important;
    color: #55616A !important;
}

/* --- Produits liés ------------------------------------------------------- */

body.wh-option-b .related.products ul.products,
body.wh-option-b .upsells.products ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

body.wh-option-b .related.products ul.products li.product,
body.wh-option-b .upsells.products ul.products li.product {
    background: #FFFFFF !important;
}

@media (max-width: 1100px) {
    body.wh-option-b .related.products ul.products,
    body.wh-option-b .upsells.products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* --- Correctifs structure : onglets pleine largeur, grille produits ----- */

body.wh-option-b .woocommerce ul.products::before,
body.wh-option-b .woocommerce ul.products::after {
    content: none !important;
    display: none !important;
}

body.wh-option-b .woocommerce-tabs ul.tabs {
    float: none !important;
    width: 100% !important;
}

body.wh-option-b .woocommerce-tabs .panel {
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 860px !important;
}

body.wh-option-b .single-product div.product .woocommerce-tabs {
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* --- Portée réelle du body (body porte .woocommerce et .single-product) --- */

body.wh-option-b div.product .woocommerce-tabs,
body.wh-option-b.woocommerce div.product .woocommerce-tabs {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
}

body.wh-option-b ul.products::before,
body.wh-option-b ul.products::after {
    content: none !important;
    display: none !important;
}

body.wh-option-b.woocommerce ul.products,
body.wh-option-b ul.products {
    display: grid !important;
    gap: 20px !important;
    clear: both !important;
}

/* --- Onglets produit : forçage par ID (bat les règles du thème) ---------- */

body.wh-option-b #primary div.product .woocommerce-tabs {
    grid-column-start: 1 !important;
    grid-column-end: -1 !important;
    grid-row-start: auto !important;
    grid-row-end: auto !important;
    width: 100% !important;
    margin-top: 34px !important;
}

/* --- Grille fiche produit : le résumé ne doit pas occuper 2 lignes ------ */

body.wh-option-b #primary div.product .summary.entry-summary {
    grid-row: 1 !important;
    position: static !important;
}

body.wh-option-b #primary div.product .woocommerce-product-gallery {
    grid-row: 1 !important;
}

body.wh-option-b #primary div.product .woocommerce-tabs {
    grid-row: 2 !important;
    grid-column: 1 / -1 !important;
    margin-top: 40px !important;
}

/* --- Bloc « produits liés » : fond transparent et titre aligné à gauche -- */

body.wh-option-b .related.products,
body.wh-option-b .upsells.products {
    background: transparent !important;
    text-align: left !important;
}

body.wh-option-b .related.products > h2,
body.wh-option-b .upsells.products > h2 {
    text-align: left !important;
}

/* La police d'étoiles n'est pas chargée : on masque la barre d'étoiles vide */
body.wh-option-b .wh-rating .star-rating {
    display: none !important;
}

/* ==========================================================================
   PAGE PANIER + COMMANDE (shortcodes classiques) — « Os & encre »
   ========================================================================== */

body.woocommerce-cart.wh-option-b #primary,
body.woocommerce-checkout.wh-option-b #primary {
    width: 100% !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 32px !important;
    float: none !important;
}

body.woocommerce-cart.wh-option-b #secondary,
body.woocommerce-checkout.wh-option-b #secondary,
body.woocommerce-cart.wh-option-b .widget-area,
body.woocommerce-checkout.wh-option-b .widget-area {
    display: none !important;
}

body.woocommerce-cart.wh-option-b .entry-title,
body.woocommerce-checkout.wh-option-b .entry-title,
body.woocommerce-cart.wh-option-b h1.page-title,
body.woocommerce-checkout.wh-option-b h1.page-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.9rem, 3.2vw, 2.6rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
    margin: 0 0 30px !important;
}

/* Icônes Font Awesome manquantes dans le fil d'Ariane / notices */
body.wh-option-b .woocommerce-breadcrumb a:first-child::before,
body.wh-option-b .woocommerce-info::before,
body.wh-option-b .woocommerce-message::before,
body.wh-option-b .woocommerce-error::before,
body.wh-option-b .wc-forward::after,
body.wh-option-b .woocommerce a.button::after {
    display: none !important;
    content: none !important;
}

/* --- Tableau panier ------------------------------------------------------ */

body.wh-option-b .woocommerce table.shop_table {
    border: 1px solid var(--ob-line) !important;
    border-collapse: collapse !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
}

body.wh-option-b .woocommerce table.shop_table thead th {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    padding: 16px !important;
    border-bottom: 1px solid var(--ob-line) !important;
    text-align: left !important;
}

body.wh-option-b .woocommerce table.shop_table tbody td {
    padding: 18px 16px !important;
    border-bottom: 1px solid var(--ob-line) !important;
    border-top: 0 !important;
    vertical-align: middle !important;
}

body.wh-option-b .woocommerce table.shop_table tbody td.product-thumbnail img {
    width: 76px !important;
    height: 76px !important;
    object-fit: contain !important;
    background: #FAF9F6 !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    padding: 6px !important;
}

body.wh-option-b .woocommerce table.shop_table .product-name a {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
    text-decoration: none !important;
}

body.wh-option-b .woocommerce table.shop_table .product-name a:hover {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .woocommerce table.shop_table .product-price .amount,
body.wh-option-b .woocommerce table.shop_table .product-subtotal .amount,
body.wh-option-b .woocommerce table.shop_table .product-price,
body.wh-option-b .woocommerce table.shop_table .product-subtotal {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 15px !important;
    color: var(--ob-ink) !important;
    font-weight: 500 !important;
}

body.wh-option-b .woocommerce table.shop_table .quantity input.qty {
    width: 64px !important;
    height: 42px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    text-align: center !important;
    font-family: 'Space Grotesk', sans-serif !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce table.shop_table a.remove {
    width: 28px !important;
    height: 28px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    color: var(--ob-ink) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
}

body.wh-option-b .woocommerce table.shop_table a.remove:hover {
    background: var(--ob-petrol) !important;
    border-color: var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .woocommerce-cart .actions .coupon {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    float: none !important;
}

body.wh-option-b .woocommerce-cart .actions .coupon .input-text {
    height: 44px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    padding: 0 14px !important;
    font-size: 13px !important;
    min-width: 200px;
}

body.wh-option-b .woocommerce-cart .actions button.button,
body.wh-option-b .woocommerce-cart .coupon button {
    height: 44px !important;
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 0 22px !important;
}

body.wh-option-b .woocommerce-cart .actions button[name="update_cart"] {
    background: transparent !important;
    border: 1px solid var(--ob-ink) !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce-cart .actions button[name="update_cart"]:disabled {
    opacity: .35 !important;
}

/* Totaux */
body.wh-option-b .woocommerce .cart-collaterals .cart_totals {
    width: 420px !important;
    max-width: 100% !important;
    float: right !important;
}

body.wh-option-b .woocommerce .cart-collaterals .cart_totals h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
    margin: 0 0 12px !important;
}

body.wh-option-b .woocommerce .cart_totals table.shop_table {
    border: 1px solid var(--ob-line) !important;
}

body.wh-option-b .woocommerce .cart_totals table.shop_table th,
body.wh-option-b .woocommerce .cart_totals table.shop_table td {
    padding: 14px 18px !important;
    border-bottom: 1px solid var(--ob-line) !important;
    font-size: 13px !important;
}

body.wh-option-b .woocommerce .cart_totals .order-total .amount {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 17px 20px !important;
    margin-top: 14px !important;
}

body.wh-option-b .woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

/* Ventes croisées */
body.wh-option-b .woocommerce .cross-sells ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

body.wh-option-b .woocommerce .cross-sells > h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    color: var(--ob-ink) !important;
    margin: 40px 0 18px !important;
}

/* --- Page commande ------------------------------------------------------- */

body.wh-option-b .woocommerce form.checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 420px !important;
    gap: 44px !important;
    align-items: start;
}

body.wh-option-b .woocommerce form.checkout #customer_details {
    grid-column: 1 !important;
    width: 100% !important;
    float: none !important;
}

body.wh-option-b .woocommerce form.checkout #order_review_heading,
body.wh-option-b .woocommerce form.checkout #order_review {
    grid-column: 2 !important;
    width: 100% !important;
    float: none !important;
    margin-top: 0 !important;
}

body.wh-option-b .woocommerce form.checkout h3 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
    margin: 0 0 18px !important;
}

body.wh-option-b .woocommerce form.checkout .form-row label {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    margin-bottom: 6px !important;
}

body.wh-option-b .woocommerce form.checkout .input-text,
body.wh-option-b .woocommerce form.checkout select,
body.wh-option-b .woocommerce form.checkout textarea {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    height: 46px !important;
    padding: 0 14px !important;
    font-size: 13.5px !important;
    color: var(--ob-ink) !important;
    box-shadow: none !important;
}

body.wh-option-b .woocommerce form.checkout textarea {
    height: auto !important;
    padding: 12px 14px !important;
}

body.wh-option-b .woocommerce form.checkout .select2-container .select2-selection {
    height: 46px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
}

body.wh-option-b .woocommerce #order_review table.shop_table {
    border: 1px solid var(--ob-line) !important;
    background: #FFFFFF !important;
}

body.wh-option-b .woocommerce #payment {
    background: transparent !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    margin-top: 20px !important;
}

body.wh-option-b .woocommerce #payment ul.payment_methods {
    border-bottom: 1px solid var(--ob-line) !important;
    padding: 18px !important;
}

body.wh-option-b .woocommerce #payment div.form-row {
    padding: 18px !important;
}

body.wh-option-b .woocommerce #payment #place_order {
    width: 100% !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 17px 20px !important;
}

@media (max-width: 1000px) {
    body.wh-option-b .woocommerce form.checkout {
        grid-template-columns: 1fr !important;
    }
    body.wh-option-b .woocommerce form.checkout #order_review_heading,
    body.wh-option-b .woocommerce form.checkout #order_review {
        grid-column: 1 !important;
    }
    body.wh-option-b .woocommerce .cart-collaterals .cart_totals {
        width: 100% !important;
        float: none !important;
        margin-top: 30px !important;
    }
}

/* --- Correctifs panier / commande --------------------------------------- */

body.wh-option-b .woocommerce table.shop_table a.remove::before {
    content: none !important;
    display: none !important;
}

body.wh-option-b .woocommerce table.shop_table a.remove {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce #order_review,
body.wh-option-b .woocommerce-checkout-review-order {
    display: block !important;
    float: none !important;
    width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body.wh-option-b .woocommerce #order_review table.shop_table {
    display: table !important;
    width: 100% !important;
    border-collapse: collapse !important;
}

/* ==========================================================================
   MON COMPTE — « Os & encre »
   ========================================================================== */

body.wh-option-b .wh-login-wrapper {
    padding: 70px 0 40px !important;
}

body.wh-option-b .wh-login-container {
    max-width: 460px !important;
    background: transparent !important;
}

body.wh-option-b .wh-login-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.6rem, 2.6vw, 2rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
    text-align: center !important;
    margin: 0 0 10px !important;
}

body.wh-option-b .wh-login-subtitle {
    font-size: 14px !important;
    color: var(--ob-muted) !important;
    text-align: center !important;
}

body.wh-option-b .wh-custom-login-form .input-text,
body.wh-option-b .woocommerce form.login .input-text,
body.wh-option-b .woocommerce form.register .input-text {
    height: 48px !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    padding: 0 16px !important;
    font-size: 13.5px !important;
    color: var(--ob-ink) !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-custom-login-form .input-text:focus,
body.wh-option-b .woocommerce form.login .input-text:focus {
    border-color: var(--ob-petrol) !important;
    outline: none !important;
}

body.wh-option-b .wh-custom-login-form .woocommerce-form-login__submit,
body.wh-option-b .wh-custom-login-form .woocommerce-form-register__submit,
body.wh-option-b .woocommerce form.login button.button,
body.wh-option-b .woocommerce form.register button.button {
    width: 100% !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 16px 20px !important;
}

body.wh-option-b .wh-custom-login-form .woocommerce-form-login__submit:hover,
body.wh-option-b .woocommerce form.login button.button:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

body.wh-option-b .wh-login-links a,
body.wh-option-b .wh-custom-login-form .lost_password a {
    color: var(--ob-petrol) !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(46, 127, 140, .35) !important;
}

body.wh-option-b .wh-hcaptcha-text {
    font-size: 10.5px !important;
    line-height: 1.5 !important;
    color: #9AA4A9 !important;
    text-align: center !important;
}

/* Navigation du compte (connecté) */
body.wh-option-b .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
    border: 1px solid var(--ob-line) !important;
    background: #FFFFFF !important;
}

body.wh-option-b .woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid var(--ob-line) !important;
    margin: 0 !important;
}

body.wh-option-b .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: 0 !important;
}

body.wh-option-b .woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    padding: 14px 18px !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: #43505A !important;
    text-decoration: none !important;
}

body.wh-option-b .woocommerce-MyAccount-navigation ul li.is-active a,
body.wh-option-b .woocommerce-MyAccount-navigation ul li a:hover {
    color: var(--ob-ink) !important;
    box-shadow: inset 3px 0 0 var(--ob-petrol);
}

/* Contenu du compte */
body.wh-option-b .woocommerce-MyAccount-content {
    font-size: 14.5px !important;
    color: #55616A !important;
    line-height: 1.75 !important;
}

body.wh-option-b .woocommerce-MyAccount-content h2,
body.wh-option-b .woocommerce-MyAccount-content h3 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .woocommerce-MyAccount-content table.shop_table {
    border: 1px solid var(--ob-line) !important;
    background: #FFFFFF !important;
}

body.wh-option-b .woocommerce-MyAccount-content table.shop_table th {
    font-size: 10.5px !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    padding: 14px 16px !important;
}

body.wh-option-b .woocommerce-MyAccount-content table.shop_table td {
    padding: 14px 16px !important;
    border-top: 1px solid var(--ob-line) !important;
    font-size: 13.5px !important;
}

body.wh-option-b .woocommerce-MyAccount-content .woocommerce-Button,
body.wh-option-b .woocommerce-MyAccount-content button.button {
    border-radius: 0 !important;
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 14px 24px !important;
}

@media (max-width: 800px) {
    body.wh-option-b .woocommerce-MyAccount-navigation ul {
        margin-bottom: 22px !important;
    }
}

/* L'icône « œil » de WooCommerce utilise une police non chargée : on la masque */
body.wh-option-b .show-password-input,
body.wh-option-b .woocommerce-form-login .show-password-input {
    display: none !important;
}

/* ==========================================================================
   PAGE À PROPOS + PAGE CONTACT — « Os & encre »
   ========================================================================== */

/* --- À propos ------------------------------------------------------------ */

body.wh-option-b .wh-about-container {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 40px 32px 10px !important;
}

body.wh-option-b .wh-about-subtitle {
    font-family: 'Inter', sans-serif !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: .24em !important;
    text-transform: uppercase !important;
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-about-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.8rem, 3.2vw, 2.6rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-about-tagline {
    color: var(--ob-muted) !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
}

body.wh-option-b .wh-about-hero-box {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-about-hero-box::before {
    background: var(--ob-petrol) !important;
}

body.wh-option-b .wh-about-mission-badge {
    background: var(--ob-bone) !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    color: var(--ob-petrol) !important;
    font-size: 9.5px !important;
    font-weight: 600 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    padding: 7px 12px !important;
}

body.wh-option-b .wh-about-mission-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.25rem, 2.2vw, 1.6rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-about-story-text,
body.wh-option-b .wh-about-story-text p {
    color: #4E5A62 !important;
    font-size: 14.5px !important;
    line-height: 1.8 !important;
}

body.wh-option-b .wh-about-section-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.3rem, 2.4vw, 1.7rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-about-section-desc {
    color: var(--ob-muted) !important;
    font-size: 14px !important;
}

body.wh-option-b .wh-about-product-card,
body.wh-option-b .wh-about-value-card {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-about-product-link {
    color: var(--ob-petrol) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

body.wh-option-b .wh-about-cta {
    background: var(--ob-graphite) !important;
    border-radius: 0 !important;
}

body.wh-option-b .wh-about-cta-button {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

/* --- Contact ------------------------------------------------------------- */

body.wh-option-b .wh-contact-main,
body.wh-option-b .wh-contact-page-area {
    max-width: 1240px !important;
    margin: 0 auto !important;
}

body.wh-option-b .wh-contact-container {
    padding: 30px 32px 10px !important;
}

body.wh-option-b .wh-contact-header h1 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.9rem, 3.4vw, 2.7rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-contact-header p {
    color: var(--ob-muted) !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
}

body.wh-option-b .wh-contact-content h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-contact-form input,
body.wh-option-b .wh-contact-form textarea,
body.wh-option-b .wh-contact-form select {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    height: 48px !important;
    padding: 0 16px !important;
    font-size: 13.5px !important;
    color: var(--ob-ink) !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-contact-form textarea {
    height: auto !important;
    padding: 14px 16px !important;
    min-height: 180px;
}

body.wh-option-b .wh-contact-form button,
body.wh-option-b .wh-contact-submit {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 16px 30px !important;
}

body.wh-option-b .wh-contact-form button:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
}

body.wh-option-b .wh-contact-info-card {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 28px !important;
}

body.wh-option-b .wh-contact-info-label {
    color: var(--ob-petrol) !important;
    font-size: 9.5px !important;
    font-weight: 600 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
}

body.wh-option-b .wh-contact-info-value,
body.wh-option-b .wh-contact-info-value a {
    color: #43505A !important;
    font-size: 13.5px !important;
    line-height: 1.65 !important;
}

/* Bloc newsletter de la page contact */
body.wh-option-b .wh-contact-newsletter-section {
    background: var(--ob-bone) !important;
    border-top: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-contact-newsletter-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-contact-newsletter-desc {
    color: var(--ob-muted) !important;
    font-size: 13.5px !important;
}

body.wh-option-b .wh-contact-newsletter-input {
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    height: 46px !important;
}

body.wh-option-b .wh-contact-newsletter-btn {
    background: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

/* ==========================================================================
   PAGES LÉGALES + FAQ — « Os & encre »
   ========================================================================== */

body.wh-option-b .wh-legal-container {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 40px 32px 20px !important;
}

body.wh-option-b .wh-legal-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.8rem, 3vw, 2.5rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
    text-align: left !important;
    margin: 0 0 28px !important;
}

body.wh-option-b .wh-legal-content {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 42px 46px !important;
    white-space: normal !important;
    line-height: 1.8 !important;
    color: #4E5A62 !important;
    font-size: 14px !important;
}

body.wh-option-b .wh-legal-content p {
    margin: 0 0 18px !important;
    color: #4E5A62 !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
}

body.wh-option-b .wh-legal-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
    margin: 34px 0 14px !important;
    padding-top: 18px !important;
    border-top: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-legal-content .wh-legal-heading:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

/* --- FAQ ---------------------------------------------------------------- */

body.wh-option-b .wh-faq-container {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 40px 32px 20px !important;
}

body.wh-option-b .wh-faq-header h1,
body.wh-option-b .wh-faq-header h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.8rem, 3vw, 2.5rem) !important;
    font-weight: 500 !important;
    letter-spacing: -.03em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-faq-header p {
    color: var(--ob-muted) !important;
    font-size: 15px !important;
}

body.wh-option-b .wh-faq-section > h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ob-petrol) !important;
    margin: 36px 0 14px !important;
}

body.wh-option-b .wh-faq-page-area .wh-accordion-item {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin-bottom: 10px !important;
}

body.wh-option-b .wh-faq-page-area .wh-accordion-item.active {
    border-color: var(--ob-petrol) !important;
    box-shadow: inset 3px 0 0 var(--ob-petrol) !important;
}

body.wh-option-b .wh-faq-page-area .wh-accordion-header {
    background: #FFFFFF !important;
    color: var(--ob-ink) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    border-radius: 0 !important;
    text-align: left !important;
    width: 100% !important;
}

body.wh-option-b .wh-faq-page-area .wh-accordion-icon {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-faq-page-area .wh-accordion-content p {
    color: #55616A !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
}

body.wh-option-b .wh-faq-contact-section {
    background: var(--ob-bone) !important;
    border-top: 1px solid var(--ob-line) !important;
    margin-top: 50px !important;
    padding: 50px 0 !important;
}

body.wh-option-b .wh-faq-contact-section h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-faq-contact-block {
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-faq-contact-icon {
    color: var(--ob-petrol) !important;
}

/* ==========================================================================
   PAGES LÉGALES — variante B « Bandeau graphite »
   ========================================================================== */

body.wh-option-b .wh-legal-main {
    max-width: 100% !important;
    padding: 0 !important;
}

body.wh-option-b .wh-legal-hero {
    background: var(--ob-graphite) !important;
    color: #FFFFFF !important;
    padding: 62px 32px 74px !important;
    position: relative;
    overflow: hidden;
}

body.wh-option-b .wh-legal-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    top: -70px;
    width: 320px;
    height: 320px;
    border: 1px solid #24323A;
    transform: rotate(45deg);
    pointer-events: none;
}

body.wh-option-b .wh-legal-hero-inner {
    max-width: 1000px !important;
    margin: 0 auto !important;
    position: relative;
    z-index: 2;
}

body.wh-option-b .wh-legal-kicker {
    font-family: 'Inter', sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: .24em !important;
    text-transform: uppercase !important;
    color: #8FA0A8 !important;
}

body.wh-option-b .wh-legal-hero .wh-legal-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(2rem, 4vw, 3.6rem) !important;
    font-weight: 500 !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
    color: #FFFFFF !important;
    margin: 14px 0 0 !important;
}

/* Onglets documents */
body.wh-option-b .wh-legal-tabs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

body.wh-option-b .wh-legal-tab {
    display: inline-block;
    border: 1px solid #2C3A42 !important;
    padding: 9px 15px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 9.5px !important;
    font-weight: 600 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: #C7D2D7 !important;
    text-decoration: none !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

body.wh-option-b .wh-legal-tab:hover {
    border-color: var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-legal-tab.is-active {
    background: var(--ob-petrol) !important;
    border-color: var(--ob-petrol) !important;
    color: #FFFFFF !important;
}

/* Feuille de contenu */
body.wh-option-b .wh-legal-sheet {
    max-width: 1000px !important;
    margin: -34px auto 0 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    padding: 52px 60px !important;
    position: relative;
    z-index: 3;
    box-shadow: 0 18px 40px rgba(14, 20, 24, .06);
}

body.wh-option-b .wh-legal-content {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-legal-sheet p,
body.wh-option-b .wh-legal-sheet ul,
body.wh-option-b .wh-legal-sheet li {
    font-size: 13.5px !important;
    line-height: 1.85 !important;
    color: #4E5A62 !important;
}

body.wh-option-b .wh-legal-sheet p {
    margin: 0 0 16px !important;
}

body.wh-option-b .wh-legal-sheet .wh-legal-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
    color: var(--ob-ink) !important;
    margin: 36px 0 16px !important;
    padding-top: 26px !important;
    border-top: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-legal-sheet .wh-legal-heading:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

/* Note de bas de document */
body.wh-option-b .wh-legal-note {
    max-width: 1000px !important;
    margin: 0 auto !important;
    padding: 20px 60px 46px !important;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    font-family: 'Inter', sans-serif !important;
    font-size: 9.5px !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: #96A0A6 !important;
}

@media (max-width: 900px) {
    body.wh-option-b .wh-legal-hero {
        padding: 44px 22px 58px !important;
    }

    body.wh-option-b .wh-legal-sheet {
        margin: -26px 16px 0 !important;
        padding: 32px 24px !important;
    }

    body.wh-option-b .wh-legal-note {
        padding: 18px 24px 36px !important;
        flex-direction: column;
        gap: 6px;
    }
}

/* ==========================================================================
   PAGES LÉGALES — mise en page large + sommaire + listes stylées
   ========================================================================== */

body.wh-option-b .wh-legal-page-area,
body.wh-option-b .wh-legal-main {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
}

/* Bandeau pleine largeur */
body.wh-option-b .wh-legal-hero {
    background: var(--ob-graphite) !important;
    padding: 66px 0 78px !important;
}

body.wh-option-b .wh-legal-hero-inner {
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
}

body.wh-option-b .wh-legal-hero .wh-legal-title {
    font-size: clamp(2.1rem, 4.4vw, 3.9rem) !important;
}

/* Feuille large : sommaire + contenu */
body.wh-option-b .wh-legal-sheet {
    max-width: 1320px !important;
    margin: -38px auto 0 !important;
    padding: 54px 56px !important;
    display: grid !important;
    grid-template-columns: 250px minmax(0, 1fr) !important;
    gap: 56px !important;
    align-items: start;
}

body.wh-option-b .wh-legal-sheet > .wh-legal-content:only-child {
    grid-column: 1 / -1 !important;
}

body.wh-option-b .wh-legal-toc {
    position: sticky;
    top: 34px;
    border-right: 1px solid var(--ob-line);
    padding-right: 22px;
}

body.wh-option-b .wh-legal-toc-title {
    display: block;
    font-size: 9.5px !important;
    font-weight: 600 !important;
    letter-spacing: .24em !important;
    text-transform: uppercase !important;
    color: var(--ob-muted) !important;
    margin-bottom: 16px;
}

body.wh-option-b .wh-legal-toc-item {
    display: flex !important;
    gap: 10px;
    padding: 10px 0 !important;
    border-bottom: 1px solid #EFEDE7 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    color: #43505A !important;
}

body.wh-option-b .wh-legal-toc-item:last-child {
    border-bottom: 0 !important;
}

body.wh-option-b .wh-legal-toc-num {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 10px !important;
    letter-spacing: .1em !important;
    color: var(--ob-brass) !important;
    padding-top: 2px;
}

body.wh-option-b .wh-legal-toc-item:hover,
body.wh-option-b .wh-legal-toc-item.is-active {
    color: var(--ob-ink) !important;
}

body.wh-option-b .wh-legal-toc-item.is-active {
    box-shadow: inset 2px 0 0 var(--ob-petrol);
    padding-left: 10px !important;
}

/* Contenu */
body.wh-option-b .wh-legal-sheet .wh-legal-content {
    grid-column: auto !important;
    min-width: 0;
}

body.wh-option-b .wh-legal-sheet p {
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #4A565E !important;
    margin: 0 0 18px !important;
    max-width: 72ch;
}

body.wh-option-b .wh-legal-sheet .wh-legal-heading {
    display: flex !important;
    align-items: baseline;
    gap: 14px;
    font-size: 19px !important;
    margin: 46px 0 20px !important;
    padding-top: 34px !important;
    border-top: 1px solid var(--ob-line) !important;
    letter-spacing: -.01em !important;
    text-transform: none !important;
}

body.wh-option-b .wh-legal-num {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
    color: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    padding: 3px 7px !important;
    flex: 0 0 auto;
}

body.wh-option-b .wh-legal-sheet .wh-legal-heading:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

body.wh-option-b .wh-legal-list {
    list-style: none !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    max-width: 72ch;
}

body.wh-option-b .wh-legal-list li {
    position: relative;
    font-size: 14.5px !important;
    line-height: 1.75 !important;
    color: #4A565E !important;
    padding: 9px 0 9px 22px !important;
    border-bottom: 1px solid #F1EFE9 !important;
}

body.wh-option-b .wh-legal-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 17px;
    width: 6px;
    height: 6px;
    background: var(--ob-petrol) !important;
}

body.wh-option-b .wh-legal-note {
    max-width: 1320px !important;
    padding: 22px 56px 50px !important;
}

@media (max-width: 1000px) {
    body.wh-option-b .wh-legal-sheet {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
        padding: 34px 24px !important;
        margin: -26px 16px 0 !important;
    }

    body.wh-option-b .wh-legal-toc {
        position: static;
        border-right: 0;
        border-bottom: 1px solid var(--ob-line);
        padding: 0 0 18px;
    }

    body.wh-option-b .wh-legal-hero-inner {
        padding: 0 24px !important;
    }
}

/* Sortir la page légale du conteneur central pour utiliser toute la largeur */
body.wh-option-b .wh-legal-page-area {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 0 !important;
}

body.wh-option-b .wh-legal-sheet {
    max-width: 1320px !important;
    width: calc(100% - 32px) !important;
}

/* Réduire le vide entre le fil d'Ariane et le bandeau */
body.wh-option-b[class*="template-legal"] .site-content {
    padding-top: 0 !important;
}

body.wh-option-b[class*="template-legal"] .storefront-breadcrumb {
    margin: 0 0 6px !important;
    padding-top: 16px !important;
}

body.wh-option-b[class*="template-legal"] .storefront-breadcrumb .col-full {
    max-width: 1320px !important;
    padding: 0 40px !important;
}

/* Chapeau de document (ligne en majuscules) */
body.wh-option-b .wh-legal-sheet .wh-legal-lead {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .22em !important;
    text-transform: uppercase !important;
    color: var(--ob-petrol) !important;
    margin: 0 0 26px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid var(--ob-line) !important;
}

/* ==========================================================================
   PAGE CONTACT — même traitement que les pages légales
   ========================================================================== */

body.wh-option-b .wh-contact-page-area,
body.wh-option-b .wh-contact-main {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    padding: 0 !important;
}

body.wh-option-b .wh-contact-container {
    max-width: 100% !important;
    padding: 0 !important;
}

/* Bandeau graphite pleine largeur */
body.wh-option-b .wh-contact-header {
    background: var(--ob-graphite) !important;
    color: #FFFFFF !important;
    padding: 62px 0 78px !important;
    position: relative;
    overflow: hidden;
}

body.wh-option-b .wh-contact-header::after {
    content: "";
    position: absolute;
    right: -70px;
    top: -70px;
    width: 300px;
    height: 300px;
    border: 1px solid #24323A;
    transform: rotate(45deg);
    pointer-events: none;
}

body.wh-option-b .wh-contact-header h1,
body.wh-option-b .wh-contact-header p {
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
    display: block;
    position: relative;
    z-index: 2;
    text-align: left !important;
}

body.wh-option-b .wh-contact-header h1 {
    font-size: clamp(2.1rem, 4.2vw, 3.6rem) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-contact-header p {
    color: #A9B4BA !important;
    font-size: 15px !important;
    margin-top: 16px !important;
    max-width: 1320px !important;
}

/* Feuille de contenu */
body.wh-option-b .wh-contact-content {
    max-width: 1320px !important;
    margin: -38px auto 0 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--ob-line) !important;
    padding: 50px 52px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr) !important;
    gap: 54px !important;
    align-items: start;
    position: relative;
    z-index: 3;
    box-shadow: 0 18px 40px rgba(14, 20, 24, .06);
}

body.wh-option-b .wh-contact-left h2,
body.wh-option-b .wh-contact-right h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;
    letter-spacing: -.02em !important;
    margin: 0 0 20px !important;
}

body.wh-option-b .wh-contact-form {
    display: grid !important;
    gap: 14px !important;
}

body.wh-option-b .wh-contact-form input,
body.wh-option-b .wh-contact-form textarea {
    width: 100% !important;
    height: 50px !important;
    background: #FAF9F6 !important;
    border: 1px solid var(--ob-line) !important;
}

body.wh-option-b .wh-contact-form textarea {
    min-height: 200px !important;
}

body.wh-option-b .wh-contact-info-card {
    background: var(--ob-bone) !important;
    border: 1px solid var(--ob-line) !important;
    padding: 26px !important;
}

body.wh-option-b .wh-contact-info-item {
    padding-bottom: 16px !important;
    margin-bottom: 16px !important;
    border-bottom: 1px solid #E4E1D8 !important;
}

body.wh-option-b .wh-contact-info-item:last-child {
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

@media (max-width: 1000px) {
    body.wh-option-b .wh-contact-content {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
        padding: 30px 22px !important;
        margin: -26px 16px 0 !important;
    }

    body.wh-option-b .wh-contact-header h1,
    body.wh-option-b .wh-contact-header p {
        padding: 0 24px !important;
    }
}

/* Contact : réduire le vide au-dessus du bandeau */
body.wh-option-b[class*="template-contact"] .site-content {
    padding-top: 0 !important;
}

body.wh-option-b[class*="template-contact"] .storefront-breadcrumb {
    margin: 0 0 6px !important;
    padding-top: 16px !important;
}

/* Logo texte retiré de l'en-tête (en attente du nouveau logo) */
body.wh-option-b .wh-logo-text {
    display: none !important;
}

body.wh-option-b .wh-logo a {
    display: inline-flex !important;
    align-items: center;
}

body.wh-option-b .wh-logo-house {
    display: inline-flex !important;
}

body.wh-option-b .wh-roof {
    position: static !important;
    width: 42px !important;
    height: 16px !important;
}

/* ==========================================================================
   404 + RECHERCHE — « Os & encre »
   ========================================================================== */

body.wh-option-b .wh-404-main,
body.wh-option-b .wh-search-main {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 60px 32px 70px !important;
    width: 100% !important;
}

body.wh-option-b .wh-404-hero { max-width: 760px; }

body.wh-option-b .wh-404-kicker,
body.wh-option-b .wh-search-kicker {
    display: block; font-size: 10px; font-weight: 600; letter-spacing: .24em;
    text-transform: uppercase; color: var(--ob-petrol); margin-bottom: 16px;
}

body.wh-option-b .wh-404-title,
body.wh-option-b .wh-search-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(1.9rem, 3.6vw, 2.9rem) !important;
    font-weight: 500 !important; letter-spacing: -.03em !important;
    color: var(--ob-ink) !important; margin: 0 0 16px !important; line-height: 1.05 !important;
}

body.wh-option-b .wh-404-text,
body.wh-option-b .wh-search-count {
    color: var(--ob-muted) !important; font-size: 15px !important; line-height: 1.7 !important;
    margin-bottom: 28px !important;
}

body.wh-option-b .wh-404-search {
    display: flex; gap: 0; max-width: 560px; margin-bottom: 22px;
    border: 1px solid var(--ob-line); background: #fff;
}

body.wh-option-b .wh-404-search input[type="search"] {
    flex: 1; border: 0 !important; height: 52px !important; padding: 0 16px !important;
    font-size: 14px !important; background: #fff !important; color: var(--ob-ink) !important;
    box-shadow: none !important; border-radius: 0 !important;
}

body.wh-option-b .wh-404-search button {
    border: 0 !important; border-radius: 0 !important; background: var(--ob-petrol) !important;
    color: #fff !important; padding: 0 26px !important; cursor: pointer;
    font-family: 'Space Grotesk', sans-serif !important; font-size: 11px !important;
    font-weight: 600 !important; letter-spacing: .14em !important; text-transform: uppercase !important;
}

body.wh-option-b .wh-404-cta {
    display: inline-block; padding: 15px 28px; background: var(--ob-ink); color: #fff !important;
    font-family: 'Space Grotesk', sans-serif; font-size: 11px; font-weight: 600;
    letter-spacing: .14em; text-transform: uppercase; text-decoration: none !important;
}

body.wh-option-b .wh-404-cats {
    display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; margin-top: 54px;
}

body.wh-option-b .wh-404-cat {
    border: 1px solid var(--ob-line); background: #fff; padding: 22px;
    display: flex; justify-content: space-between; align-items: baseline; text-decoration: none !important;
}

body.wh-option-b .wh-404-cat-name {
    font-family: 'Space Grotesk', sans-serif; font-size: 15px; color: var(--ob-ink);
}

body.wh-option-b .wh-404-cat-count { font-size: 11px; color: var(--ob-muted); }

body.wh-option-b .wh-search-grid {
    display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px;
}

body.wh-option-b .wh-search-card { border: 1px solid var(--ob-line); background: #fff; display: flex; flex-direction: column; }

body.wh-option-b .wh-search-thumb { display: block; background: #FAF9F6; border-bottom: 1px solid var(--ob-line); aspect-ratio: 4/3; overflow: hidden; }
body.wh-option-b .wh-search-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.wh-option-b .wh-search-noimg { display: block; width: 100%; height: 100%; background: #FAF9F6; }

body.wh-option-b .wh-search-body { padding: 20px; display: flex; flex-direction: column; flex: 1; }

body.wh-option-b .wh-search-item-title {
    font-family: 'Space Grotesk', sans-serif !important; font-size: 15.5px !important;
    font-weight: 500 !important; margin: 0 0 10px !important;
}
body.wh-option-b .wh-search-item-title a { color: var(--ob-ink) !important; text-decoration: none !important; }
body.wh-option-b .wh-search-excerpt { font-size: 13px !important; line-height: 1.6 !important; color: #55616A !important; margin: 0 0 16px !important; }
body.wh-option-b .wh-search-link {
    margin-top: auto; font-size: 10.5px; font-weight: 600; letter-spacing: .14em;
    text-transform: uppercase; color: var(--ob-petrol) !important; text-decoration: none !important;
}

body.wh-option-b .wh-search-pagination { margin-top: 40px; }
body.wh-option-b .wh-search-pagination .page-numbers { display: flex; gap: 8px; list-style: none; padding: 0; }
body.wh-option-b .wh-search-pagination .page-numbers li a,
body.wh-option-b .wh-search-pagination .page-numbers li span {
    display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px;
    border: 1px solid var(--ob-line); background: #fff; color: var(--ob-ink); text-decoration: none; font-size: 13px;
}
body.wh-option-b .wh-search-pagination .page-numbers li span.current { background: var(--ob-ink); color: #fff; border-color: var(--ob-ink); }

body.wh-option-b .wh-search-empty { max-width: 560px; }
body.wh-option-b .wh-search-empty p { color: var(--ob-muted); margin-bottom: 18px; }

/* Neutraliser les liens violets hérités de Storefront */
body.wh-option-b a { color: var(--ob-petrol); }

@media (max-width: 900px) {
    body.wh-option-b .wh-search-grid { grid-template-columns: 1fr 1fr; }
    body.wh-option-b .wh-404-cats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
    body.wh-option-b .wh-search-grid { grid-template-columns: 1fr; }
    body.wh-option-b .wh-404-cats { grid-template-columns: 1fr; }
}

/* Logo : fallback robuste (404, recherche, archives) */
body.wh-option-b .site-header .wh-logo,
body.wh-option-b .site-header .site-branding {
    background: url("../images/logo-final.png") no-repeat left center / contain !important;
    min-height: 50px;
    min-width: 232px;
    display: flex;
    align-items: center;
}

body.wh-option-b .site-header .wh-logo a,
body.wh-option-b .site-header .site-branding a {
    display: block !important;
    width: 232px !important;
    height: 50px !important;
    background: transparent !important;
    text-indent: -9999px;
    overflow: hidden;
}

@media (max-width: 992px) {
    body.wh-option-b .site-header .wh-logo,
    body.wh-option-b .site-header .site-branding {
        min-width: 170px;
        min-height: 38px;
    }
    body.wh-option-b .site-header .wh-logo a,
    body.wh-option-b .site-header .site-branding a {
        width: 170px !important;
        height: 38px !important;
    }
}

/* ==========================================================================
   CORRECTIONS MOBILE — audit
   ========================================================================== */

/* 1. Liens d'accent orange résiduels -> pétrole */
body.wh-option-b main a:not(.button):not(.wh-btn-primary):not(.add_to_cart_button):not(.wh-loop-btn),
body.wh-option-b .wh-section-link,
body.wh-option-b .wh-view-all,
body.wh-option-b .wh-category-banner-btn {
    color: var(--ob-petrol) !important;
}

/* 2. Carrousel catégories : plus de chevauchement */
body.wh-option-b .wh-category-banners-section .wh-category-banner-card {
    width: 80% !important;
    margin-right: 12px !important;
    scroll-snap-align: start;
}

body.wh-option-b .wh-category-banners-section {
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

/* 3. Grille produits mobile : 2 colonnes compactes */
@media (max-width: 700px) {
    body.wh-option-b .woocommerce ul.products,
    body.wh-option-b ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    body.wh-option-b .wh-card-content { padding: 12px 12px 14px !important; }
    body.wh-option-b .wh-card-title { font-size: 13px !important; min-height: 34px; }
    body.wh-option-b .wh-card-price { font-size: 15px !important; }
    body.wh-option-b .wh-loop-btn { padding: 11px 8px !important; font-size: 9.5px !important; }
    body.wh-option-b .wh-card-image-wrapper { padding: 8px !important; }
}

/* 4. Onglets légaux en scroll horizontal sur mobile */
@media (max-width: 900px) {
    body.wh-option-b .wh-legal-tabs {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
    }

    body.wh-option-b .wh-legal-tab {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    body.wh-option-b .wh-legal-sheet {
        padding: 26px 20px !important;
    }
}

/* 5. Badge du panier : espacement */
@media (max-width: 992px) {
    body.wh-option-b .wh-cart-count {
        top: -6px !important;
        right: -6px !important;
        min-width: 18px !important;
        height: 18px !important;
        font-size: 9px !important;
    }

    body.wh-option-b .wh-header-right { gap: 16px !important; }
}

/* Accents orange résiduels : surtitres et liens de sections */
body.wh-option-b [class*="eyebrow"] {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-combustibles-section a,
body.wh-option-b .wh-combustibles-section [class*="ver"],
body.wh-option-b .wh-combustibles-section [class*="link"] {
    color: var(--ob-petrol) !important;
}

body.wh-option-b .wh-combustibles-section h2,
body.wh-option-b .wh-category-banners-section h2 {
    font-family: 'Space Grotesk', sans-serif !important;
    letter-spacing: -.02em !important;
}

/* Sommaire légal compact en mobile (chips horizontales) */
@media (max-width: 900px) {
    body.wh-option-b .wh-legal-toc {
        display: flex !important;
        overflow-x: auto !important;
        gap: 10px !important;
        border: 0 !important;
        border-bottom: 1px solid var(--ob-line) !important;
        padding: 0 0 14px !important;
        position: static !important;
        -webkit-overflow-scrolling: touch;
    }

    body.wh-option-b .wh-legal-toc-title { display: none !important; }

    body.wh-option-b .wh-legal-toc-item {
        flex: 0 0 auto !important;
        border: 1px solid var(--ob-line) !important;
        padding: 8px 12px !important;
        white-space: nowrap;
        font-size: 11px !important;
    }

    body.wh-option-b .wh-legal-toc-item.is-active {
        box-shadow: none !important;
        border-color: var(--ob-petrol) !important;
        padding-left: 12px !important;
    }
}

/* ==========================================================================
   CORRECTIF : les grilles ne doivent PAS s'appliquer aux carrousels d'accueil
   ========================================================================== */

/* Accueil & sections (hors archive boutique) : on restaure un carrousel souple */
body.wh-option-b:not(.woocommerce-shop):not(.post-type-archive-product) ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
    overflow-x: auto !important;
    padding-bottom: 6px;
    scroll-snap-type: x mandatory;
}

body.wh-option-b:not(.woocommerce-shop):not(.post-type-archive-product) ul.products li.product,
body.wh-option-b:not(.woocommerce-shop):not(.post-type-archive-product) .wh-product-card {
    flex: 0 0 260px !important;
    min-width: 260px !important;
    scroll-snap-align: start;
}

@media (max-width: 700px) {
    body.wh-option-b:not(.woocommerce-shop):not(.post-type-archive-product) ul.products li.product,
    body.wh-option-b:not(.woocommerce-shop):not(.post-type-archive-product) .wh-product-card {
        flex: 0 0 220px !important;
        min-width: 220px !important;
    }
}

/* Archive boutique : grille classique (3 / 2 / 1 colonnes) */
body.wh-option-b.woocommerce-shop ul.products,
body.wh-option-b.post-type-archive-product ul.products,
body.wh-option-b .related.products ul.products,
body.wh-option-b .upsells.products ul.products,
body.wh-option-b .cross-sells ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    overflow: visible !important;
}

@media (max-width: 1100px) {
    body.wh-option-b.woocommerce-shop ul.products,
    body.wh-option-b.post-type-archive-product ul.products,
    body.wh-option-b .related.products ul.products,
    body.wh-option-b .cross-sells ul.products { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

@media (max-width: 700px) {
    body.wh-option-b.woocommerce-shop ul.products,
    body.wh-option-b.post-type-archive-product ul.products,
    body.wh-option-b .related.products ul.products,
    body.wh-option-b .cross-sells ul.products { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 12px !important; }
}

/* Surtitres de sections : neutraliser l'orange */
body.wh-option-b [class*="subtitle"],
body.wh-option-b [class*="kicker"] {
    color: var(--ob-petrol) !important;
}

/* Bouton « Ver la gama » en pétrole */
body.wh-option-b .wh-category-banners-section .wh-category-banner-btn,
body.wh-option-b .wh-category-banners-section a.wh-category-banner-btn,
body.wh-option-b .wh-category-banner-card .wh-category-banner-btn {
    background: var(--ob-petrol) !important;
    background-color: var(--ob-petrol) !important;
    border: 1px solid var(--ob-petrol) !important;
    color: #FFFFFF !important;
    border-radius: 0 !important;
    padding: 13px 24px !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

body.wh-option-b .wh-category-banners-section .wh-category-banner-btn:hover,
body.wh-option-b .wh-category-banner-card .wh-category-banner-btn:hover {
    background: var(--ob-petrol-dark) !important;
    border-color: var(--ob-petrol-dark) !important;
    color: #FFFFFF !important;
}

body.wh-option-b .wh-category-banners-section .wh-category-banner-btn *,
body.wh-option-b .wh-category-banner-card .wh-category-banner-btn svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

/* Correction : le sous-titre du hero ne doit pas être coloré en pétrole */
body.wh-option-b .wh-hero-section .wh-hero-subtitle,
body.wh-option-b .wh-hero-subtitle {
    color: var(--ob-muted-light) !important;
}
