@font-face {
    font-family: 'Sink';
    src: url('/themes/warehousechild/assets/fonts/sink.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
/**
 * CocoriKush - Header Custom CSS pour Warehouse (header-4)
 * Fichier à placer dans le child theme : themes/ccrk-child/assets/css/custom-header.css
 * Ou à injecter via iqitthemeeditor > Codes personnalisés > Head
 *
 * IMPORTANT : Ne modifie AUCUN template, ne casse AUCUN dropdown.
 * Cible uniquement les classes existantes de Warehouse.
 */

/* ══════════════════════════════════════════════
   VARIABLES
   ══════════════════════════════════════════════ */
:root {
    --ccrk-violet: #4A0E6B;
    --ccrk-violet-l: #6B2D8B;
    --ccrk-violet-d: #2D0842;
    --ccrk-neon: #D946EF;
    --ccrk-white: #FFFFFF;
    --ccrk-header-h: 68px;
}

/* ══════════════════════════════════════════════
   TOPBAR (header-nav = hook displayNav1/Nav2)
   ══════════════════════════════════════════════ */
.header-nav {
    background: var(--ccrk-violet-d) !important;
    border-bottom: none !important;
    padding: 0 !important;
    min-height: auto !important;
}

.header-nav .container,
.header-nav .container-fluid {
    padding-top: 5px;
    padding-bottom: 5px;
}

.header-nav,
.header-nav a,
.header-nav .left-nav,
.header-nav .right-nav,
.header-nav .center-nav {
    color: rgba(255, 255, 255, .8) !important;
    font-size: .74rem !important;
}

.header-nav a:hover {
    color: var(--ccrk-white) !important;
}

/* ══════════════════════════════════════════════
   HEADER PRINCIPAL (header-top)
   ══════════════════════════════════════════════ */
.header-top {
    background: var(--ccrk-violet) !important;
    box-shadow: 0 4px 20px rgba(45, 8, 66, .35);
    position: relative;
    z-index: 100;
}

/* Sticky */
#desktop-header.is-sticky .header-top,
.header-top-sticky .header-top {
    background: var(--ccrk-violet) !important;
    box-shadow: 0 4px 24px rgba(45, 8, 66, .45);
}

/* Container */
#desktop-header-container {
    min-height: var(--ccrk-header-h);
}

#desktop-header-container > .row {
    min-height: var(--ccrk-header-h);
}

/* ══════════════════════════════════════════════
   LOGO
   ══════════════════════════════════════════════ */
.col-header-left #desktop_logo img,
.col-header-center #desktop_logo img {
    max-height: 100px;
    width: auto;
}

/* ══════════════════════════════════════════════
   MENU PRINCIPAL (displayMainMenu)
   ══════════════════════════════════════════════ */
.col-header-menu {
    display: flex;
    align-items: center;
}

/* Liens de premier niveau */
#iqitmegamenu-horizontal .iqitmm > li > a,
#iqitmegamenu-horizontal .iqitmm > li > span,
.main-menu > ul > li > a {
    color: rgba(255, 255, 255, .78) !important;
    font-weight: 600 !important;
    font-size: .76rem !important;
    text-transform: uppercase !important;
    letter-spacing: .4px !important;
    padding: 7px 12px !important;
    border-radius: 50px !important;
    transition: background .25s ease, color .25s ease !important;
}

#iqitmegamenu-horizontal .iqitmm > li > a:hover,
#iqitmegamenu-horizontal .iqitmm > li > span:hover,
#iqitmegamenu-horizontal .iqitmm > li:hover > a,
#iqitmegamenu-horizontal .iqitmm > li:hover > span,
.main-menu > ul > li > a:hover {
    background: rgba(255, 255, 255, .1) !important;
    color: var(--ccrk-white) !important;
}

/* Item actif */
#iqitmegamenu-horizontal .iqitmm > li.current > a,
.main-menu > ul > li.current > a {
    background: rgba(255, 255, 255, .12) !important;
    color: var(--ccrk-white) !important;
}

/* Sous-menu dropdown - NE PAS CASSER */
#iqitmegamenu-horizontal .iqitmm-submenu,
.main-menu .sub-menu {
    background: var(--ccrk-white) !important;
    border-top: 3px solid var(--ccrk-neon) !important;
    box-shadow: 0 12px 40px rgba(74, 14, 107, .15) !important;
    border-radius: 0 0 12px 12px !important;
}

#iqitmegamenu-horizontal .iqitmm-submenu a,
.main-menu .sub-menu a {
    color: #1A1028 !important;
    font-size: .82rem !important;
}

#iqitmegamenu-horizontal .iqitmm-submenu a:hover,
.main-menu .sub-menu a:hover {
    color: var(--ccrk-violet) !important;
    background: rgba(74, 14, 107, .04) !important;
}

/* Titres colonnes sous-menu */
#iqitmegamenu-horizontal .iqitmm-submenu .iqitmm-col-title,
#iqitmegamenu-horizontal .iqitmm-submenu h4 {
    color: var(--ccrk-violet) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: .72rem !important;
    letter-spacing: .5px;
}

/* ══════════════════════════════════════════════
   BOUTONS HEADER (search, account, cart)
   ══════════════════════════════════════════════ */
.col-header-right .row {
    gap: 6px;
}

/* Style commun boutons */
.header-btn {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .1) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background .25s ease !important;
    padding: 0 !important;
    position: relative;
}

.header-btn:hover {
    background: rgba(255, 255, 255, .18) !important;
}

/* Icônes */
.header-btn .icon,
.header-btn .fa,
.header-btn i {
    color: var(--ccrk-white) !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

/* Masquer le texte sous les icônes */
.header-btn .title,
.header-btn span.title {
    display: none !important;
}

/* ── Search ── */
#iqitsearch-btn .header-btn,
.iqitsearch-wrapper .header-btn {
    width: 38px !important;
    height: 38px !important;
}

/* Search dropdown - ne pas casser */
.search-widget-dropdown,
.iqitsearch-dropdown,
#iqitsearch-results {
    background: var(--ccrk-white) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(74, 14, 107, .15) !important;
    border: none !important;
}

.iqitsearch-dropdown input[type="text"],
.search-widget-dropdown input[type="text"] {
    border: 2px solid rgba(74, 14, 107, .1) !important;
    border-radius: 50px !important;
    padding: 10px 20px !important;
    font-family: inherit !important;
}

.iqitsearch-dropdown input[type="text"]:focus,
.search-widget-dropdown input[type="text"]:focus {
    border-color: var(--ccrk-neon) !important;
    outline: none !important;
}

/* ── Account ── */
#header-user-btn .header-btn {
    width: 38px !important;
    height: 38px !important;
}

/* Account dropdown - NE PAS CASSER */
#header-user-btn .dropdown-menu {
    background: var(--ccrk-white) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(74, 14, 107, .15) !important;
    border: none !important;
    padding: 8px 0 !important;
    min-width: 220px !important;
}

#header-user-btn .dropdown-menu .dropdown-item {
    color: #1A1028 !important;
    font-size: .82rem !important;
    padding: 8px 18px !important;
    transition: background .2s ease !important;
}

#header-user-btn .dropdown-menu .dropdown-item:hover {
    background: rgba(74, 14, 107, .04) !important;
    color: var(--ccrk-violet) !important;
}

#header-user-btn .dropdown-menu .dropdown-item i {
    color: var(--ccrk-violet-l) !important;
    width: 20px;
}

/* ── Cart ── */
#ps-shoppingcart-wrapper .header-btn,
.header-cart-btn-w .header-btn {
    width: 38px !important;
    height: 38px !important;
}

/* Badge quantité panier */
.cart-products-count,
.cart-products-count-btn {
    position: absolute !important;
    top: -3px !important;
    right: -3px !important;
    background: var(--ccrk-neon) !important;
    color: var(--ccrk-white) !important;
    font-size: .55rem !important;
    font-weight: 700 !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
}

/* Cart dropdown / side cart - NE PAS CASSER les JS/positions */
.ps-shoppingcart .dropdown-menu,
.blockcart-content,
.side-cart-content,
#blockcart-content {
    background: var(--ccrk-white) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(74, 14, 107, .15) !important;
}

/* Side cart overlay */
.side-cart-open .side-cart-overlay {
    background: rgba(45, 8, 66, .5) !important;
}

/* Bouton checkout dans le cart */
.ps-shoppingcart .btn-primary,
.blockcart-content .btn-primary,
#blockcart-content .btn-primary {
    background: var(--ccrk-violet) !important;
    border-color: var(--ccrk-violet) !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    transition: background .25s ease !important;
}

.ps-shoppingcart .btn-primary:hover,
.blockcart-content .btn-primary:hover,
#blockcart-content .btn-primary:hover {
    background: var(--ccrk-violet-l) !important;
}

/* ══════════════════════════════════════════════
   DISPLAY TOP (ligne sous le header)
   ══════════════════════════════════════════════ */
.header-top .col-12 .row {
    background: transparent;
}

/* ══════════════════════════════════════════════
   BANNER (displayBanner - pour le ticker)
   ══════════════════════════════════════════════ */
.header-banner {
    background: var(--ccrk-violet-d) !important;
    padding: 0 !important;
    border: none !important;
}

/* ══════════════════════════════════════════════
   displayNavFullWidth
   ══════════════════════════════════════════════ */
[id*="displayNavFullWidth"] {
    background: var(--ccrk-violet);
}

/* ══════════════════════════════════════════════
   GLOBAL OVERRIDES - boutons/liens du thème
   ══════════════════════════════════════════════ */

/* Liens primaires */
a.btn-primary,
.btn-primary {
    background: var(--ccrk-violet) !important;
    border-color: var(--ccrk-violet) !important;
}

a.btn-primary:hover,
.btn-primary:hover {
    background: var(--ccrk-violet-l) !important;
    border-color: var(--ccrk-violet-l) !important;
}

/**
 * CocoriKush - Menu CSS pour Warehouse iqitmegamenu
 * Cible les classes cbp-hrmenu du rendu live
 * À AJOUTER au custom-header.css existant
 */

/* ══════════════════════════════════════════════
   MEGAMENU WRAPPER
   ══════════════════════════════════════════════ */
#iqitmegamenu-wrapper {
    background: #4A0E6B !important;
    border: none !important;
    box-shadow: none !important;
}

.container-iqitmegamenu {
    padding: 0 !important;
}

#iqitmegamenu-horizontal {
    background: #4A0E6B !important;
    border: none !important;
	padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* ══════════════════════════════════════════════
   NAV PRINCIPALE
   ══════════════════════════════════════════════ */
.cbp-hrmenu > ul {
    display: flex !important;
    align-items: center !important;
    gap: 2px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ══════════════════════════════════════════════
   ITEMS DE PREMIER NIVEAU
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab > a,
.cbp-hrmenu-tab > .nav-link {
    color: rgba(255, 255, 255, .78) !important;
    font-weight: 600 !important;
    font-size: .76rem !important;
    text-transform: uppercase !important;
    letter-spacing: .4px !important;
    padding: 8px 14px !important;
    border-radius: 50px !important;
    transition: background .25s ease, color .25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    background: transparent !important;
    border: none !important;
}

/* Hover */
.cbp-hrmenu-tab > a:hover,
.cbp-hrmenu-tab > .nav-link:hover,
.cbp-hrmenu-tab:hover > a,
.cbp-hrmenu-tab:hover > .nav-link {
    background: rgba(255, 255, 255, .1) !important;
    color: #FFFFFF !important;
}

/* Item actif / ouvert */
.cbp-hrmenu-tab.cbp-hrsub-active > a,
.cbp-hrmenu-tab.cbp-hrsub-active > .nav-link,
.cbp-hrmenu-tab.active > a,
.cbp-hrmenu-tab.current > a {
    background: rgba(255, 255, 255, .12) !important;
    color: #FFFFFF !important;
}

/* ══════════════════════════════════════════════
   ICONES DANS LE MENU
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab .cbp-mainlink-icon,
.cbp-hrmenu-tab .nav-link i.fa,
.cbp-hrmenu-tab .nav-link i.icon {
    color: rgba(255, 255, 255, .78) !important;
    font-size: 14px !important;
    transition: color .25s ease !important;
}

.cbp-hrmenu-tab:hover .cbp-mainlink-icon,
.cbp-hrmenu-tab:hover .nav-link i.fa,
.cbp-hrmenu-tab:hover .nav-link i.icon {
    color: #FFFFFF !important;
}

/* Home icon only tab */
.cbp-hrmenu-tab.cbp-onlyicon > a {
    padding: 8px 12px !important;
}

/* ══════════════════════════════════════════════
   TITRE DES ONGLETS
   ══════════════════════════════════════════════ */
.cbp-tab-title {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}

/* Flèche dropdown */
.cbp-hrmenu-tab .cbp-tab-title::after,
.cbp-hrmenu-tab > a::after {
    color: rgba(255, 255, 255, .35) !important;
    font-size: .55rem !important;
    margin-left: 2px !important;
}

/* ══════════════════════════════════════════════
   SOUS-MENUS DROPDOWN
   NE PAS CASSER le positionnement JS
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab > .cbp-hrsub,
.cbp-hrmenu-tab .cbp-hrsub-wrapper,
.cbp-hrsub {
    background: #FFFFFF !important;
    border: none !important;
    border-top: 3px solid #D946EF !important;
    box-shadow: 0 12px 40px rgba(74, 14, 107, .15) !important;
    border-radius: 0 0 14px 14px !important;
    padding: 20px 24px !important;
}

/* Liens dans les sous-menus */
.cbp-hrsub a,
.cbp-hrsub .cbp-hrsub-inner a {
    color: #1A1028 !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
    padding: 6px 10px !important;
    border-radius: 8px !important;
    transition: background .2s ease, color .2s ease !important;
    display: block !important;
    text-decoration: none !important;
}

.cbp-hrsub a:hover,
.cbp-hrsub .cbp-hrsub-inner a:hover {
    background: rgba(74, 14, 107, .04) !important;
    color: #4A0E6B !important;
}

/* Titres des colonnes sous-menu */
.cbp-hrsub h4,
.cbp-hrsub .cbp-hrsub-inner h4,
.cbp-hrsub .iqitmm-col-title,
.cbp-hrsub .cbp-column-title {
    color: #4A0E6B !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    letter-spacing: .6px !important;
    padding-bottom: 8px !important;
    margin-bottom: 8px !important;
    border-bottom: 1px solid rgba(74, 14, 107, .08) !important;
}

/* Images dans les sous-menus */
.cbp-hrsub img {
    border-radius: 10px;
}

/* ══════════════════════════════════════════════
   ITEM "PROMO" (si tu veux un item rouge)
   Ajouter la classe CSS "ccrk-hot" dans le
   back-office megamenu sur l'item voulu
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab.ccrk-hot > a,
.cbp-hrmenu-tab.ccrk-hot > .nav-link {
    background: #EF4444 !important;
    color: #FFFFFF !important;
}

.cbp-hrmenu-tab.ccrk-hot > a:hover,
.cbp-hrmenu-tab.ccrk-hot > .nav-link:hover {
    background: #DC2626 !important;
}

/* ══════════════════════════════════════════════
   ITEM "NEON" (si tu veux un item néon rose)
   Classe CSS "ccrk-neon" dans le BO
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab.ccrk-neon > a,
.cbp-hrmenu-tab.ccrk-neon > .nav-link {
    background: #D946EF !important;
    color: #FFFFFF !important;
}

.cbp-hrmenu-tab.ccrk-neon > a:hover,
.cbp-hrmenu-tab.ccrk-neon > .nav-link:hover {
    background: #C026D3 !important;
}

/* ══════════════════════════════════════════════
   BADGE "NEW" / "HOT" sur un item
   Classe CSS "ccrk-badge-new" ou "ccrk-badge-hot"
   ══════════════════════════════════════════════ */
.cbp-hrmenu-tab.ccrk-badge-new > a .cbp-tab-title::after,
.cbp-hrmenu-tab.ccrk-badge-hot > a .cbp-tab-title::after {
    content: '' !important;
}

.cbp-hrmenu-tab.ccrk-badge-new > a .cbp-tab-title::before {
    content: 'NEW';
    background: #22C55E;
    color: #FFFFFF;
    font-size: .5rem;
    font-weight: 800;
    padding: 2px 5px;
    border-radius: 4px;
    margin-right: 4px;
    letter-spacing: .5px;
}

.cbp-hrmenu-tab.ccrk-badge-hot > a .cbp-tab-title::before {
    content: '🔥';
    font-size: .7rem;
    margin-right: 2px;
}

/* ══════════════════════════════════════════════
   RESPONSIVE — masquer sur mobile
   ══════════════════════════════════════════════ */
@media (max-width: 1024px) {
    #iqitmegamenu-wrapper {
        display: none !important;
    }
}
/**
 * CocoriKush - Homepage CSS
 * Gradient fades, section headers, product cards
 */

/* ══════════════════════════════════
   @FONT-FACE
   ══════════════════════════════════ */
@font-face {
    font-family: 'Sink';
    src: url('/themes/warehousechild/assets/fonts/sink.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* ══════════════════════════════════
   VARIABLES
   ══════════════════════════════════ */
:root {
    --ccrk-v: #4A0E6B;
    --ccrk-vl: #6B2D8B;
    --ccrk-vd: #2D0842;
    --ccrk-vx: #1A0530;
    --ccrk-n: #D946EF;
    --ccrk-w: #FFFFFF;
    --ccrk-off: #F8F4FC;
    --ccrk-cream: #FDF8FF;
    --ccrk-txt: #1A1028;
    --ccrk-sub: #7C6990;
    --ccrk-mute: #A99ABB;
}

/* ══════════════════════════════════
   GRADIENT FADES entre sections
   Classe CSS à mettre sur la section Elementor
   ══════════════════════════════════ */
.ccrk-fade-to-cream { position: relative; }
.ccrk-fade-to-cream::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, transparent, #FDF8FF);
    pointer-events: none;
    z-index: 1;
}

.ccrk-fade-to-white { position: relative; }
.ccrk-fade-to-white::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, transparent, #FFFFFF);
    pointer-events: none;
    z-index: 1;
}

.ccrk-fade-to-off { position: relative; }
.ccrk-fade-to-off::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, transparent, #F8F4FC);
    pointer-events: none;
    z-index: 1;
}

.ccrk-fade-to-violet { position: relative; }
.ccrk-fade-to-violet::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, transparent, #4A0E6B);
    pointer-events: none;
    z-index: 1;
}

/* ══════════════════════════════════
   BACKGROUNDS — classes pour sections
   ══════════════════════════════════ */
.ccrk-bg-cream { background: var(--ccrk-cream) !important; }
.ccrk-bg-white { background: var(--ccrk-w) !important; }
.ccrk-bg-off { background: var(--ccrk-off) !important; }
.ccrk-bg-violet { background: var(--ccrk-v) !important; }
.ccrk-bg-dark { background: var(--ccrk-vd) !important; }

/* ══════════════════════════════════
   SECTION HEADER — Mascotte + Titre
   Widget HTML
   ══════════════════════════════════ */
.ccrk-sh {
    text-align: center;
    margin-bottom: 32px;
}

/* Mascotte */
.ccrk-sh-mascot {
    position: relative;
    z-index: 3;
    margin-bottom: -20px;
}
.ccrk-sh-mascot img {
    height: 170px;
    width: auto;
    margin: 0 auto;
    display: block;
    filter: drop-shadow(0 10px 30px rgba(74, 14, 107, .35));
}

/* Barre titre */
.ccrk-sh-bar {
    background: var(--ccrk-v);
    border-radius: 22px;
    padding: 32px 40px 20px;
    max-width: 500px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    box-shadow: 0 8px 40px rgba(74, 14, 107, .25),
                inset 0 1px 0 rgba(255, 255, 255, .06);
}
.ccrk-sh-bar h2 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    color: #FFFFFF;
    font-size: 45px;
    letter-spacing: .5px;
    line-height: 1.1;
    margin: 0;
    font-weight: 400;
}
.ccrk-sh-bar .ccrk-sh-sub {
    font-family: 'Sink', 'Lilita One', cursive !important;
    color: #fff;
    font-size: 25px;
    font-weight: 500;
    margin-top: 6px;
    letter-spacing: .3px;
}

/* Version solo (sans mascotte) */
.ccrk-sh-solo .ccrk-sh-bar {
    max-width: 900px;
    padding: 24px 48px 20px;
}

/* Responsive */
@media (max-width: 768px) {
    .ccrk-sh-mascot { margin-bottom: -28px; }
    .ccrk-sh-mascot img { height: 120px; }
    .ccrk-sh-bar {
        padding: 18px 24px 14px;
        border-radius: 16px;
        max-width: 320px;
    }
}

/* ══════════════════════════════════
   SEO TEXT — Widget Texte Éditeur
   Classe CSS avancée : ccrk-seo
   ══════════════════════════════════ */
.ccrk-seo {
    max-width: 1080px;
    margin: 0 auto;
    text-align: center;
    padding-top: 28px;
}
.ccrk-seo p {
    font-size: .92rem;
    line-height: 1.8;
    color: var(--ccrk-sub);
}
.ccrk-seo p:first-child {
    font-size: 1rem;
    font-weight: 500;
    color: var(--ccrk-txt);
}

@media (max-width: 768px) {
    .ccrk-seo p { font-size: .84rem; }
}

/* ══════════════════════════════════
   VIEW ALL BUTTON
   Classe CSS avancée : ccrk-see-all
   ══════════════════════════════════ */
.ccrk-see-all,
.ccrk-see-all a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 28px auto 0;
    color: var(--ccrk-v);
    font-weight: 700;
    font-size: .85rem;
    padding: 10px 24px;
    border-radius: 50px;
    border: 2px solid rgba(74, 14, 107, .12);
    background: transparent;
    transition: .25s;
    text-decoration: none;
    width: fit-content;
}
.ccrk-see-all:hover,
.ccrk-see-all a:hover {
    background: rgba(74, 14, 107, .04);
    border-color: rgba(74, 14, 107, .2);
}

/**
 * CocoriKush - Product Miniatures (complet)
 * Police native partout SAUF bouton panier = Sink
 */

/* ══════════════════════════════════
   EQUAL HEIGHTS — swiper + cards
   ══════════════════════════════════ */
.swiper-wrapper {
    align-items: stretch !important;
}
.swiper-slide {
    height: auto !important;
    display: flex !important;
    padding: 0 6px !important;
}
.swiper-slide .js-product-miniature-wrapper,
.product-carousel {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

/* ══════════════════════════════════
   CARD
   ══════════════════════════════════ */
.product-miniature {
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    box-shadow: 0 2px 10px rgba(74, 14, 107, .04) !important;
    transition: transform .3s, box-shadow .3s !important;
    background: #FFFFFF !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}
.product-miniature:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 36px rgba(74, 14, 107, .1) !important;
}

/* ══════════════════════════════════
   IMAGE — hauteur fixe
   ══════════════════════════════════ */
.product-miniature .thumbnail-container {
    background: #F8F4FC !important;
    overflow: hidden !important;
    position: relative !important;
    height: 220px !important;
    max-height: 220px !important;
    flex-shrink: 0 !important;
}
.product-miniature .thumbnail-container a {
    display: block !important;
    height: 100% !important;
}
.product-miniature .thumbnail-container img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
    transition: transform .35s !important;
}
.product-miniature:hover .thumbnail-container img {
    transform: scale(1.03) !important;
}

/* ══════════════════════════════════
   BADGES
   ══════════════════════════════════ */
.product-miniature .product-flags {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    z-index: 3 !important;
}
.product-miniature .product-flag {
    padding: 3px 10px !important;
    border-radius: 50px !important;
    font-size: .6rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #FFFFFF !important;
    width: fit-content !important;
    margin-bottom: 3px !important;
}
.product-flag.discount { background: #EF4444 !important; }
.product-flag.new { background: #22C55E !important; }
.product-flag.on-sale { background: linear-gradient(90deg, #F97316, #EF4444) !important; }
.product-flag.pack { background: #D946EF !important; }

/* ══════════════════════════════════
   HOVER BUTTONS (wishlist, compare, quickview)
   ══════════════════════════════════ */
.product-functional-buttons {
    opacity: 0 !important;
    transition: opacity .2s !important;
}
.product-miniature:hover .product-functional-buttons {
    opacity: 1 !important;
}
.product-functional-buttons-links {
    display: flex !important;
    gap: 6px !important;
    justify-content: center !important;
    padding: 8px !important;
}
.product-functional-buttons-links a {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .9) !important;
    display: grid !important;
    place-items: center !important;
    color: #4A0E6B !important;
    font-size: 12px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .08) !important;
    border: none !important;
    transition: .2s !important;
}
.product-functional-buttons-links a:hover {
    background: #4A0E6B !important;
    color: #FFFFFF !important;
}

/* ══════════════════════════════════
   STOCK
   ══════════════════════════════════ */
.product-miniature .product-unavailable {
    background: #ffffff !important;
    color: #EF4444 !important;
    border-radius: 6px !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    padding: 5px 10px !important;
}
.product-miniature .product-available {
    display: none !important;
}

/* ══════════════════════════════════
   DESCRIPTION — aligné à gauche, flex colonne
   ══════════════════════════════════ */
.product-miniature .product-description {
    padding: 12px 14px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    flex: 1 !important;
}

/* ══════════════════════════════════
   CATÉGORIE — police native
   ══════════════════════════════════ */
.product-miniature .product-category-name {
    font-family: inherit !important;
    font-size: .6rem !important;
    color: #6B2D8B !important;
    text-transform: uppercase !important;
    letter-spacing: .6px !important;
    font-weight: 700 !important;
    margin-bottom: 2px !important;
}

/* ══════════════════════════════════
   TITRE — police native, gros, lisible
   ══════════════════════════════════ */
.product-miniature .product-title {
    margin-bottom: 6px !important;
}
.product-miniature .product-title a {
    font-family: inherit !important;
    font-size: 1rem !important;
    color: #2D0842 !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}
.product-miniature:hover .product-title a {
    color: #4A0E6B !important;
}

/* ══════════════════════════════════
   MASQUER marque, ref, description, variants inline
   ══════════════════════════════════ */
.product-miniature .product-brand,
.product-miniature .product-reference,
.product-miniature .product-description-short,
.product-miniature .products-variants {
    display: none !important;
}

/* ══════════════════════════════════
   PRIX — police native
   ══════════════════════════════════ */
.product-miniature .product-price-and-shipping {
    margin-bottom: 2px !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}
.product-miniature .product-price,
.product-miniature .product-price a {
    font-family: inherit !important;
    font-size: 1.2rem !important;
    font-weight: 800 !important;
    color: #4A0E6B !important;
    text-decoration: none !important;
}
.product-miniature .regular-price {
    font-family: inherit !important;
    font-size: .75rem !important;
    color: #A99ABB !important;
    text-decoration: line-through !important;
}

/* Prix unitaire (Dès X€/g) */
.product-miniature [data-product-price-type="unit_price"],
.product-miniature .product-unit-price {
    font-size: .68rem !important;
    color: #7C6990 !important;
    width: 100% !important;
    margin-bottom: 6px !important;
}

/* ══════════════════════════════════
   COUNTDOWN PROMO
   ══════════════════════════════════ */
.product-miniature .price-countdown-wrapper {
    margin-bottom: 6px !important;
    width: 100% !important;
}
.product-miniature .price-countdown.badge-discount {
    background: #2D0842 !important;
    border-radius: 8px !important;
    padding: 4px 10px !important;
    font-size: .6rem !important;
    color: #FFFFFF !important;
    text-align: center !important;
    display: block !important;
}
.product-miniature .countdown-time {
    font-weight: 800 !important;
    color: #D946EF !important;
}

/* ══════════════════════════════════
   PUSH CART AREA EN BAS
   ══════════════════════════════════ */
.product-miniature .product-add-cart,
.product-miniature .addtocartattrproductlist {
    width: 100% !important;
    margin-top: auto !important;
}
.product-miniature .addtocartattrproductlist-form {
    width: 100% !important;
}

/* ══════════════════════════════════
   SELECT VARIANTES
   ══════════════════════════════════ */
.product-miniature .addtocartattrproductlist .product-variants-item {
    margin-bottom: 6px !important;
}
.product-miniature .form-control-select,
.product-miniature .addtocartattrproductlist-attribute-value {
    width: 100% !important;
    padding: 8px 12px !important;
    border: 1.5px solid #EDE5F5 !important;
    border-radius: 10px !important;
    font-family: inherit !important;
    font-size: .78rem !important;
    color: #1A1028 !important;
    background: #F8F4FC !important;
    -webkit-appearance: none !important;
    text-align: left !important;
    margin-bottom: 8px !important;
    cursor: pointer !important;
}
.product-miniature .form-control-select:focus {
    border-color: #D946EF !important;
    outline: none !important;
}

/* Masquer l'option vide "Choisissez" */
.product-miniature .form-control-select option[value=""] {
    display: none !important;
}

/* ══════════════════════════════════
   MASQUER QTY TOUCHSPIN dans le carousel
   ══════════════════════════════════ */
.product-miniature .product-quantity-touchspin,
.product-miniature .addtocartattrproductlist-quantity,
.product-miniature .product-quantity .qty {
    display: none !important;
}
.product-miniature .input-group-add-cart .input-qty {
    display: none !important;
}
.product-miniature .input-group-add-cart {
    width: 100% !important;
}

/* ══════════════════════════════════
   BOUTON AJOUTER AU PANIER
   Seul élément en police Sink
   ══════════════════════════════════ */
.product-miniature .btn.btn-primary.add-to-cart,
.product-miniature .btn-product-list.add-to-cart,
.product-miniature .btn-product-list,
.product-miniature .input-group-add-cart .btn {
    width: 100% !important;
    padding: 12px 18px !important;
    border: none !important;
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    border-radius: 12px !important;
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-weight: 400 !important;
    font-size: 1rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background .25s !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    min-height: 48px !important;
    letter-spacing: .3px !important;
}
.product-miniature .btn.btn-primary.add-to-cart:hover,
.product-miniature .btn-product-list.add-to-cart:hover,
.product-miniature .btn-product-list:hover {
    background: #6B2D8B !important;
    box-shadow: 0 6px 20px rgba(74, 14, 107, .22) !important;
}
.product-miniature .btn:disabled {
    background: #4A0E6B !important;
    opacity: .65 !important;
}

/* Texte interne du bouton — VISIBLE */
.product-miniature .btn .textFitted {
    font-size: 1rem !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

/* Icône panier — VISIBLE */
.product-miniature .btn .material-icons.shopping-cart,
.product-miniature .btn .fa.bag-icon {
    font-size: 18px !important;
    color: #FFFFFF !important;
    opacity: 1 !important;
}

/* Spinner caché */
.product-miniature .spinner-icon {
    display: none !important;
}

/* ══════════════════════════════════
   SWIPER NAVIGATION
   ══════════════════════════════════ */
.swiper-button-prev,
.swiper-button-next {
    width: 40px !important;
    height: 40px !important;
    background: rgba(255, 255, 255, .92) !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 14px rgba(74, 14, 107, .1) !important;
    color: #4A0E6B !important;
    transition: .25s !important;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
    background: #4A0E6B !important;
    color: #FFFFFF !important;
}
.swiper-button-prev::after,
.swiper-button-next::after {
    font-size: 13px !important;
    font-weight: 800 !important;
}
.swiper-pagination-bullet {
    background: #A99ABB !important;
    opacity: .4 !important;
}
.swiper-pagination-bullet-active {
    background: #4A0E6B !important;
    opacity: 1 !important;
    width: 22px !important;
    border-radius: 4px !important;
}

/* ══════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════ */
@media (max-width: 768px) {
    .product-miniature {
        border-radius: 12px !important;
    }
    .product-miniature .thumbnail-container {
        height: 160px !important;
        max-height: 160px !important;
    }
    .product-miniature .product-description {
        padding: 8px 10px 10px !important;
    }
    .product-miniature .product-title a {
        font-size: .85rem !important;
    }
    .product-miniature .product-price,
    .product-miniature .product-price a {
        font-size: 1rem !important;
    }
    .product-functional-buttons {
        opacity: 1 !important;
    }
    .swiper-slide {
        padding: 0 4px !important;
    }
}
/* ══════════════════════════════════
   GRILLE CATÉGORIE (listing)
   ══════════════════════════════════ */
.products-grid.products.row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 0 !important;
}
.products-grid.products.row > [class*="col"] {
    display: flex !important;
    padding: 8px !important;
}
.products-grid.products.row > [class*="col"] > .js-product-miniature-wrapper {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
}
.products-grid .product-miniature {
    height: 100% !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}
.products-grid .product-miniature .product-description {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}
.products-grid .product-miniature .addtocartattrproductlist,
.products-grid .product-miniature .product-add-cart {
    margin-top: auto !important;
    width: 100% !important;
}

/* ══════ BG image → blanc ══════ */
.product-miniature .thumbnail-container {
    background: #FFFFFF !important;
}
/* Réserver l'espace du sélecteur sur toutes les cards */
.product-miniature .addtocartattrproductlist .product-variants {
    min-height: 46px !important;
}
/* ══════ SMOKELLIER BLOCKQUOTE ══════ */
blockquote {
    margin: 0 0 2rem 0;
    position: relative;
    font-style: italic;
    font-family: 'DM Sans', sans-serif;
    color: #1A1028;
    background: #F8F4FC;
    border-radius: 20px;
    padding: 24px 28px 24px 130px;
    border-left: 4px solid #D946EF;
    min-height: 140px;
}
blockquote::before {
    content: '';
    background-image: url(/img/cms/smokelier2.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 90px;
    height: 110px;
    float: none;
    margin: 0;
}
blockquote > p {
    margin-left: 0;
    font-size: 1.00rem;
    line-height: 1.75;
    text-align: justify;
}

@media (max-width: 768px) {
    blockquote {
        padding: 120px 18px 18px 18px;
        border-left: none;
        border-top: 4px solid #D946EF;
    }
    blockquote::before {
        left: 50%;
        top: 12px;
        transform: translateX(-50%);
        width: 70px;
        height: 85px;
    }
}

/**
 * CocoriKush - Fiche Produit V5
 * custom-product-page.css
 */

/* ══════════════════════════════════
   PAGE BG
   ══════════════════════════════════ */
body#product,
#product #wrapper,
#product #main {
    background: #F8F5FB !important;
}

/* ══════════════════════════════════
   STICKY COLONNE DROITE
   ══════════════════════════════════ */
#product #main,
#product #wrapper,
#product #main > section,
#product #main-product-wrapper,
.product-container,
.product-info-row,
.col-product-image,
.col-product-info,
#col-product-info {
    overflow: visible !important;
}
.product-info-row {
    display: flex !important;
    align-items: flex-start !important;
}
.col-product-info {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 80px !important;
    align-self: flex-start !important;
    z-index: 10 !important;
}
@media (max-width: 991px) {
    .col-product-info { position: static !important; }
}

/* ══════════════════════════════════
   CONTAINER
   ══════════════════════════════════ */
#main-product-wrapper {
    max-width: 1280px !important;
    margin: 0 auto !important;
}

/* ══════════════════════════════════
   GALERIE — Card blanche
   ══════════════════════════════════ */
.col-product-image .images-container {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
}
.product-cover,
.product-container .product-cover {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    border: 1px solid rgba(74, 14, 107, .08) !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .06) !important;
    overflow: hidden !important;
    padding: 10px !important;
}
.product-cover img { border-radius: 14px !important; }

/* Thumbs */
.product-images, .product-thumbs, .js-qv-product-images {
    margin-top: 12px !important;
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}
.product-images > li img, .product-thumbs img {
    width: 72px !important; height: 72px !important;
    object-fit: cover !important; border-radius: 12px !important;
    border: 2px solid rgba(74, 14, 107, .06) !important;
    background: #FFF !important; cursor: pointer !important;
    transition: border-color .2s !important;
}
.product-images > li img:hover,
.product-images > li.selected img,
.product-thumbs .swiper-slide-thumb-active img {
    border-color: #4A0E6B !important;
}

/* FLAGS */
.product-flags .product-flag {
    border-radius: 50px !important; font-size: .68rem !important;
    font-weight: 700 !important; padding: 5px 14px !important;
    text-transform: uppercase !important;
}
.product-flags .product-flag.discount { background: #EF4444 !important; color: #FFF !important; }
.product-flags .product-flag.new { background: #22C55E !important; color: #FFF !important; }

/* ══════════════════════════════════
   TITRE H1
   ══════════════════════════════════ */
.product-container h1.page-title, #main h1.page-title {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 2.2rem !important; color: #2D0842 !important;
    line-height: 1.1 !important; font-weight: 400 !important;
    margin-bottom: 14px !important;
}


/* ══════════════════════════════════
   DESCRIPTION COURTE
   ══════════════════════════════════ */
.product-information > .product-description {
    font-size: .92rem !important; line-height: 1.75 !important;
    color: #1A1028 !important; margin-bottom: 16px !important;
}

/* ══════════════════════════════════
   BLOC FORM = CARD BLANCHE
   Flex column + ORDER pour réorganiser :
   1. Prix
   2. Variantes
   3. Quantité + bouton
   ══════════════════════════════════ */
#product .product-actions form#add-to-cart-or-refresh {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    padding: 22px 24px !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .06) !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Inputs hidden en haut */
#product form#add-to-cart-or-refresh > input[type="hidden"] {
    order: -10 !important;
}

/* PRIX → order 1 */
#product form#add-to-cart-or-refresh > .product_p_price_container,
#product form#add-to-cart-or-refresh > .product-prices {
    order: 1 !important;
}

/* Hook displayProductVariants */
#product form#add-to-cart-or-refresh > .hook-display-product-variants {
    order: 2 !important;
}

/* VARIANTES → order 2 */
#product form#add-to-cart-or-refresh > .product-variants,
#product form#add-to-cart-or-refresh > .ccrk-variants {
    order: 2 !important;
}

/* PACK → order 3 */
#product form#add-to-cart-or-refresh > .product-pack {
    order: 3 !important;
}

/* ADD TO CART → order 4 */
#product form#add-to-cart-or-refresh > .product-add-to-cart {
    order: 4 !important;
}

/* DISCOUNTS → order 5 */
#product form#add-to-cart-or-refresh > .product-discounts {
    order: 5 !important;
}

/* ══════════════════════════════════
   PRIX
   ══════════════════════════════════ */
#product .product_p_price_container .product-prices,
#product .product-actions .product-prices {
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(74, 14, 107, .06) !important;
}
#product .product-prices .current-price-value {
    font-size: 2.2rem !important; font-weight: 800 !important; color: #4A0E6B !important;
}
#product .product-prices .product-discount .regular-price {
    font-size: 1rem !important; color: #A99ABB !important; text-decoration: line-through !important;
}
#product .product-prices .badge-discount.discount {
    background: #EF4444 !important; color: #FFF !important;
    border-radius: 50px !important; font-size: .72rem !important;
    font-weight: 700 !important; padding: 4px 12px !important;
}
#product .product-prices .product-unit-price { font-size: .82rem !important; color: #7C6990 !important; }
#product .product-prices .tax-shipping-delivery-label { font-size: .75rem !important; color: #A99ABB !important; }

/* Stock */
#product #product-availability {
    border-radius: 50px !important;
    font-size: .85rem !important;
    font-weight: 700 !important;
    padding: 6px 16px !important;
    border: none !important;
    display: inline-block !important;
    margin-bottom: 8px !important;
}
#product #product-availability.badge-success { background: rgba(34, 197, 94, .08) !important; color: #22C55E !important; }
#product #product-availability.badge-danger { background: rgba(239, 68, 68, .08) !important; color: #EF4444 !important; }

/* Countdown */
#product .product-prices .price-countdown {
    background: #2D0842 !important; border-radius: 10px !important;
    padding: 6px 14px !important; font-size: .72rem !important; color: #FFF !important;
}
#product .product-prices .countdown-time { font-weight: 800 !important; color: #D946EF !important; }

/* ══════════════════════════════════
   VARIANTES — GRID 2 COLS
   ══════════════════════════════════ */
#product .product-variants,
#product .ccrk-variants {
    margin-bottom: 14px !important;
    width: 100% !important;
}
#product .product-variants > .product-variants-item,
#product .product-variants > .ccrk-variant-group {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-bottom: 12px !important;
}
#product .ccrk-variant-label {
    display: block !important;
    font-size: .78rem !important; font-weight: 700 !important;
    color: #7C6990 !important; text-transform: uppercase !important;
    letter-spacing: .5px !important; margin-bottom: 10px !important;
}

/* Grid 2 cols */
#product .ccrk-variant-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 6px !important;
    width: 100% !important;
}

/* Card */
#product .ccrk-vcard {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 14px !important;
    border: 2px solid rgba(74, 14, 107, .08) !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: border-color .15s, background .15s !important;
    background: #FFFFFF !important;
    margin: 0 !important;
    float: none !important;
}
#product .ccrk-vcard:hover {
    border-color: #6B2D8B !important;
}
#product .ccrk-vcard.ccrk-vcard-on {
    border-color: #4A0E6B !important;
    background: rgba(74, 14, 107, .03) !important;
}
#product .ccrk-vcard.ccrk-vcard-oos {
    opacity: .35 !important;
    pointer-events: none !important;
}

/* Radio hidden */
#product .ccrk-vcard-radio {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important; height: 0 !important;
    pointer-events: none !important;
}

/* Inner: nom à gauche, prix à droite */
#product .ccrk-vcard-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 8px !important;
}

/* Nom (grammage) — gauche, gras */
#product .ccrk-vcard-name {
    font-size: .95rem !important;
    font-weight: 700 !important;
    color: #1A1028 !important;
    white-space: nowrap !important;
}

/* Bloc prix — droite */
#product .ccrk-vcard-prices {
    text-align: right !important;
    flex-shrink: 0 !important;
}

/* Prix total */
#product .ccrk-vcard-price {
    font-size: 1rem !important;
    font-weight: 800 !important;
    color: #4A0E6B !important;
    display: block !important;
}
#product .ccrk-vcard-price:empty { display: none !important; }

/* Prix au gramme */
#product .ccrk-vcard-unit {
    font-size: .65rem !important;
    color: #7C6990 !important;
    display: block !important;
}
#product .ccrk-vcard-unit:empty { display: none !important; }

/* ══════ Kill borders parasites ══════ */
#product .ccrk-vcard span,
#product .input-radio:checked + span,
#product .input-radio:hover + span,
#product .addtocartattrproductlist .input-radio:checked + span,
#product .addtocartattrproductlist .input-radio:hover + span,
#product .addtocartattrproductlist .input-color:checked + span,
#product .addtocartattrproductlist .input-color:hover + span {
    border: none !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

@media (max-width: 768px) {
    #product .ccrk-variant-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 5px !important;
    }
    #product .ccrk-vcard { padding: 8px 10px !important; }
    #product .ccrk-vcard-name { font-size: 12px !important; }
    #product .ccrk-vcard-price { font-size: 12px !important; }
}
/* ══════ TUER LES BORDERS DU MODULE addtocartattrproductlist ══════ */
#product .addtocartattrproductlist .input-color + span,
#product .addtocartattrproductlist .input-radio + span,
#product .input-color + span,
#product .input-radio + span,
#product label.ccrk-variant-row .input-radio + span,
#product label.ccrk-variant-row span {
    border: none !important;
    box-shadow: none !important;
}

/* Couleurs */
#product .ccrk-color-list {
    list-style: none !important; display: flex !important;
    gap: 8px !important; flex-wrap: wrap !important; padding: 0 !important;
}
#product .ccrk-color-item .color {
    width: 32px !important; height: 32px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(74, 14, 107, .1) !important;
}
#product .ccrk-color-item .input-color:checked + .color {
    border-color: #4A0E6B !important;
    box-shadow: 0 0 0 2px #FFF, 0 0 0 4px #4A0E6B !important;
}

/* ══════════════════════════════════
   QUANTITÉ — TOUCHSPIN WAREHOUSE NATIF
   On restyle, on ne réorganise PAS
   ══════════════════════════════════ */
#product .product-quantity .qty {
    width: 120px !important;
    margin-right: 12px !important;
}
#product .bootstrap-touchspin {
    position: relative !important;
}
#product .bootstrap-touchspin input.form-control {
    height: 50px !important;
    width: 120px !important;
    border-radius: 12px !important;
    border: 2px solid rgba(74, 14, 107, .08) !important;
    background: #FFFFFF !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #1A1028 !important;
    text-align: center !important;
    padding-left: 38px !important;
    padding-right: 38px !important;
}
#product .bootstrap-touchspin .input-group-btn-vertical {
    position: static !important;
}
#product .bootstrap-touchspin .input-group-btn-vertical .btn {
    position: absolute !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 32px !important; height: 32px !important;
    margin: 0 !important; border: none !important;
    background: transparent !important;
    display: flex !important; align-items: center !important;
    justify-content: center !important; box-shadow: none !important;
}
#product .bootstrap-touchspin .bootstrap-touchspin-down {
    left: 6px !important; right: auto !important;
}
#product .bootstrap-touchspin .bootstrap-touchspin-up {
    right: 6px !important; left: auto !important;
}
#product .bootstrap-touchspin .input-group-btn-vertical .btn i {
    display: none !important;
}
#product .bootstrap-touchspin .bootstrap-touchspin-down::after {
    content: '−' !important; font-size: 20px !important;
    font-weight: 600 !important; color: #4A0E6B !important;
    font-family: inherit !important; line-height: 1 !important;
}
#product .bootstrap-touchspin .bootstrap-touchspin-up::after {
    content: '+' !important; font-size: 20px !important;
    font-weight: 600 !important; color: #4A0E6B !important;
    font-family: inherit !important; line-height: 1 !important;
}
#product .bootstrap-touchspin .bootstrap-touchspin-down:hover,
#product .bootstrap-touchspin .bootstrap-touchspin-up:hover {
    background: #F8F4FC !important; border-radius: 50% !important;
}
#product .bootstrap-touchspin-prefix,
#product .bootstrap-touchspin-postfix {
    display: none !important;
}

/* Qty + bouton en row */
#product .product-add-to-cart .product-quantity.row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0 !important; margin: 0 !important;
}
#product .product-add-to-cart .col-add-qty {
    flex: 0 0 auto !important; width: auto !important;
    max-width: none !important; padding: 0 !important;
}
#product .product-add-to-cart .col-add-btn {
    flex: 1 1 0% !important; width: auto !important;
    max-width: none !important; padding: 0 !important;
}

/* ══════════════════════════════════
   BOUTON AJOUTER AU PANIER
   ══════════════════════════════════ */
#product .product-add-to-cart .add .btn.btn-primary.add-to-cart {
    width: 100% !important; min-height: 50px !important;
    padding: 14px 28px !important; border: none !important;
    background: #4A0E6B !important; color: #FFFFFF !important;
    border-radius: 14px !important;
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.1rem !important; font-weight: 400 !important;
    letter-spacing: .3px !important; cursor: pointer !important;
    transition: background .25s, box-shadow .25s !important;
    display: flex !important; align-items: center !important;
    justify-content: center !important; gap: 10px !important;
    white-space: nowrap !important;
}
#product .product-add-to-cart .add .btn.btn-primary.add-to-cart:hover {
    background: #6B2D8B !important;
    box-shadow: 0 8px 28px rgba(74, 14, 107, .25) !important;
}
#product .product-add-to-cart .add .btn.btn-primary.add-to-cart:disabled {
    background: #A99ABB !important; opacity: .7 !important;
}
#product .product-add-to-cart .btn .bag-icon { font-size: 18px !important; color: #FFF !important; }
#product .product-add-to-cart .btn .spinner-icon { display: none !important; }

/* ══════════════════════════════════
   RÉASSURANCE
   ══════════════════════════════════ */
#block-reassurance { margin-top: 20px !important; }
#block-reassurance li { border-color: rgba(74, 14, 107, .06) !important; padding: 10px 0 !important; }

/* ══════════════════════════════════
   TABS — Card blanche encadrée
   ══════════════════════════════════ */
#product .product-tabs,
#product .tabs {
    background: #FFFFFF !important;
    border-radius: 16px !important; padding: 24px !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .06) !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    margin-top: 30px !important;
}
#product .product-tabs .nav-tabs {
    border-bottom: 2px solid rgba(74, 14, 107, .06) !important;
    margin-bottom: 20px !important;
}
#product .product-tabs .nav-link {
    font-size: .85rem !important; font-weight: 700 !important;
    color: #7C6990 !important; padding: 10px 20px !important;
    border: none !important; border-radius: 10px 10px 0 0 !important;
    background: transparent !important; transition: .2s !important;
}
#product .product-tabs .nav-link:hover {
    color: #4A0E6B !important; background: rgba(74, 14, 107, .03) !important;
}
#product .product-tabs .nav-link.active {
    color: #4A0E6B !important; border-bottom: 3px solid #4A0E6B !important;
}
#product .product-tabs-accordion .card-header {
    background: #F8F4FC !important; border-radius: 12px !important;
    border: 1px solid rgba(74, 14, 107, .06) !important; margin-bottom: 6px !important;
}
#product .product-tabs-accordion .card-header a,
#product .product-tabs-accordion .card-header button {
    font-weight: 700 !important; font-size: .88rem !important;
    color: #2D0842 !important; text-decoration: none !important;
}
.section-title {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.3rem !important; color: #2D0842 !important; font-weight: 400 !important;
}
#product .product-tabs .tab-content {
    font-size: .92rem !important; line-height: 1.8 !important; color: #1A1028 !important;
}
#product .product-tabs .tab-content h2 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.2rem !important; color: #2D0842 !important;
    font-weight: 400 !important; margin: 24px 0 10px !important;
}

/* ══════════════════════════════════
   PARTAGE SOCIAL
   ══════════════════════════════════ */
.social-sharing li a {
    width: 36px !important; height: 36px !important;
    border-radius: 50% !important; background: #F8F4FC !important;
    color: #4A0E6B !important; display: grid !important; place-items: center !important;
    border: 1px solid rgba(74, 14, 107, .06) !important; transition: .2s !important;
}
.social-sharing li a:hover { background: #4A0E6B !important; color: #FFF !important; }

/* ══════════════════════════════════
   PRODUITS SIMILAIRES
   ══════════════════════════════════ */
.product-accessories .section-title,
.product-accessories .block-title span {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.4rem !important; color: #2D0842 !important; font-weight: 400 !important;
}

/* ══════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════ */
@media (max-width: 768px) {
    .product-container h1.page-title { font-size: 1.6rem !important; }
    #product .product-prices .current-price-value { font-size: 1.8rem !important; }
    #product .product-actions form#add-to-cart-or-refresh { padding: 16px !important; }
    #product .product-add-to-cart .product-quantity.row {
        flex-direction: column !important; gap: 10px !important;
    }
    #product .product-add-to-cart .add .btn.btn-primary.add-to-cart { font-size: 1rem !important; }
    #product label.ccrk-variant-row { padding: 10px 14px !important; }
    #product .product-tabs, #product .tabs { padding: 16px !important; margin-top: 20px !important; }
}
/* ══════ PRIX À DROITE SUR CHAQUE ROW ══════ */
#product .ccrk-variant-price {
    font-size: .88rem !important;
    font-weight: 700 !important;
    color: #4A0E6B !important;
    margin-left: auto !important;
    white-space: nowrap !important;
    padding-left: 12px !important;
}
#product .ccrk-variant-price:empty {
    display: none !important;
}
/* ══════ TUER bg/border du module addtocartattrproductlist ══════ */
#product .addtocartattrproductlist .input-color:checked + span,
#product .addtocartattrproductlist .input-color:hover + span,
#product .addtocartattrproductlist .input-radio:checked + span,
#product .addtocartattrproductlist .input-radio:hover + span,
#product .input-color:checked + span,
#product .input-color:hover + span,
#product .input-radio:checked + span,
#product .input-radio:hover + span,
#product .ccrk-variant-row .input-radio:checked + span,
#product .ccrk-variant-row .input-radio:hover + span,
#product label.ccrk-variant-row:hover span,
#product label.ccrk-variant-selected span {
    border: none !important;
    background-color: transparent !important;
    box-shadow: none !important;
}
/* ══════ STICKY FIX — body overflow ══════ */
body#product,
body#product.body-desktop-header-style-w-4 {
    overflow-y: auto !important;
    overflow-x: hidden !important;
}
/* ══════ PRIX + ÉTOILES MÊME LIGNE ══════ */
#product .product_header_container {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 !important;
}
#product .product_header_container h1.page-title {
    order: 1 !important;
    width: 100% !important;
    margin-bottom: 8px !important;
}
#product .product_header_container .product-prices {
    order: 2 !important;
    margin-right: 16px !important;
    margin-bottom: 10px !important;
}
#product .product_header_container .skeepers_product__stars,
#product .product_header_container [class*="skeepers"] {
    order: 3 !important;
    margin-bottom: 10px !important;
}
/* Tout le reste après */
#product .product_header_container > * {
    order: 10 !important;
}
#product .product_header_container > h1.page-title { order: 1 !important; }
#product .product_header_container > .product-prices { order: 2 !important; }
#product .product_header_container > .skeepers_product__stars,
#product .product_header_container > [class*="skeepers"] { order: 3 !important; }

/* ══════ STICKY COMPACT — masquer au scroll ══════ */
.ccrk-sticky-compact .product-information > .product-description,
.ccrk-sticky-compact .hook-display-product-variants,
.ccrk-sticky-compact .product-additional-info .social-sharing {
    opacity: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    display: none !important;
}

/* Transition smooth */
.col-product-info .product-information > .product-description {
    transition: opacity .2s, max-height .3s;
    overflow: hidden;
}
/* ══════════════════════════════════
   COLONNE GAUCHE — ACCORDION TABS
   ══════════════════════════════════ */
#product #productdaas-accordion {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    padding: 20px !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .06) !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
}

/* Cards */
#product #productdaas-accordion .card {
    border: none !important;
    border-bottom: 1px solid rgba(74, 14, 107, .06) !important;
    border-radius: 0 !important;
    background: transparent !important;
    margin-bottom: 0 !important;
}
#product #productdaas-accordion .card:last-child {
    border-bottom: none !important;
}

/* Titres accordion */
#product #productdaas-accordion .card .title {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}
#product #productdaas-accordion .card .title a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 4px !important;
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    color: #2D0842 !important;
    text-decoration: none !important;
    transition: color .2s !important;
}
#product #productdaas-accordion .card .title a:hover {
    color: #4A0E6B !important;
}
#product #productdaas-accordion .card .title a .fa {
    color: #A99ABB !important;
    font-size: .85rem !important;
    transition: transform .2s !important;
}

/* Contenu ouvert */
#product #productdaas-accordion .content {
    padding: 0 4px 16px !important;
    border: none !important;
}

/* Description longue */
#product #productdaas-accordion .product-description .rte-content {
    font-size: 1.10rem !important;
    line-height: 1.8 !important;
    color: #1A1028 !important;
}
#product #productdaas-accordion .rte-content h2 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.6rem !important;
    color: #2D0842 !important;
    font-weight: 400 !important;
    margin: 20px 0 8px !important;
}
#product #productdaas-accordion .rte-content p {
    margin-bottom: 10px !important;
}
#product #productdaas-accordion .rte-content ul {
    padding-left: 18px !important;
    margin: 8px 0 !important;
}
#product #productdaas-accordion .rte-content li {
    margin-bottom: 4px !important;
}

/* Détails produit */
#product #productdaas-accordion #product-details .data-sheet {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 6px 16px !important;
    font-size: .85rem !important;
}
#product #productdaas-accordion #product-details .data-sheet dt {
    color: #7C6990 !important;
    font-weight: 600 !important;
}
#product #productdaas-accordion #product-details .data-sheet dd {
    color: #1A1028 !important;
    font-weight: 400 !important;
}
#product #productdaas-accordion #product-details .product-reference,
#product #productdaas-accordion #product-details .product-quantities {
    font-size: .82rem !important;
    margin-top: 8px !important;
}
#product #productdaas-accordion #product-details .product-reference .label,
#product #productdaas-accordion #product-details .product-quantities .label {
    color: #7C6990 !important;
    font-weight: 600 !important;
}
#product #productdaas-accordion #product-details .product-manufacturer {
    margin-top: 12px !important;
}
#product #productdaas-accordion #product-details .manufacturer-logo {
    max-height: 40px !important;
    width: auto !important;
}

/* ══════════════════════════════════
   SKEEPERS AVIS — dans l'accordion
   ══════════════════════════════════ */
#product .skeepers_product__reviews {
    padding: 0 !important;
}

/* Rating global */
#product .skeepers_product__reviews .rating {
    background: #F8F4FC !important;
    border-radius: 12px !important;
    padding: 16px !important;
    margin-bottom: 16px !important;
}
#product .skeepers_product__reviews .rating__global {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}
#product .skeepers_product__reviews .rating__value-numeric .text__rating {
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    color: #4A0E6B !important;
}

/* Barres de filtre */
#product .skeepers_product__reviews .filters__mark {
    margin-bottom: 4px !important;
}
#product .skeepers_product__reviews .filters__mark-scale {
    background: #EDE5F5 !important;
    border-radius: 50px !important;
    height: 6px !important;
    overflow: hidden !important;
}
#product .skeepers_product__reviews .filters__mark-bar {
    background: #4A0E6B !important;
    border-radius: 50px !important;
    height: 100% !important;
}

/* Reviews individuels */
#product .skeepers_product__reviews .review {
    border-bottom: 1px solid rgba(74, 14, 107, .06) !important;
    padding: 14px 0 !important;
    margin: 0 !important;
}
#product .skeepers_product__reviews .review:last-child {
    border-bottom: none !important;
}
#product .skeepers_product__reviews .review__text {
    font-size: .88rem !important;
    line-height: 1.6 !important;
    color: #1A1028 !important;
}
#product .skeepers_product__reviews .review__data {
    font-size: .75rem !important;
    color: #A99ABB !important;
}
#product .skeepers_product__reviews .review__data-name {
    font-weight: 700 !important;
    color: #4A0E6B !important;
}

/* Badge "Avis vérifié" */
#product .skeepers_product__reviews .review_verified button {
    background: rgba(34, 197, 94, .08) !important;
    color: #22C55E !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 3px 10px !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
}

/* Résumé IA */
#product .skeepers_product__reviews .review_summary {
    background: #F8F4FC !important;
    border-radius: 12px !important;
    padding: 14px 16px !important;
    margin-bottom: 14px !important;
}
#product .skeepers_product__reviews .review_summary h3 {
    font-size: .88rem !important;
    font-weight: 700 !important;
    color: #2D0842 !important;
    margin-bottom: 6px !important;
}
#product .skeepers_product__reviews .review_summary_content {
    font-size: .82rem !important;
    line-height: 1.6 !important;
    color: #7C6990 !important;
}

/* Pagination */
#product .skeepers_product__reviews .pagination__list__item__link {
    border-radius: 8px !important;
    padding: 6px 12px !important;
    font-size: .82rem !important;
    font-weight: 600 !important;
    color: #7C6990 !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    background: transparent !important;
}
#product .skeepers_product__reviews .pagination__list__item.active .pagination__list__item__link {
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    border-color: #4A0E6B !important;
}

/* Tri select */
#product .skeepers_product__reviews .rating__sorting select {
    border: 1.5px solid rgba(74, 14, 107, .08) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    font-size: .82rem !important;
    background: #FFFFFF !important;
    color: #1A1028 !important;
}

/* Search */
#product .skeepers_product__reviews .search-text {
    border: 1.5px solid rgba(74, 14, 107, .08) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    font-size: .82rem !important;
}

/* Thumbs utile */
#product .skeepers_product__reviews .thumbs-text {
    font-size: .72rem !important;
    color: #7C6990 !important;
}
#product .skeepers_product__reviews .report-review {
    font-size: .72rem !important;
    color: #A99ABB !important;
}
/* ══════ SKEEPERS — Pill violet ══════ */
#product .product_header_container .skeepers_product__stars .stars-cursor,
#product .product_header_container .skeepers_product__stars > .skeepers_product__stars {
    background: #4A0E6B !important;
    padding: 6px 16px !important;
    border-radius: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
}
#product .product_header_container .skeepers_product__stars a.review__header {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
}
#product .product_header_container .skeepers_product__stars .star-svg {
    width: 14px !important;
    height: 14px !important;
}
#product .product_header_container .skeepers_product__stars .star-svg path {
    fill: #D946EF !important;
}
#product .product_header_container .skeepers_product__stars .stars__rating {
    display: inline !important;
}
#product .product_header_container .skeepers_product__stars .text__rating {
    color: rgba(255, 255, 255, .7) !important;
    font-size: .78rem !important;
    font-weight: 600 !important;
    margin: 0 !important;
}
#product .product_header_container .skeepers_product__stars .rate-aggregate {
    color: #FFFFFF !important;
    font-weight: 800 !important;
}
#product .product_header_container .skeepers_product__stars .rate-aggregate__separator,
#product .product_header_container .skeepers_product__stars .rate-aggregate__max {
    color: rgba(255, 255, 255, .5) !important;
}
#product .product_header_container .skeepers_product__stars .rate-total {
    color: rgba(255, 255, 255, .5) !important;
}
#product .product_header_container .skeepers_product__stars .rate-total,
#product .product_header_container .skeepers_product__stars .rate-aggregate__max span {
    display: none !important;
}

/* ══════ Masquer doublon rupture sous bouton ══════ */
.product-miniature .addtocartattrproductlist .js-product-availability,
.product-miniature .addtocartattrproductlist span.js-product-availability {
    display: none !important;
}

/* ══════ Masquer bouton panier si rupture ══════ */
.product-miniature .btn.add-to-cart:disabled {
    display: none !important;
}

/* ══════ Avis miniatures — une ligne, aligné gauche ══════ */
.product-miniature .skeepers_product__stars {
    width: 100% !important;
}
.product-miniature .skeepers_product__stars a.review__header {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    justify-content: flex-start !important;
}
.product-miniature .skeepers_product__stars .stars {
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}
.product-miniature .skeepers_product__stars .star-svg {
    width: 12px !important;
    height: 12px !important;
}
.product-miniature .skeepers_product__stars .stars__rating {
    display: inline !important;
    flex-shrink: 0 !important;
}
.product-miniature .skeepers_product__stars .text__rating {
    font-size: .7rem !important;
    color: #7C6990 !important;
    margin: 0 !important;
    display: inline !important;
    white-space: nowrap !important;
}
.product-miniature .skeepers_product__stars .rate-aggregate {
    font-weight: 700 !important;
    color: #4A0E6B !important;
}
.product-miniature .skeepers_product__stars .rate-aggregate__separator,
.product-miniature .skeepers_product__stars .rate-aggregate__max {
    color: #A99ABB !important;
}
.product-miniature .skeepers_product__stars .rate-aggregate__max span {
    color: #A99ABB !important;
}
.product-miniature .skeepers_product__stars .rate-total {
    color: #A99ABB !important;
    font-size: .68rem !important;
}
/* ══════ Flèche sur le select miniature ══════ */
.product-miniature .form-control-select,
.product-miniature .addtocartattrproductlist-attribute-value {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%234A0E6B' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 10px 6px !important;
    padding-right: 32px !important;
}

/* ══════ Masquer bouton panier si rupture (même non disabled) ══════ */
.product-miniature .addtocartattrproductlist:has(.product-unavailable) .product-add-to-cart,
.product-miniature .addtocartattrproductlist:has(.product-unavailable) .product-quantity,
.product-miniature .product-add-cart:has(a.btn-product-list) .input-group-add-cart {
    display: none !important;
}
/* ══════ CATÉGORIE — Description + Elementor ══════ */

/* Fond page */
#category #wrapper,
#category #main {
    background: #F8F5FB !important;
}

/* Bloc Elementor description — scopé au contenu */
#category #content-wrapper .elementor,
#js-product-list-header + .elementor {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    padding: 28px 32px !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .06) !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    margin-bottom: 24px !important;
}
#category #content-wrapper .elementor .elementor-section {
    padding: 0 !important;
}
#category #content-wrapper .elementor .elementor-column-wrap,
#category #content-wrapper .elementor .elementor-widget-wrap {
    padding: 0 !important;
}

/* Titres — description native + Elementor */
#category .category-description h1,
#category .category-description h2,
#category .category-description h3,
#category .category-additional-description h1,
#category .category-additional-description h2,
#category .category-additional-description h3,
#category #content-wrapper .elementor h1,
#category #content-wrapper .elementor h2,
#category #content-wrapper .elementor h3 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    color: #2D0842 !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    margin: 20px 0 10px !important;
}
#category .category-description h1,
#category #content-wrapper .elementor h1 { font-size: 1.6rem !important; margin-top: 0 !important; }
#category .category-description h2,
#category #content-wrapper .elementor h2 { font-size: 1.25rem !important; }
#category .category-description h3,
#category #content-wrapper .elementor h3 { font-size: 1.05rem !important; }

/* Texte */
#category .category-description p,
#category .category-additional-description p,
#category #content-wrapper .elementor p {
    font-size: .9rem !important;
    line-height: 1.8 !important;
    color: #1A1028 !important;
    margin-bottom: 10px !important;
}

/* Gras */
#category .category-description strong,
#category .category-additional-description strong,
#category #content-wrapper .elementor strong {
    color: #2D0842 !important;
    font-weight: 700 !important;
}

/* Liens */
#category .category-description a,
#category .category-additional-description a,
#category #content-wrapper .elementor a {
    color: #4A0E6B !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(74, 14, 107, .2) !important;
    text-underline-offset: 3px !important;
    transition: text-decoration-color .2s !important;
}
#category .category-description a:hover,
#category .category-additional-description a:hover,
#category #content-wrapper .elementor a:hover {
    text-decoration-color: #4A0E6B !important;
}

/* Listes */
#category .category-description ul,
#category .category-additional-description ul {
    padding-left: 18px !important;
    margin: 8px 0 14px !important;
}
#category .category-description li,
#category .category-additional-description li {
    font-size: .88rem !important;
    line-height: 1.7 !important;
    color: #1A1028 !important;
    margin-bottom: 4px !important;
}

/* Images */
#category .category-description img,
#category .category-additional-description img {
    border-radius: 12px !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 12px 0 !important;
}

/* Responsive */
@media (max-width: 768px) {
    #category #content-wrapper .elementor {
        padding: 18px 16px !important;
    }
    #category .category-description h1,
    #category #content-wrapper .elementor h1 { font-size: 1.3rem !important; }
    #category .category-description h2,
    #category #content-wrapper .elementor h2 { font-size: 18px !important; }
}
/* ══════ FOOTER — Icônes réseaux sociaux ══════ */
.social-links._footer {
    display: flex !important;
    gap: 10px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.social-links._footer li a {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: rgba(74, 14, 107, .08) !important;
    color: #4A0E6B !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    transition: background .2s, color .2s, transform .2s !important;
    border: 1.5px solid rgba(74, 14, 107, .1) !important;
}
.social-links._footer li a:hover {
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
    border-color: #4A0E6B !important;
}
/* ══════ Miniature — sélecteur variantes full width ══════ */
.product-miniature .product-variants > .product-variants-item,
.product-miniature .addtocartattrproductlist .product-variants > .product-variants-item {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}
.product-miniature .form-control-select,
.product-miniature .addtocartattrproductlist-attribute-value {
    width: 100% !important;
    padding: 10px 36px 10px 14px !important;
    border: 2px solid rgba(74, 14, 107, .08) !important;
    border-radius: 10px !important;
    font-size: .82rem !important;
    font-weight: 600 !important;
    color: #1A1028 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
.product-miniature .form-control-select:hover,
.product-miniature .addtocartattrproductlist-attribute-value:hover {
    border-color: #6B2D8B !important;
}
.product-miniature .form-control-select:focus,
.product-miniature .addtocartattrproductlist-attribute-value:focus {
    border-color: #4A0E6B !important;
    outline: none !important;
}
/* ══════ HOMEPAGE — Fond violet section catégories ══════ */
.elementor-element-gtfe97q {
    background: #2D0842 !important;
}
.elementor-element-gtfe97q::after {
    content: '' !important;
    display: block !important;
    width: 60% !important;
    height: 3px !important;
    background: linear-gradient(90deg, transparent, #D946EF, transparent) !important;
    margin: 0 auto !important;
}

/* ══════ HOMEPAGE — Section avis fond violet profond ══════ */
.ccrk-section-avis {
    background: #2D0842 !important;
}
.ccrk-section-avis::after {
    content: '' !important;
    display: block !important;
    width: 60% !important;
    height: 3px !important;
    background: linear-gradient(90deg, transparent, #D946EF, transparent) !important;
    margin: 0 auto !important;
}

/* ══════ FAQ — Cards séparées ══════ */
.ccrk-faq-section {
    background: #F8F5FB !important;
    border-radius: 16px !important;
    padding: 28px 24px !important;
}

/* Items = cards blanches */
.ccrk-faq-section .elementor-accordion-item {
    border: none !important;
    background: #FFFFFF !important;
    border-radius: 12px !important;
    margin-bottom: 8px !important;
    box-shadow: 0 1px 6px rgba(74, 14, 107, .04) !important;
    overflow: hidden !important;
    border-left: 3px solid transparent !important;
    transition: border-color .2s !important;
}

/* Item ouvert = bord neon gauche */
.ccrk-faq-section .elementor-accordion-item.is-active,
.ccrk-faq-section .elementor-accordion-item:has(.elementor-accordion-content[style*="display: block"]) {
    border-left-color: #D946EF !important;
}

/* Titre = flex, texte gauche, icône droite */
.ccrk-faq-section .elementor-accordion-title {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    padding: 16px 18px !important;
    cursor: pointer !important;
    color: #2D0842 !important;
    font-weight: 600 !important;
    font-size: .92rem !important;
}

/* Icône +/- = pastille à droite */
.ccrk-faq-section .elementor-accordion-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: rgba(74, 14, 107, .06) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #4A0E6B !important;
    font-size: 16px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Texte du titre */
.ccrk-faq-section .elementor-accordion-title > span:not(.elementor-accordion-icon) {
    flex: 1 !important;
}

/* Contenu réponse */
.ccrk-faq-section .elementor-accordion-content {
    background: transparent !important;
    border: none !important;
    padding: 0 18px 16px !important;
    color: #7C6990 !important;
    font-size: .85rem !important;
    line-height: 1.7 !important;
}
.ccrk-faq-section .elementor-accordion-content a {
    color: #4A0E6B !important;
}
.ccrk-faq-section .elementor-accordion-content strong {
    color: #2D0842 !important;
}
/* ══════════════════════════════════
   HOMEPAGE — Bloc "Qui sommes-nous"
   Classe à mettre sur la SECTION Elementor: ccrk-about-full
   ══════════════════════════════════ */

/* Section wrapper */
.ccrk-about-full {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    padding: 32px 28px !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    box-shadow: 0 2px 16px rgba(74, 14, 107, .04) !important;
    margin: 30px 0 !important;
}
.ccrk-about-full .elementor-section,
.ccrk-about-full .elementor-column-wrap,
.ccrk-about-full .elementor-widget-wrap {
    padding: 0 !important;
}

/* Titre H2 centré + trait neon */
.ccrk-about-full .elementor-widget-heading .elementor-heading-title {
    text-align: center !important;
    color: #2D0842 !important;
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.6rem !important;
    font-weight: 400 !important;
}
.ccrk-about-full .elementor-widget-heading::after {
    content: '' !important;
    display: block !important;
    width: 50px !important;
    height: 3px !important;
    background: #D946EF !important;
    margin: 10px auto 20px !important;
    border-radius: 50px !important;
}

/* Intro text */
.ccrk-about-full .elementor-widget-text-editor p {
    font-size: .92rem !important;
    color: #1A1028 !important;
    line-height: 1.8 !important;
    text-align: justify !important;
}
.ccrk-about-full .elementor-widget-text-editor strong {
    color: #4A0E6B !important;
}

/* Séparateur */
.ccrk-about-full .elementor-divider-separator {
    border-color: rgba(74, 14, 107, .06) !important;
}

/* ══════ GRILLE 4 THÈMES ══════ */
.ccrk-theme-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px 24px !important;
    margin: 20px 0 !important;
}
.ccrk-theme-block {
    position: relative !important;
    padding-left: 16px !important;
}
.ccrk-theme-block::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 5px !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #D946EF !important;
}
.ccrk-theme-block h3 {
    font-size: .95rem !important;
    font-weight: 700 !important;
    color: #2D0842 !important;
    margin: 0 0 4px !important;
}
.ccrk-theme-block p {
    font-size: .82rem !important;
    color: #7C6990 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* ══════ LIRE LA SUITE ══════ */
.ccrk-readmore {
    background: #F8F5FB !important;
    border-radius: 12px !important;
    padding: 24px !important;
    position: relative !important;
    overflow: hidden !important;
    margin-top: 20px !important;
}
.ccrk-readmore.is-collapsed {
    max-height: 220px !important;
}
.ccrk-readmore.is-expanded {
    max-height: none !important;
}

/* Titres H2 dans le texte long */
.ccrk-readmore-content h2 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.1rem !important;
    color: #2D0842 !important;
    font-weight: 400 !important;
    margin: 20px 0 8px !important;
}
.ccrk-readmore-content h2:first-child {
    margin-top: 0 !important;
}

/* Texte */
.ccrk-readmore-content p {
    font-size: .82rem !important;
    color: #7C6990 !important;
    line-height: 1.8 !important;
    margin-bottom: 10px !important;
    text-align: justify !important;
}
.ccrk-readmore-content strong {
    color: #2D0842 !important;
}
.ccrk-readmore-content a {
    color: #4A0E6B !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(74, 14, 107, .2) !important;
    text-underline-offset: 3px !important;
}
.ccrk-readmore-content a:hover {
    text-decoration-color: #4A0E6B !important;
}
.ccrk-readmore-content ul {
    padding-left: 18px !important;
    margin: 8px 0 !important;
}
.ccrk-readmore-content li {
    font-size: .82rem !important;
    color: #7C6990 !important;
    line-height: 1.7 !important;
    margin-bottom: 4px !important;
}

/* Gradient fade */
.ccrk-readmore-fade {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 80px !important;
    background: linear-gradient(transparent, #F8F5FB) !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    padding-bottom: 12px !important;
    z-index: 2 !important;
}
.ccrk-readmore.is-expanded .ccrk-readmore-fade {
    position: static !important;
    height: auto !important;
    background: none !important;
    padding-top: 12px !important;
    padding-bottom: 0 !important;
}

/* Bouton */
.ccrk-readmore-btn {
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: #4A0E6B !important;
    background: #FFFFFF !important;
    padding: 8px 24px !important;
    border-radius: 50px !important;
    border: 1.5px solid rgba(74, 14, 107, .1) !important;
    box-shadow: 0 1px 4px rgba(74, 14, 107, .06) !important;
    cursor: pointer !important;
    transition: .2s !important;
}
.ccrk-readmore-btn:hover {
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    border-color: #4A0E6B !important;
}

/* ══════ RESPONSIVE ══════ */
@media (max-width: 768px) {
    .ccrk-about-full { padding: 20px 16px !important; }
    .ccrk-theme-grid { grid-template-columns: 1fr !important; gap: 14px !important; }
    .ccrk-readmore { padding: 16px !important; }
    .ccrk-readmore.is-collapsed { max-height: 180px !important; }
}
/* ══════════════════════════════════
   MOBILE HEADER
   ══════════════════════════════════ */
@media (max-width: 991px) {

    /* Fond header */
    #mobile-header,
    #mobile-header-sticky {
        background: #4A0E6B !important;
    }

    /* Barre principale */
    .mobile-main-bar {
        padding: 8px 0 !important;
    }
    .row-mobile-header {
        flex-wrap: nowrap !important;
        align-items: center !important;
    }

    /* ══════ LOGO — petit, à gauche ══════ */
      .col-mobile-logo {
        text-align: left !important;
        order: 0 !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        padding-left: 6px !important;
    }
    .col-mobile-logo .logo {
        max-height: 66px !important;
        width: auto !important;
    }

    /* ══════ HAMBURGER — après le logo ══════ */
      .col-mobile-btn-menu {
        order: -1 !important;
        flex: 0 0 auto !important;
    }

    /* ══════ ICÔNES — à droite ══════ */
    #mobile-btn-search {
        order: 1 !important;
        margin-left: auto !important;
    }
    .col-mobile-btn-account {
        order: 2 !important;
    }
    .col-mobile-btn-cart {
        order: 3 !important;
    }

    /* Style des icônes */
    .row-mobile-header .m-nav-btn {
        color: #FFFFFF !important;
        font-size: 18px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        transition: background .2s !important;
    }
    .row-mobile-header .m-nav-btn:hover,
    .row-mobile-header .m-nav-btn:active {
        background: rgba(255, 255, 255, .1) !important;
    }
    .row-mobile-header .m-nav-btn i {
        color: #FFFFFF !important;
        font-size: 18px !important;
    }

    /* Masquer les labels texte sous les icônes */
    .row-mobile-header .m-nav-btn > span {
        display: none !important;
    }

    /* Badge panier */
    .mobile-bag-icon .cart-products-count-btn {
        position: absolute !important;
        top: -4px !important;
        right: -4px !important;
        background: #D946EF !important;
        color: #FFFFFF !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        width: 18px !important;
        height: 18px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
    }
    .mobile-bag-icon {
        position: relative !important;
    }

    /* ══════ TICKER — plus compact en mobile ══════ */
    .header-banner .ccrk-ticker {
        font-size: .85rem !important;
        padding: 4px 0 !important;
    }

    /* ══════ MENU DRAWER — fond violet ══════ */
    #iqitmegamenu-mobile,
    .js-mobile-menu {
        background: #2D0842 !important;
    }
    .mobile-menu__tab {
        border-bottom: 1px solid rgba(217, 70, 239, .08) !important;
    }
    .mobile-menu__link {
        color: #FFFFFF !important;
        padding: 14px 0 !important;
        font-size: .92rem !important;
        font-weight: 600 !important;
    }
    .mobile-menu__link:hover,
    .mobile-menu__link:active {
        color: #D946EF !important;
    }
    .mobile-menu__header-wrapper {
        background: #2D0842 !important;
        border-bottom: 1px solid rgba(217, 70, 239, .1) !important;
    }
    .mobile-menu__back-btn,
    .mobile-menu__close {
        color: #FFFFFF !important;
    }
    .mobile-menu__footer {
        background: rgba(74, 14, 107, .2) !important;
        border-top: 1px solid rgba(217, 70, 239, .1) !important;
    }
    .mobile-menu__footer,
    .mobile-menu__footer a,
    .mobile-menu__language-selector,
    .mobile-menu__currency-selector {
        color: rgba(255, 255, 255, .6) !important;
    }
    .mobile-menu__user a {
        color: #FFFFFF !important;
    }
}
/* ══════ SECTION HEADERS — MOBILE ══════ */
@media (max-width: 768px) {
    .ccrk-sh {
        margin-left: 12px !important;
        margin-right: 12px !important;
        overflow: hidden !important;
    }
    .ccrk-sh-bar {
        max-width: 100% !important;
        padding: 8px 16px !important;
        border-radius: 10px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .ccrk-sh-bar h2 {
        font-size: 22px !important;
        white-space: nowrap !important;
    }
    .ccrk-sh-sub {
        font-size: 11px !important;
    }
    .ccrk-sh-solo .ccrk-sh-bar {
        padding: 8px 20px !important;
    }
    .ccrk-sh-solo .ccrk-sh-bar h2 {
        font-size: 20px !important;
    }
    .ccrk-sh-mascot {
        margin-bottom: -2px !important;
    }
    .ccrk-sh-mascot img {
        max-height: 60px !important;
        width: auto !important;
    }

    /* Select miniatures */
    .product-miniature .form-control-select,
    .product-miniature .addtocartattrproductlist-attribute-value {
        font-size: .72rem !important;
        padding: 8px 30px 8px 10px !important;
        text-overflow: ellipsis !important;
        overflow: hidden !important;
        white-space: nowrap !important;
    }

    /* Blocs Elementor côte à côte */
    .elementor-element-2basdx2,
    .elementor-element-zc3pacw {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
    .elementor-element-2basdx2 .elementor-column-wrap,
    .elementor-element-zc3pacw .elementor-column-wrap {
        padding: 0 4px !important;
    }

    /* Skeepers miniatures — masquer après la note */
    .product-miniature .skeepers_product__stars .rate-total,
    .product-miniature .skeepers_product__stars .rate-aggregate__max span {
        display: none !important;
    }
}

@media (max-width: 420px) {
    .ccrk-sh-bar h2 {
        font-size: 18px !important;
    }
    .ccrk-sh-sub {
        font-size: 12px !important;
    }
    .ccrk-sh-mascot img {
        max-height: 50px !important;
    }
}
/* ══════════════════════════════════
   HOMEPAGE — BLOG STYLE A (cards blanches)
   Classe sur la section: ccrk-blog-section
   ══════════════════════════════════ */

/* Section fond */
.ccrk-blog-section {
    background: #F8F5FB !important;
    border-radius: 16px !important;
    padding: 24px 16px !important;
    margin: 30px 0 !important;
}

/* Card article */
.ccrk-blog-section .simpleblog__listing__post__wrapper {
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #FFFFFF !important;
    box-shadow: 0 2px 12px rgba(74, 14, 107, .05) !important;
    border: none !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: 0 !important;
}

/* Image = cover hauteur fixe */
.ccrk-blog-section .simpleblog__listing__post__wrapper > a:first-child {
    display: block !important;
    width: 100% !important;
    height: 180px !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper > a:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    border-radius: 14px 14px 0 0 !important;
    transition: transform .3s !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper:hover > a:first-child img {
    transform: scale(1.04) !important;
}

/* Contenu */
.ccrk-blog-section .simpleblog__listing__post__wrapper__content {
    padding: 14px 16px 0 !important;
    background: transparent !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Date en pill */
.ccrk-blog-section .simpleblog__listing__post__wrapper__footer {
    order: -1 !important;
    padding: 14px 16px 0 !important;
    margin: 0 !important;
    border: none !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper__footer__block:first-child {
    display: inline-block !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper__footer__block:first-child time {
    font-size: .68rem !important;
    font-weight: 600 !important;
    color: #7C6990 !important;
    background: #F8F5FB !important;
    padding: 3px 10px !important;
    border-radius: 50px !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper__footer__block:first-child i {
    display: none !important;
}

/* Masquer catégorie "Home" */
.ccrk-blog-section .simpleblog__listing__post__wrapper__footer__block:last-child {
    display: none !important;
}

/* Titre article */
.ccrk-blog-section .post-title {
    font-size: .88rem !important;
    line-height: 1.35 !important;
    margin-bottom: 8px !important;
}
.ccrk-blog-section .post-title a {
    color: #2D0842 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* Extrait */
.ccrk-blog-section .simpleblog__listing__post__wrapper__content > p {
    font-size: .78rem !important;
    color: #7C6990 !important;
    line-height: 1.55 !important;
    margin-bottom: 10px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Read more */
.ccrk-blog-section .simpleblog__listing__post__wrapper__content__readmore {
    margin-top: auto !important;
    padding-bottom: 14px !important;
    display: block !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper__content__readmore,
.ccrk-blog-section .simpleblog__listing__post__wrapper__content__readmore .text-underline {
    font-size: .78rem !important;
    font-weight: 700 !important;
    color: #4A0E6B !important;
    text-decoration: none !important;
}
.ccrk-blog-section .simpleblog__listing__post__wrapper__content__readmore:hover {
    color: #D946EF !important;
}

/* Pagination dots */
.ccrk-blog-section .swiper-pagination-bullet {
    background: rgba(74, 14, 107, .15) !important;
    opacity: 1 !important;
}
.ccrk-blog-section .swiper-pagination-bullet-active {
    background: #4A0E6B !important;
}

/* ══════ MOBILE ══════ */
@media (max-width: 768px) {
    .ccrk-blog-section {
        padding: 16px 10px !important;
        margin: 20px 0 !important;
    }
    .ccrk-blog-section .simpleblog__listing__post__wrapper > a:first-child {
        height: 130px !important;
    }
    .ccrk-blog-section .post-title {
        font-size: .8rem !important;
    }
    .ccrk-blog-section .simpleblog__listing__post__wrapper__content > p {
        -webkit-line-clamp: 1 !important;
        font-size: .72rem !important;
    }
}
/* ══════ NEWSLETTER ══════ */
.ccrk-newsletter .elementor-newsletter-form {
    max-width: 500px !important;
    margin: 0 auto !important;
}
.ccrk-newsletter .input-wrapper {
    flex: 1 !important;
}
.ccrk-newsletter .elementor-newsletter-input {
    border: 2px solid rgba(74, 14, 107, .1) !important;
    border-radius: 50px !important;
    padding: 14px 140px 14px 20px !important;
    font-size: .88rem !important;
    color: #1A1028 !important;
    background: #FFFFFF !important;
    height: 52px !important;
    width: 100% !important;
}
.ccrk-newsletter .elementor-newsletter-input::placeholder {
    color: #A99ABB !important;
}
.ccrk-newsletter .elementor-newsletter-input:focus {
    border-color: #4A0E6B !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(74, 14, 107, .08) !important;
}
.ccrk-newsletter .col-12 {
    position: relative !important;
}
.ccrk-newsletter .elementor-newsletter-btn {
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-radius: 50px !important;
    padding: 10px 24px !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    border: none !important;
    height: 42px !important;
    z-index: 2 !important;
    transition: background .2s !important;
}
.ccrk-newsletter .elementor-newsletter-btn:hover {
    background: #6B2D8B !important;
}

@media (max-width: 768px) {
    .ccrk-newsletter .elementor-newsletter-input {
        padding: 12px 110px 12px 16px !important;
        font-size: .82rem !important;
        height: 48px !important;
    }
    .ccrk-newsletter .elementor-newsletter-btn {
        padding: 8px 16px !important;
        font-size: .75rem !important;
        height: 38px !important;
    }
}
/* ══════════════════════════════════
   MEGA MENU DROPDOWN — Style A
   ══════════════════════════════════ */

/* Fond dropdown */
#iqitmegamenu-horizontal .cbp-hrsub,
.cbp-hrmenu .cbp-hrsub {
    background: #2D0842 !important;
    border: none !important;
    border-radius: 0 0 16px 16px !important;
    box-shadow: 0 20px 60px rgba(26, 5, 48, .4) !important;
    padding-top: 10px !important;
    margin-top: 0 !important;
}
#iqitmegamenu-horizontal .cbp-hrsub-inner,
.cbp-hrmenu .cbp-hrsub-inner {
    background: #2D0842 !important;
    padding: 24px 28px !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .container,
#iqitmegamenu-horizontal .cbp-hrsub .iqitmegamenu-submenu-container,
#iqitmegamenu-horizontal .cbp-hrsub .menu_row,
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column,
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column-inner {
    background: transparent !important;
}

/* ══════ Colonnes = cards semi-transparentes ══════ */
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column > .cbp-menu-column-inner {
    background: rgba(255, 255, 255, .04) !important;
    border-radius: 14px !important;
    padding: 18px 20px !important;
    border: 1px solid rgba(217, 70, 239, .06) !important;
    margin: 0 6px !important;
}

/* ══════ Titres de colonnes ══════ */
#iqitmegamenu-horizontal .cbp-hrsub .ccrk-submenu-title {
    color: #D946EF !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    margin-bottom: 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid rgba(217, 70, 239, .08) !important;
}

/* ══════ Liens ══════ */
#iqitmegamenu-horizontal .cbp-hrsub a,
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column-inner a {
    color: rgba(255, 255, 255, .65) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 9px 10px !important;
    border-radius: 8px !important;
    border-left: 2px solid transparent !important;
    margin-bottom: 2px !important;
    transition: all .2s !important;
}
#iqitmegamenu-horizontal .cbp-hrsub a:hover,
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column-inner a:hover {
    color: #FFFFFF !important;
    background: rgba(217, 70, 239, .08) !important;
    border-left-color: #D946EF !important;
}

/* ══════ Colonne produit (dernière) ══════ */
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column:last-child > .cbp-menu-column-inner {
    background: linear-gradient(145deg, rgba(217, 70, 239, .08), rgba(74, 14, 107, .15)) !important;
    border-color: rgba(217, 70, 239, .1) !important;
    text-align: center !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-miniature-container {
    background: transparent !important;
    padding: 0 !important;
    text-align: center !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product_img_link img {
    border-radius: 12px !important;
    max-height: 120px !important;
    width: auto !important;
    margin: 0 auto 10px !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-title {
    margin: 0 0 4px !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-title a {
    color: #FFFFFF !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    justify-content: center !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-title a:hover {
    color: #D946EF !important;
    background: transparent !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-price {
    color: #D946EF !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-flags {
    display: none !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .product-price-and-shipping {
    justify-content: center !important;
    display: flex !important;
}

/* ══════ Images dans le dropdown ══════ */
#iqitmegamenu-horizontal .cbp-hrsub .cbp-products-big {
    justify-content: center !important;
}

/* Dot neon avant chaque lien */
#iqitmegamenu-horizontal .cbp-hrsub .cbp-menu-column-inner a::before {
    content: '' !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #D946EF !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
}
/* Pas de dot sur le titre produit */
#iqitmegamenu-horizontal .cbp-hrsub .product-title a::before {
    display: none !important;
}

/* ══════════════════════════════════
   MOBILE MENU DRAWER
   ══════════════════════════════════ */
@media (max-width: 991px) {

    /* Fond drawer */
    #iqitmegamenu-mobile,
    .js-mobile-menu {
        background: #2D0842 !important;
    }
	/* ══════ Sous-menu mobile — colonnes ══════ */
    .mobile-menu__submenu .mobile-menu__column {
        padding: 8px 0 !important;
        border-bottom: 1px solid rgba(217, 70, 239, .06) !important;
    }

    /* Titre "Par effet" / "Puissance" */
    .mobile-menu__submenu .ccrk-submenu-title {
        color: #D946EF !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 1.2px !important;
        margin-bottom: 8px !important;
        padding-bottom: 6px !important;
        border-bottom: 1px solid rgba(217, 70, 239, .08) !important;
    }

    /* Fix liens dans les <p> — les forcer en block */
    .mobile-menu__submenu .mobile-menu__column p {
        margin: 0 !important;
        padding: 0 !important;
    }
    .mobile-menu__submenu .mobile-menu__column p a,
    .mobile-menu__submenu .mobile-menu__column > a {
        display: block !important;
        color: rgba(255, 255, 255, .65) !important;
        font-size: .88rem !important;
        font-weight: 500 !important;
        padding: 10px 12px !important;
        border-radius: 8px !important;
        border-left: 2px solid transparent !important;
        text-decoration: none !important;
        transition: all .2s !important;
    }
    .mobile-menu__submenu .mobile-menu__column p a:hover,
    .mobile-menu__submenu .mobile-menu__column > a:hover {
        color: #FFFFFF !important;
        background: rgba(217, 70, 239, .06) !important;
        border-left-color: #D946EF !important;
    }

    /* Dot neon mobile aussi */
    .mobile-menu__submenu .mobile-menu__column p a::before,
    .mobile-menu__submenu .mobile-menu__column > a::before {
        content: '' !important;
        width: 5px !important;
        height: 5px !important;
        border-radius: 50% !important;
        background: #D946EF !important;
        display: inline-block !important;
        margin-right: 8px !important;
        vertical-align: middle !important;
    }

    /* Produit mobile */
    .mobile-menu__submenu .mobile-menu__products-row {
        padding: 12px 0 !important;
    }
    .mobile-menu__submenu .product-miniature-container {
        background: rgba(217, 70, 239, .04) !important;
        border-radius: 12px !important;
        padding: 10px !important;
        border: 1px solid rgba(217, 70, 239, .06) !important;
    }
    .mobile-menu__submenu .product-miniature-container a {
        color: #FFFFFF !important;
        font-size: .82rem !important;
        font-weight: 600 !important;
        border: none !important;
        padding: 0 !important;
    }
    .mobile-menu__submenu .product-miniature-container a::before {
        display: none !important;
    }
    .mobile-menu__submenu .product-miniature-container img {
        border-radius: 8px !important;
    }
    .mobile-menu__submenu .product-price {
        color: #D946EF !important;
        font-weight: 800 !important;
    }

    /* Header drawer */
    .mobile-menu__header-wrapper {
        background: #2D0842 !important;
        border-bottom: 1px solid rgba(217, 70, 239, .1) !important;
    }
    .mobile-menu__back-btn,
    .mobile-menu__close,
    .mobile-menu__title {
        color: #FFFFFF !important;
    }

    /* Liens principaux */
    .mobile-menu__tab {
        border-bottom: 1px solid rgba(217, 70, 239, .06) !important;
    }
    .mobile-menu__link {
        color: #FFFFFF !important;
        padding: 14px 0 !important;
        font-size: .92rem !important;
        font-weight: 600 !important;
    }
    .mobile-menu__link:hover,
    .mobile-menu__link:active {
        color: #D946EF !important;
    }

    /* Flèche sous-menu */
    .mobile-menu__tab .fa-angle-right,
    .mobile-menu__tab [class*="arrow"],
    .mobile-menu__tab::after {
        color: #D946EF !important;
    }

    /* Sous-menu ouvert — bord neon */
    .mobile-menu__tab.is-active .mobile-menu__link,
    .mobile-menu__tab.mm-panel--opened .mobile-menu__link {
        color: #D946EF !important;
        border-left: 3px solid #D946EF !important;
        padding-left: 12px !important;
    }

    /* Sous-liens */
    .mobile-menu__submenu a,
    .mobile-menu__sub-link,
    .mm-panel__scroller .mobile-menu__tab .mobile-menu__link {
        color: rgba(255, 255, 255, .65) !important;
        font-size: 1.85rem !important;
        font-weight: 500 !important;
        padding: 12px 0 12px 16px !important;
        border-left: 2px solid transparent !important;
        transition: all .2s !important;
    }
    .mobile-menu__submenu a:hover,
    .mobile-menu__sub-link:hover {
        color: #FFFFFF !important;
        border-left-color: #D946EF !important;
    }

    /* Footer drawer */
    .mobile-menu__footer,
    .js-top-menu-bottom {
        background: rgba(74, 14, 107, .15) !important;
        border-top: 1px solid rgba(217, 70, 239, .08) !important;
    }
    .mobile-menu__footer,
    .mobile-menu__footer a,
    .mobile-menu__language-selector,
    .mobile-menu__currency-selector {
        color: rgba(255, 255, 255, .5) !important;
    }
    .mobile-menu__user a {
        color: #FFFFFF !important;
    }
}
/* Police Sink sur les titres menu */
#iqitmegamenu-horizontal .cbp-hrmenu .cbp-tab-title,
#iqitmegamenu-horizontal .cbp-hrsub .ccrk-submenu-title,
.mobile-menu__link,
.mobile-menu__submenu .ccrk-submenu-title {
    font-family: 'Sink', 'Lilita One', cursive !important;
}
#iqitmegamenu-horizontal .cbp-hrsub .cbp-products-big a::before,
#iqitmegamenu-horizontal .cbp-hrsub .product-miniature-container a::before,
#iqitmegamenu-horizontal .cbp-hrsub .product-image-container a::before {
    display: none !important;
    content: none !important;
}
/* ══════════════════════════════════════════════════════
   COCORIKUSH — COMPTE / LOGIN / CHECKOUT / CMS
   Basé sur structure Pop's America — Couleurs Coco
   Scopé pour ne PAS affecter le footer
   ══════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════
   1. PAGE MON COMPTE — DASHBOARD
   ══════════════════════════════════════════════════════ */

.my-account-page-content-wrapper {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}
.my-account-page-content-wrapper .row {
    display: flex;
    gap: 24px;
}

/* Sidebar liens */
.my-account-side-links {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 0 !important;
    border: none !important;
}
.my-account-side-links a {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    text-decoration: none;
    border: none !important;
}
.my-account-side-links .link-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid rgba(74, 14, 107, .06);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .04);
    font-size: .9rem;
    font-weight: 500;
    color: #2D0842;
    transition: all .25s;
}
.my-account-side-links .link-item:hover {
    background: #F8F5FB;
    border-color: #4A0E6B;
    transform: translateX(3px);
}
.my-account-side-links .link-item i {
    width: 20px;
    font-size: 1rem;
    color: #4A0E6B;
    text-align: center;
}
.my-account-side-links a[href*="mylogout"] .link-item {
    color: #7C6990;
}
.my-account-side-links a[href*="mylogout"] .link-item i {
    color: #EF4444;
}
.my-account-side-links a[href*="mylogout"] .link-item:hover {
    background: #FFF5F5;
    border-color: #EF4444;
}

/* Zone contenu principal */
.my-account-page-content {
    background: #fff;
    border-radius: 14px;
    padding: 28px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    border: 1px solid rgba(74, 14, 107, .06);
    flex: 1;
    font-size: 1rem;
    color: #7C6990;
    line-height: 1.6;
}
.my-account-page-content a {
    color: #4A0E6B;
    text-decoration: none;
    font-weight: 500;
}
.my-account-page-content a:hover {
    color: #D946EF;
}

/* Tableaux dans le compte */
.my-account-page-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}
.my-account-page-content table thead th {
    background: #F8F5FB;
    padding: 12px 15px;
    text-align: left;
    font-weight: 600;
    font-size: .9rem;
    color: #2D0842;
    border-bottom: 2px solid rgba(74, 14, 107, .08);
}
.my-account-page-content table tbody td {
    padding: 14px 15px;
    border-bottom: 1px solid rgba(74, 14, 107, .04);
    font-size: .9rem;
    color: #1A1028;
}
.my-account-page-content table tbody tr:hover {
    background: rgba(74, 14, 107, .02);
}

/* Boutons dans le compte */
.my-account-page-content .btn-primary {
    background: #4A0E6B !important;
    border: none !important;
    border-radius: 50px !important;
    font-weight: 700;
    color: #fff !important;
    padding: 10px 24px;
    transition: all .25s;
}
.my-account-page-content .btn-primary:hover {
    background: #6B2D8B !important;
    transform: translateY(-1px);
}

/* Adresses dans le compte */
.my-account-page-content .address {
    background: #F8F5FB;
    border: 1px solid rgba(74, 14, 107, .06);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 15px;
    transition: all .25s;
}
.my-account-page-content .address:hover {
    border-color: #4A0E6B;
    box-shadow: 0 4px 15px rgba(74, 14, 107, .08);
}

/* Formulaires dans le compte */
.my-account-page-content .form-control {
    height: 46px;
    border: 1.5px solid rgba(74, 14, 107, .1);
    border-radius: 10px;
    
    font-size: 1rem;
    transition: all .25s;
    background: #fff;
}
.my-account-page-content .form-control:focus {
    border-color: #4A0E6B;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(74, 14, 107, .08);
    outline: none;
}
.my-account-page-content label {
    font-size: .9rem;
    font-weight: 600;
    color: #2D0842;
    margin-bottom: 6px;
}

/* Alertes dans le compte */
.my-account-page-content .alert-info {
    background: rgba(74, 14, 107, .04);
    color: #4A0E6B;
    border-left: 4px solid #4A0E6B;
    border-radius: 10px;
    padding: 15px 20px;
    border-top: none;
    border-right: none;
    border-bottom: none;
}

/* ══════════════════════════════════════════════════════
   2. PAGES AUTHENTIFICATION — Login / Register / Password
   ══════════════════════════════════════════════════════ */

.page-authentication #content,
.page-registration #content,
.page-customer-account #content {
    border: none !important;
}

body.page-authentication #content.page-content,
body.page-registration #content.page-content,
body.page-password #content.page-content {
    background: #fff !important;
    border-radius: 14px !important;
    padding: 36px 30px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06) !important;
    border: 1px solid rgba(74, 14, 107, .06) !important;
    max-width: 680px !important;
    margin: 30px auto 40px !important;
}

/* Lien "Déjà un compte ?" */
.register-form > p {
    text-align: center;
    padding: 14px 20px;
    background: #F8F5FB;
    border-radius: 10px;
    margin-bottom: 24px;
    font-size: .95rem;
    color: #2D0842;
}
.register-form > p i {
    color: #4A0E6B;
    margin-right: 5px;
}
.register-form > p a {
    color: #4A0E6B;
    font-weight: 600;
    text-decoration: none;
}
.register-form > p a:hover {
    color: #D946EF;
}

/* Layout empilé */
.login-form .form-group.row,
.register-form .form-group.row,
#customer-form .form-group.row {
    display: flex;
    flex-direction: column;
    margin-bottom: 18px;
}
.login-form .form-group .col-md-2,
.login-form .form-group .col-md-8,
.register-form .form-group .col-md-2,
.register-form .form-group .col-md-8,
#customer-form .form-group .col-md-2,
#customer-form .form-group .col-md-8 {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
}
.login-form .form-group .col-md-2.form-control-comment,
.register-form .form-group .col-md-2.form-control-comment,
#customer-form .form-group .col-md-2.form-control-comment {
    display: none;
}

/* Labels */
.login-form .col-form-label,
.register-form .col-form-label,
#customer-form .col-form-label {
    font-size: .9rem;
    font-weight: 600;
    color: #2D0842;
    margin-bottom: 6px;
    padding: 0;
    text-align: left;
}

/* Inputs */
.login-form .form-control,
.register-form .form-control,
#customer-form .form-control {
    height: 46px;
    border: 1.5px solid rgba(74, 14, 107, .1);
    border-radius: 10px;
    padding: 12px 16px;
    font-size: 1rem;
    transition: all .25s;
    background: #fff;
}
.login-form .form-control:focus,
.register-form .form-control:focus,
#customer-form .form-control:focus {
    border-color: #4A0E6B;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(74, 14, 107, .08);
    outline: none;
}

/* Hints */
.js-input-column .form-control-comment {
    font-size: .8rem;
    color: #A99ABB;
    margin-top: 4px;
    font-style: italic;
}

/* Input group password */
.login-form .input-group,
.register-form .input-group,
#customer-form .input-group {
    position: relative;
}
.login-form .input-group .form-control,
.register-form .input-group .form-control,
#customer-form .input-group .form-control {
    border-radius: 10px;
    padding-right: 50px;
}
.login-form .input-group-append,
.register-form .input-group-append,
#customer-form .input-group-append {
    position: absolute;
    right: 0;
    top: 0;
    height: 46px;
    z-index: 5;
}
.login-form .input-group-append .btn,
.register-form .input-group-append .btn,
#customer-form .input-group-append .btn {
    height: 100%;
    border: none;
    background: transparent !important;
    padding: 0 15px;
    color: #A99ABB;
    border-radius: 0 10px 10px 0;
    box-shadow: none !important;
}
.login-form .input-group-append .btn:hover,
.register-form .input-group-append .btn:hover,
#customer-form .input-group-append .btn:hover {
    color: #4A0E6B;
    background: transparent !important;
}

/* Radio M. / Mme */
.form-control-valign {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-top: 4px;
}
.custom-radio span {
    width: 20px;
    height: 20px;
    border: 1.5px solid rgba(74, 14, 107, .15);
    border-radius: 50%;
    transition: all .2s;
}
.custom-radio input[type="radio"]:checked + span {
    border-color: #4A0E6B;
}
.custom-radio input[type="radio"]:checked + span::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background: #4A0E6B;
    border-radius: 50%;
}

/* Checkboxes */
.custom-checkbox > span {
    width: 20px;
    height: 20px;
    min-width: 20px;
    border: 1.5px solid rgba(74, 14, 107, .15);
    border-radius: 5px;
    transition: all .2s;
}
.custom-checkbox input[type="checkbox"]:checked + span {
    background: #4A0E6B;
    border-color: #4A0E6B;
}
.custom-checkbox label {
    font-size: .88rem;
    color: #7C6990;
    line-height: 1.5;
}
.custom-checkbox label em {
    display: block;
    font-size: .78rem;
    color: #A99ABB;
    margin-top: 2px;
}

/* Password strength */
.password-strength-feedback .progress {
    height: 6px;
    border-radius: 3px;
    background: rgba(74, 14, 107, .06);
}
.password-strength-feedback .progress-bar {
    border-radius: 3px;
}
.password-requirements {
    font-size: .8rem;
    color: #A99ABB;
}

/* Mot de passe oublié */
.forgot-password {
    text-align: right;
    margin-top: -8px;
    margin-bottom: 10px;
}
.forgot-password a {
    font-size: .85rem;
    color: #4A0E6B;
    text-decoration: none;
    font-weight: 600;
}
.forgot-password a:hover {
    color: #D946EF;
}

/* Boutons submit */
.login-form .form-footer,
.register-form .form-footer,
#customer-form .form-footer {
    margin-top: 28px;
    padding-top: 0;
}
.login-form .btn-primary,
.login-form .form-control-submit,
.register-form .btn-primary,
.register-form .form-control-submit,
#customer-form .btn-primary,
#customer-form .form-control-submit {
    width: 100%;
    height: 48px;
    background: #4A0E6B !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 1rem;
    font-weight: 700;
    color: #fff !important;
    cursor: pointer;
    transition: all .25s;
    text-transform: none;
    letter-spacing: 0;
}
.login-form .btn-primary:hover,
.register-form .btn-primary:hover,
#customer-form .btn-primary:hover,
.login-form .form-control-submit:hover,
.register-form .form-control-submit:hover,
#customer-form .form-control-submit:hover {
    background: #6B2D8B !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(74, 14, 107, .2);
}

/* Lien "Pas de compte ?" */
.no-account {
    text-align: center;
    margin-top: 20px;
}
.no-account a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: .95rem;
    color: #2D0842;
    text-decoration: none;
    font-weight: 600;
    padding: 12px 24px;
    border: 2px solid rgba(74, 14, 107, .15);
    border-radius: 50px;
    transition: all .25s;
}
.no-account a:hover {
    background: #4A0E6B;
    border-color: #4A0E6B;
    color: #fff !important;
}

/* Alertes login/register */
.login-form .alert,
.register-form .alert,
#customer-form .alert {
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 20px;
    border: none;
}
.login-form .alert-danger,
.register-form .alert-danger,
#customer-form .alert-danger {
    background: #FFF5F5 !important;
    color: #B91C1C !important;
    border-left: 4px solid #EF4444 !important;
}
.login-form .alert-success,
.register-form .alert-success,
#customer-form .alert-success {
    background: #F0FFF4 !important;
    color: #15803D !important;
    border-left: 4px solid #22c55e !important;
}

/* ══════════════════════════════════════════════════════
   3. CHECKOUT — Étapes, Livraison, Paiement
   ══════════════════════════════════════════════════════ */

.checkout-step {
    background: #fff;
    border-radius: 14px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    border: 1px solid rgba(74, 14, 107, .06);
    overflow: hidden;
}
.checkout-step.-current::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #4A0E6B, #D946EF);
}
.checkout-step.-current {
    position: relative;
}
.checkout-step .step-title {
    padding: 18px 24px;
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #2D0842;
    display: flex;
    align-items: center;
    gap: 12px;
}
.checkout-step.-unreachable .step-title {
    color: #A99ABB;
}
.checkout-step .step-number {
    width: 30px;
    height: 30px;
    min-width: 30px;
    background: rgba(74, 14, 107, .06);
    color: #7C6990;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .85rem;
    font-weight: 700;
}
.checkout-step.-current .step-number {
    background: #4A0E6B;
    color: #fff;
}
.checkout-step.-complete .step-number {
    background: #22c55e;
    color: #fff;
}
.checkout-step .step-edit {
    margin-left: auto;
    font-size: .85rem;
    font-weight: 600;
    color: #4A0E6B;
}
.checkout-step .content {
    padding: 0 24px 24px;
}

/* Adresses checkout */
.address-item {
    background: #F8F5FB;
    border: 1.5px solid rgba(74, 14, 107, .06);
    border-radius: 12px;
    padding: 16px;
    transition: all .25s;
    margin-bottom: 10px;
}
.address-item:hover {
    border-color: rgba(74, 14, 107, .15);
}
.address-item.selected {
    border-color: #4A0E6B;
    background: #fff;
}

/* Livraison */
.delivery-option {
    display: flex;
    align-items: center;
 
    padding: 14px 16px;
    background: #F8F5FB;
    border: 1.5px solid rgba(74, 14, 107, .06);
    border-radius: 10px;
    margin-bottom: 8px;
    transition: all .25s;
}
.delivery-option:hover {
    border-color: rgba(74, 14, 107, .15);
}
.delivery-option:has(input:checked) {
    border-color: #4A0E6B;
    background: #fff;
}

/* Paiement */
[id^="payment-option-"][id$="-container"] {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 16px;
    background: #F8F5FB;
    border: 1.5px solid rgba(74, 14, 107, .06);
    border-radius: 10px;
    margin-bottom: 8px;
    transition: all .25s;
}
[id^="payment-option-"][id$="-container"]:has(input:checked) {
    border-color: #4A0E6B;
    background: #fff;
}

/* Conditions */
#conditions-to-approve label {
    color: #7C6990;
    font-size: .82rem;
}
#conditions-to-approve a {
    color: #4A0E6B;
    font-weight: 600;
}

/* Boutons checkout */
.checkout-step .btn-primary,
.checkout-step .continue {
    width: 100%;
    height: 48px;
    background: #4A0E6B !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 1rem;
    font-weight: 700;
    color: #fff !important;
    transition: all .25s;
    margin-top: 16px;
    text-transform: none;
}
.checkout-step .btn-primary:hover,
.checkout-step .continue:hover {
    background: #6B2D8B !important;
    transform: translateY(-1px);
}

/* Formulaires checkout */
.checkout-step .form-control {
    height: 46px;
    border: 1.5px solid rgba(74, 14, 107, .1);
    border-radius: 10px;
    
    font-size: 1rem;
    background: #fff;
    transition: all .25s;
}
.checkout-step .form-control:focus {
    border-color: #4A0E6B;
    box-shadow: 0 0 0 3px rgba(74, 14, 107, .08);
    outline: none;
}
.checkout-step label {
    font-size: .9rem;
    font-weight: 600;
    color: #2D0842;
    margin-bottom: 6px;
}
.checkout-step select.form-control {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234A0E6B' stroke-width='1.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
}

/* Résumé panier sidebar */
.cart-summary {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    border: 1px solid rgba(74, 14, 107, .06);
    overflow: hidden;
}

/* ══════════════════════════════════════════════════════
   4. PAGE PANIER
   ══════════════════════════════════════════════════════ */

.cart-grid-body .cart-container,
#cart .cart-grid-body {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    border: 1px solid rgba(74, 14, 107, .06);
    overflow: hidden;
}
#cart .cart-item {
    padding: 18px 20px;
    border-bottom: 1px solid rgba(74, 14, 107, .04);
}
#cart .cart-item:last-child {
    border-bottom: none;
}
#cart .product-line-info a,
#cart .product-line-info .label {
    font-size: 1rem;
    font-weight: 600;
    color: #2D0842;
    text-decoration: none;
}
#cart .product-line-info a:hover {
    color: #4A0E6B;
}
#cart .product-line-grid-left img {
    border-radius: 10px;
}

/* Touchspin panier */
#cart .bootstrap-touchspin {
    border: 1.5px solid rgba(74, 14, 107, .1);
    border-radius: 10px;
    overflow: hidden;
}
#cart .bootstrap-touchspin input {
    border: none;
    text-align: center;
    font-weight: 700;
    color: #2D0842;
}
#cart .bootstrap-touchspin .btn-touchspin {
    background: #F8F5FB;
    color: #4A0E6B;
    border: none;
}
#cart .bootstrap-touchspin .btn-touchspin:hover {
    background: #4A0E6B;
    color: #fff;
}

/* Sidebar panier */
#cart .cart-grid-right .card,
#cart .cart-summary {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    border: 1px solid rgba(74, 14, 107, .06);
}
#cart .cart-total .label {
    font-weight: 700;
    color: #2D0842;
}
#cart .cart-total .value {
    font-weight: 800;
    color: #2D0842;
    font-size: 1.1rem;
}

/* Code promo */
#cart .block-promo .input-group {
    display: flex;
    flex-wrap: nowrap;
    border: 1.5px solid rgba(74, 14, 107, .1);
    border-radius: 50px;
    overflow: hidden;
    background: #fff;
}
#cart .block-promo .input-group .form-control {
    border: none !important;
    border-radius: 0 !important;
    padding: 10px 14px !important;
    box-shadow: none !important;
    flex: 1 !important;
    height: auto !important;
}
#cart .block-promo .input-group .voucher-icon {
    background: transparent;
    color: #D946EF;
    border: none;
    padding: 10px 12px;
}
#cart .block-promo .input-group .btn-secondary,
#cart .block-promo .input-group button[type="submit"] {
    border-radius: 0 50px 50px 0 !important;
    background: #4A0E6B !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 20px !important;
    font-weight: 700 !important;
}

/* Bouton Commander panier */
#cart .checkout a.btn,
#cart a[href*="commande"] {
    background: #4A0E6B !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 14px 24px !important;
    font-weight: 700 !important;
    font-size: .95rem !important;
    text-decoration: none !important;
    display: block !important;
    text-align: center !important;
    width: 100% !important;
}
#cart .checkout a.btn:hover,
#cart a[href*="commande"]:hover {
    background: #6B2D8B !important;
}

/* Slider produits panier */
#cart .swiper-slide .btn.add-to-cart,
#cart .product-miniature .btn.add-to-cart {
    font-size: .7rem !important;
    padding: 6px 8px !important;
    border-radius: 50px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}
#cart .swiper-slide .btn.add-to-cart .textFitted {
    font-size: 11px !important;
}

/* ══════════════════════════════════════════════════════
   5. DROPDOWN PANIER (SIDEBAR POPUP)
   ══════════════════════════════════════════════════════ */

#blockcart-content .cart-buttons .btn-primary,
#blockcart-content .cart-buttons a.btn-primary {
    background: #4A0E6B !important;
    border: none !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    color: #fff !important;
    padding: 12px 20px !important;
}
#blockcart-content .cart-buttons .btn-primary:hover {
    background: #6B2D8B !important;
}
#blockcart-content .cart-buttons .btn-secondary,
#blockcart-content .cart-buttons a.btn-secondary {
    background: transparent !important;
    border: 2px solid rgba(74, 14, 107, .15) !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
    color: #4A0E6B !important;
    padding: 10px 20px !important;
}
#blockcart-content .cart-buttons .btn-secondary:hover {
    background: rgba(74, 14, 107, .04) !important;
    border-color: #4A0E6B !important;
}

/* ══════════════════════════════════════════════════════
   6. PAGES CMS
   ══════════════════════════════════════════════════════ */

#content.page-cms .rte-content {
    background: #fff !important;
    border-radius: 14px !important;
    padding: 28px 30px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06) !important;
    margin-bottom: 40px !important;
}
#content.page-cms .rte-content h2 {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    color: #2D0842 !important;
    margin-top: 24px !important;
    margin-bottom: 14px !important;
}
#content.page-cms .rte-content h3 {
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: #4A0E6B !important;
    margin-top: 20px !important;
    margin-bottom: 10px !important;
}
#content.page-cms .rte-content p {
    font-size: .92rem !important;
    line-height: 1.7 !important;
    color: #1A1028 !important;
    margin-bottom: 12px !important;
}
#content.page-cms .rte-content a {
    color: #4A0E6B !important;
    font-weight: 600 !important;
}
#content.page-cms .rte-content a:hover {
    color: #D946EF !important;
}

/* ══════════════════════════════════════════════════════
   7. TITRES & FOND PAGES
   ══════════════════════════════════════════════════════ */

body.page-my-account .page-header .page-title,
body.page-customer-account .page-header .page-title,
body.page-authentication .page-header .page-title,
body.page-registration .page-header .page-title,
body.page-cart .page-header .page-title,
body.page-order .page-header .page-title,
#cms .page-header .page-title {
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.6rem !important;
    font-weight: 400 !important;
    color: #2D0842 !important;
    text-align: center !important;
}

/* ══════════════════════════════════════════════════════
   8. ESPACEMENT BAS
   ══════════════════════════════════════════════════════ */

#main > section#content,
#main > .page-content,
.my-account-page-content-wrapper {
    margin-bottom: 40px !important;
}

/* ══════════════════════════════════════════════════════
   9. BREADCRUMB
   ══════════════════════════════════════════════════════ */

.breadcrumb {
    background: transparent !important;
    padding: 12px 0 !important;
    font-size: .78rem !important;
}
.breadcrumb li a {
    color: #7C6990 !important;
}
.breadcrumb li:last-child {
    color: #2D0842 !important;
    font-weight: 600 !important;
}

/* ══════════════════════════════════════════════════════
   10. RESPONSIVE
   ══════════════════════════════════════════════════════ */

@media (max-width: 991px) {
    .my-account-page-content-wrapper .row {
        flex-direction: column;
    }
    .my-account-side-links {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
    }
    .my-account-side-links a {
        width: calc(50% - 4px);
    }
    .my-account-side-links .link-item {
        padding: 10px 14px;
        font-size: .85rem;
    }
    .my-account-page-content {
        padding: 20px !important;
    }
}

@media (max-width: 768px) {
    body.page-authentication #content.page-content,
    body.page-registration #content.page-content,
    body.page-password #content.page-content {
        padding: 24px 18px !important;
        margin: 20px 10px 30px !important;
        max-width: none !important;
    }
    .checkout-step .step-title {
        padding: 14px 18px;
        font-size: .95rem;
    }
    .checkout-step .content {
        padding: 0 18px 18px;
    }
    #cart .cart-item {
        padding: 14px;
    }
    #content.page-cms .rte-content {
        padding: 20px 18px !important;
    }
}

@media (max-width: 576px) {
    .my-account-side-links a {
        width: 100%;
    }
    .my-account-side-links .link-item:hover {
        transform: none;
    }
}
/* ══════ Modal ajout panier ══════ */
.modal-body .cart-content-btn .btn-primary {
    background: #4A0E6B !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    padding: 12px 24px !important;
}
.modal-body .cart-content-btn .btn-primary:hover {
    background: #6B2D8B !important;
}
.modal-body .cart-content-btn .btn-secondary {
    background: transparent !important;
    color: #4A0E6B !important;
    border: 2px solid rgba(74, 14, 107, .15) !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
}
.modal-body .cart-content-btn .btn-secondary:hover {
    background: rgba(74, 14, 107, .04) !important;
    border-color: #4A0E6B !important;
}
.modal-body .cart-products-count {
    display: none !important;
}
.checkout-step .step-number {
    line-height: 30px !important;
    text-align: center !important;
    padding: 0 !important;
    padding-top: 1px !important;
}
/* Fix header — icônes toujours à droite */
#desktop-header .col-header-right {
    flex-shrink: 0 !important;
    min-width: auto !important;
    white-space: nowrap !important;
}
#desktop-header .col-header-menu {
    overflow: hidden !important;
    min-width: 0 !important;
}
/* Réduire la taille du menu sur petits écrans desktop */
@media (min-width: 992px) and (max-width: 1280px) {
    #cbp-hrmenu .cbp-hrmenu-tab > a .cbp-tab-title {
        font-size: 11px !important;
        padding: 0 6px !important;
    }
    #iqitmegamenu-horizontal .cbp-hrmenu > ul {
        gap: 0 !important;
    }
}
/* Griser le touchspin quand produit en rupture */
#product .add-to-cart[disabled] ~ .col-add-qty,
#product .add-to-cart:disabled ~ .col-add-qty,
#product .col-add-btn:has(.add-to-cart[disabled]) ~ .col-add-qty,
.product-add-to-cart:has(.add-to-cart[disabled]) .bootstrap-touchspin {
    opacity: .4 !important;
    pointer-events: none !important;
}
/* Fix dashboard mobile */
@media (max-width: 991px) {
    .my-account-side-links {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        flex-direction: unset !important;
    }
    .my-account-side-links a {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        padding: 0 !important;
    }
    .my-account-side-links a.col-lg-4,
    .my-account-side-links a.col-md-6,
    .my-account-side-links a.col-sm-6,
    .my-account-side-links a.col-xs-12 {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
    }
    .my-account-side-links .link-item {
        height: 100% !important;
        padding: 14px 16px !important;
        font-size: .85rem !important;
    }
}
@media (max-width: 480px) {
    .my-account-side-links {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 991px) {
    #product .product-actions,
    #product .product-actions form#add-to-cart-or-refresh,
    #product .product-information,
    #product .js-product-actions {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }
}
.ccrk-sh-bar h2 a {
    color: inherit !important;
    text-decoration: none !important;
    transition: opacity .2s !important;
}
.ccrk-sh-bar h2 a:hover {
    opacity: .85 !important;
}
/* Contact form - bouton envoi */
.wpcf7-form-control.wpcf7-submit {
    width: 100% !important;
    min-height: 50px !important;
    padding: 14px 28px !important;
    border: none !important;
    background: #4A0E6B !important;
    color: #FFFFFF !important;
    border-radius: 14px !important;
    font-family: 'Sink', 'Lilita One', cursive !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    letter-spacing: .3px !important;
    cursor: pointer !important;
    transition: background .25s, box-shadow .25s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    white-space: nowrap !important;
}
.wpcf7-form-control.wpcf7-submit:hover {
    background: #6B2D8B !important;
    box-shadow: 0 8px 28px rgba(74, 14, 107, .25) !important;
}
#product .product-images-large .swiper-slide,
#product #product-images-large .swiper-slide,
#product .product-lmage-large {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}
#product .product-images-large .swiper-slide picture,
#product #product-images-large .swiper-slide picture {
    display: inline-block !important;
    margin: 0 auto !important;
}
#product .product-images-large .swiper-slide img,
#product #product-images-large .swiper-slide img {
    margin: 0 auto !important;
    display: block !important;
}
/* Code promo panier */
#cart .block-promo form .input-group,
.block-promo form .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    border: 1.5px solid rgba(74, 14, 107, .1) !important;
    border-radius: 50px !important;
    overflow: hidden !important;
    background: #fff !important;
    padding: 4px !important;
}
#cart .block-promo .voucher-icon,
.block-promo .voucher-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #D946EF !important;
    border: none !important;
    padding: 0 14px !important;
    font-size: 1rem !important;
}
#cart .block-promo .form-control,
.block-promo .form-control {
    flex: 1 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 10px 8px !important;
    font-size: .9rem !important;
    color: #2D0842 !important;
    box-shadow: none !important;
    height: auto !important;
    min-width: 0 !important;
}
#cart .block-promo .form-control:focus,
.block-promo .form-control:focus {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}
#cart .block-promo .form-control::placeholder,
.block-promo .form-control::placeholder {
    color: #A99ABB !important;
}
#cart .block-promo .input-group-append,
.block-promo .input-group-append {
    display: flex !important;
    align-items: stretch !important;
}
#cart .block-promo .input-group-append .btn,
.block-promo .input-group-append .btn-secondary {
    background: #4A0E6B !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 10px 24px !important;
    font-weight: 700 !important;
    font-size: .85rem !important;
    white-space: nowrap !important;
    transition: background .25s !important;
    height: auto !important;
}
#cart .block-promo .input-group-append .btn:hover,
.block-promo .input-group-append .btn-secondary:hover {
    background: #6B2D8B !important;
}
.ccrk-img-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  max-width: 1200px;
  gap: 12px;
  margin-bottom: 16px;
}
.ccrk-img-grid p {
  margin: 0;
  padding: 0;
}
.ccrk-img-grid a,
.ccrk-img-grid p a {
  display: block;
}
.ccrk-img-grid img,
.ccrk-img-grid p img {
  width: 100%;
  height: auto;
  display: block;
}
@media (max-width: 767px) {
  .ccrk-img-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}