/*
Theme Name: Graine d'Artisans
Theme URI: https://grainedartisans.fr
Author: Graine d'Artisans
Description: Thème WordPress premium pour portail d'artisans locaux. Compatible WooCommerce et Dokan.
Version: 12.2.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: graine-artisans
Tags: custom-logo, woocommerce, dokan, ecommerce, artisans
*/

:root {
    --ga-brown:        #6B4F2C;
    --ga-brown-dark:   #3D2B10;
    --ga-brown-mid:    #7A5C35;
    --ga-red:          #C0392B;
    --ga-red-dark:     #962d22;
    --ga-cream:        #F2EDE3;
    --ga-cream-dark:   #E8E0D0;
    --ga-beige:        #FAF8F4;
    --ga-white:        #FFFFFF;
    --ga-text:         #2C1F0E;
    --ga-muted:        #7A6550;
    --ga-border:       #D4C4A8;
    --ga-shadow:       rgba(61,43,16,0.10);
    --ga-shadow-lg:    rgba(61,43,16,0.18);
    --ga-radius:       14px;
    --ga-radius-sm:    8px;
    --ga-radius-lg:    20px;
    --ga-radius-pill:  100px;
    --ga-transition:   0.22s ease;
    --ga-container:    1240px;
    --ga-font-head:    'Playfair Display', Georgia, serif;
    --ga-font-body:    'Poppins', system-ui, sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ga-font-body);font-size:16px;line-height:1.75;color:var(--ga-text);background:var(--ga-beige);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--ga-brown);text-decoration:none;transition:color var(--ga-transition)}
a:hover{color:var(--ga-brown-dark)}
ul{list-style:none}

h1,h2,h3,h4,h5,h6{font-family:var(--ga-font-head);color:var(--ga-brown-dark);line-height:1.2;font-weight:700;margin-bottom:0.75rem}
h1{font-size:clamp(1.9rem,4vw,3rem)}
h2{font-size:clamp(1.5rem,3vw,2.2rem)}
h3{font-size:clamp(1.1rem,2vw,1.5rem)}
h4{font-size:1.05rem}
p{margin-bottom:1rem}
.muted{color:var(--ga-muted);font-size:0.9rem}
.eyebrow{display:inline-block;font-size:0.72rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--ga-brown);background:rgba(107,79,44,0.1);padding:0.3rem 0.9rem;border-radius:var(--ga-radius-pill);margin-bottom:0.75rem}

.container{max-width:var(--ga-container);margin:0 auto;padding:0 1.5rem}
.content-wrap{max-width:var(--ga-container);margin:0 auto;padding:3rem 1.5rem}
.section{padding:5rem 0}
.section-sm{padding:3rem 0}
.section-white{background:var(--ga-white)}
.section-cream{background:var(--ga-cream)}
.section-dark{background:var(--ga-brown-dark)}
.section-dark h1,.section-dark h2,.section-dark h3,.section-dark p{color:var(--ga-cream)}
.panel{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius-lg);padding:1.75rem;box-shadow:0 2px 16px var(--ga-shadow)}

/* =========================================================
   BUTTONS — ROUGE
   ========================================================= */
.button,
button.button,
input[type="submit"],
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display:inline-flex !important;align-items:center;justify-content:center;gap:0.4rem;
    padding:0.7rem 1.6rem !important;
    background:var(--ga-red) !important;
    color:var(--ga-white) !important;
    border:2px solid var(--ga-red) !important;
    border-radius:var(--ga-radius-pill) !important;
    font-family:var(--ga-font-body) !important;font-size:0.9rem !important;font-weight:600 !important;
    cursor:pointer;transition:all var(--ga-transition) !important;
    text-decoration:none !important;line-height:1.4 !important
}
.button:hover,
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover {
    background:var(--ga-red-dark) !important;
    border-color:var(--ga-red-dark) !important;
    color:var(--ga-white) !important;
    transform:translateY(-2px);
    box-shadow:0 6px 20px rgba(192,57,43,0.3) !important
}

/* Bouton secondaire = contour rouge */
.button.secondary {
    background:transparent !important;
    color:var(--ga-brown) !important;
    border-color:var(--ga-brown) !important
}
.button.secondary:hover {
    background:var(--ga-brown) !important;
    color:var(--ga-white) !important;
    border-color:var(--ga-brown) !important
}

/* Boutons spéciaux section dark */
.btn-white {
    background:var(--ga-white) !important;
    color:var(--ga-brown-dark) !important;
    border-color:var(--ga-white) !important
}
.btn-white:hover {
    background:var(--ga-cream) !important;
    border-color:var(--ga-cream) !important
}
.btn-outline-white {
    background:transparent !important;
    color:var(--ga-cream) !important;
    border-color:rgba(255,255,255,0.4) !important
}
.btn-outline-white:hover {
    background:rgba(255,255,255,0.1) !important;
    border-color:rgba(255,255,255,0.7) !important
}

/* =========================================================
   HEADER — Logo agrandi
   ========================================================= */
.site-header{background:var(--ga-white);border-bottom:1px solid var(--ga-border);position:sticky;top:0;z-index:200;box-shadow:0 2px 16px var(--ga-shadow)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.6rem 1.2rem;max-width:var(--ga-container);margin:0 auto}
.site-logo a{display:flex;align-items:center}
.site-logo img{height:96px;width:auto}  /* Logo agrandi */
.site-name{font-family:var(--ga-font-head);font-size:1.3rem;font-weight:700;color:var(--ga-brown-dark)}
.main-nav ul{display:flex;align-items:center;gap:0}
.main-nav a{display:block;padding:0.4rem 0.7rem;color:var(--ga-text);font-size:0.84rem;font-weight:500;border-radius:var(--ga-radius-sm);transition:all var(--ga-transition);white-space:nowrap}
.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--ga-brown);background:var(--ga-cream)}
.header-actions{display:flex;align-items:center;gap:0.5rem}
.cart-btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 1.1rem;background:var(--ga-brown-dark);color:var(--ga-white) !important;border:2px solid var(--ga-brown-dark);border-radius:var(--ga-radius-pill);font-size:0.88rem;font-weight:600;transition:all var(--ga-transition)}
.cart-btn:hover{background:var(--ga-brown);border-color:var(--ga-brown);color:var(--ga-white) !important}
.menu-toggle{display:none;background:none;border:2px solid var(--ga-border);border-radius:var(--ga-radius-sm);padding:0.4rem 0.7rem;font-size:1.2rem;cursor:pointer;color:var(--ga-brown-dark);transition:all var(--ga-transition)}
.menu-toggle:hover{border-color:var(--ga-brown);color:var(--ga-brown)}

/* =========================================================
   HERO
   ========================================================= */
.hero-section{padding:5rem 0}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:0.75rem}
.hero-copy h1{margin-bottom:0}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:0.5rem}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.stat-card{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius-lg);padding:1.5rem;text-align:center;box-shadow:0 2px 12px var(--ga-shadow)}
.stat-card strong{display:block;font-family:var(--ga-font-head);font-size:2rem;color:var(--ga-brown);margin-bottom:0.25rem}
.stat-card span{font-size:0.85rem;color:var(--ga-brown-dark);font-weight:500}
.stat-card.accent{background:var(--ga-brown-dark);border-color:var(--ga-brown-dark)}
.stat-card.accent strong,.stat-card.accent span{color:var(--ga-cream)}

/* =========================================================
   SHOWCASE BLOC (photo 1) — V5 signature luxe
   ========================================================= */
.showcase-section{position:relative;overflow:hidden;isolation:isolate}
.showcase-section::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.85;background:radial-gradient(circle at top left, rgba(242,237,227,.8), transparent 30%),radial-gradient(circle at bottom right, rgba(212,196,168,.22), transparent 28%)}
.showcase-section::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:var(--ga-showcase-texture-opacity, .16)}
.showcase-texture-none::after{display:none}
.showcase-texture-grain::after{background-image:radial-gradient(circle at 20% 20%, rgba(107,79,44,.18) 0 1px, transparent 1.2px),radial-gradient(circle at 80% 30%, rgba(107,79,44,.12) 0 1px, transparent 1.3px),radial-gradient(circle at 30% 75%, rgba(107,79,44,.14) 0 1px, transparent 1.1px),radial-gradient(circle at 70% 80%, rgba(107,79,44,.1) 0 1px, transparent 1.2px);background-size:22px 22px,28px 28px,24px 24px,26px 26px}
.showcase-texture-linen::after{background-image:linear-gradient(90deg, rgba(107,79,44,.08) 0, rgba(107,79,44,.08) 1px, transparent 1px, transparent 12px),linear-gradient(0deg, rgba(107,79,44,.05) 0, rgba(107,79,44,.05) 1px, transparent 1px, transparent 12px);background-size:12px 12px}
.showcase-texture-halo::after{background:radial-gradient(circle at 20% 15%, rgba(255,255,255,.95), transparent 22%),radial-gradient(circle at 80% 78%, rgba(212,196,168,.55), transparent 22%),radial-gradient(circle at 55% 50%, rgba(242,237,227,.6), transparent 36%)}
.showcase-section .container{position:relative;z-index:1}
.showcase-grid{display:grid;grid-template-columns:minmax(320px, 0.95fr) minmax(320px, 1.05fr);gap:4rem;align-items:center}

.showcase-panel{position:relative;padding:2rem;background:var(--ga-beige);border:1px solid var(--ga-border);border-radius:28px;box-shadow:0 10px 32px var(--ga-shadow)}
.showcase-panel::after{content:"";position:absolute;inset:14px;border-radius:22px;border:1px solid rgba(212,196,168,.45);pointer-events:none}
.showcase-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;min-height:100%}
.showcase-logo-wrap{position:relative;isolation:isolate;width:100%;display:flex;justify-content:center;align-items:center;background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.92));border-radius:24px;padding:1.5rem;min-height:230px;box-shadow:inset 0 1px 0 rgba(255,255,255,.65);--ga-logo-stage-bg:rgba(247,244,238,.98);--ga-logo-stage-stroke:rgba(212,196,168,.28)}
.showcase-logo-wrap::before{content:"";position:absolute;inset:18px;border-radius:20px;background:radial-gradient(circle at center, rgba(242,237,227,.85) 0%, rgba(255,255,255,0) 70%);z-index:-1}.showcase-logo-stage{position:relative;display:inline-flex;justify-content:center;align-items:center;max-width:100%;padding:.2rem;border-radius:32px;background:var(--ga-logo-stage-bg);box-shadow:0 18px 40px rgba(61,43,16,.07), inset 0 1px 0 rgba(255,255,255,.7);overflow:hidden;isolation:isolate}.showcase-logo-feather{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:var(--ga-showcase-logo-blend-strength, .78);box-shadow:inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 1.2) calc(var(--ga-showcase-logo-feather, 22px) * .8) var(--ga-logo-stage-bg), inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 2.2) calc(var(--ga-showcase-logo-feather, 22px) * 1.1) var(--ga-logo-stage-bg)}
.showcase-logo{position:relative;z-index:1;display:block;max-height:var(--ga-showcase-logo-height, 200px);width:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(61,43,16,.12));transition:transform .35s ease, filter .35s ease}
.showcase-has-motion .showcase-logo-wrap:hover .showcase-logo{transform:translateY(-4px) scale(1.02) rotate(-1deg);filter:drop-shadow(0 14px 26px rgba(61,43,16,.16))}
.showcase-logo-fallback{font-family:var(--ga-font-head);font-size:1.5rem;font-weight:700;color:var(--ga-brown-dark);text-align:center}
.showcase-features{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%}
.showcase-feature{background:rgba(255,255,255,.92);backdrop-filter:blur(5px);border:1px solid var(--ga-border);border-radius:var(--ga-showcase-card-radius, 14px);padding:var(--ga-showcase-card-padding, 1rem)}
.showcase-feature strong{display:block;font-family:var(--ga-font-head);font-size:0.95rem;color:var(--ga-brown-dark);margin-bottom:0.35rem}
.showcase-feature p{font-size:0.85rem;color:var(--ga-muted);margin:0;line-height:1.5}

.showcase-content{display:flex;flex-direction:column;gap:1.25rem}
.showcase-content h2{width:100%;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25}
.showcase-content .muted{max-width:60ch;color:var(--ga-brown-mid);font-size:0.95rem;line-height:1.7}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:0.5rem}
.feature-card{position:relative;overflow:hidden;background:var(--ga-cream);border:1px solid var(--ga-border);border-radius:var(--ga-showcase-card-radius, 14px);padding:var(--ga-showcase-card-padding, 1rem);min-height:var(--ga-showcase-card-minh, 0px);box-shadow:0 4px 18px rgba(61,43,16,.04);transition:transform var(--ga-transition), box-shadow var(--ga-transition), border-color var(--ga-transition)}
.feature-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(61,43,16,.1);border-color:var(--ga-brown-mid)}
.feature-card h4{position:relative;z-index:1;font-size:0.96rem;margin-bottom:0.3rem;color:var(--ga-brown-dark)}
.feature-card p{position:relative;z-index:1;font-size:0.84rem;color:var(--ga-muted);margin:0}
.showcase-card-fx-on .feature-card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg, rgba(107,79,44,.08), rgba(107,79,44,.32), rgba(107,79,44,.08))}
.showcase-card-fx-on .feature-card::after{content:"";position:absolute;inset:-40% auto auto -20%;width:70%;height:160%;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.35), rgba(255,255,255,0));transform:rotate(18deg);opacity:.55;pointer-events:none;transition:transform .5s ease, opacity .5s ease}
.showcase-card-fx-on .feature-card:hover::after{transform:translateX(18%) rotate(18deg);opacity:.82}
.showcase-card-fx-on .feature-card{box-shadow:0 10px 24px rgba(61,43,16,.05), inset 0 1px 0 rgba(255,255,255,.55)}
.showcase-card-fx-on .feature-card:hover{box-shadow:0 18px 34px rgba(61,43,16,.12), inset 0 1px 0 rgba(255,255,255,.62)}

.showcase-style-classic .showcase-panel{background:var(--ga-beige);box-shadow:0 6px 24px var(--ga-shadow)}
.showcase-style-classic .feature-card{background:var(--ga-cream)}

.showcase-style-premium .showcase-panel{background:linear-gradient(180deg, #f8f3ea 0%, #f4eee3 100%)}
.showcase-style-premium .feature-card{background:linear-gradient(180deg, #f7f1e7 0%, #f3ecdf 100%)}

.showcase-style-contrast .showcase-panel{background:linear-gradient(180deg, #f7f2e7 0%, #efe4cf 100%);border-color:#cdb991;box-shadow:0 16px 42px rgba(61,43,16,.14)}
.showcase-style-contrast .showcase-logo-wrap{background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,244,236,.94))}
.showcase-style-contrast .feature-card{background:#fffdf9;border-color:#ccb58c}
.showcase-style-contrast .eyebrow{background:rgba(107,79,44,.12)}

.showcase-style-premium.showcase-card-fx-on .feature-card,
.showcase-style-contrast.showcase-card-fx-on .feature-card{backdrop-filter:blur(3px)}
.showcase-style-premium .showcase-panel::before,
.showcase-style-contrast .showcase-panel::before{content:"";position:absolute;inset:auto -18% -28% auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle, rgba(212,196,168,.18), transparent 68%);pointer-events:none}

/* =========================================================
   ARTISANS GRID
   ========================================================= */
.artisans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.artisan-card{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius-lg);overflow:hidden;transition:all var(--ga-transition);box-shadow:0 2px 12px var(--ga-shadow)}
.artisan-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px var(--ga-shadow-lg);border-color:var(--ga-brown-mid)}
.artisan-card-img{height:200px;overflow:hidden}
.artisan-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s ease}
.artisan-card:hover .artisan-card-img img{transform:scale(1.05)}
.artisan-card-body{padding:1.25rem}
.artisan-card-body h3{font-size:1.05rem;margin-bottom:0.4rem}
.artisan-card-body p{font-size:0.88rem;color:var(--ga-muted);margin-bottom:1rem}

/* =========================================================
   PRODUCTS HEADER
   ========================================================= */
.products-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem}

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer{background:var(--ga-cream-dark);border-top:1px solid var(--ga-border);padding:3.5rem 0 1.5rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--ga-border);margin-bottom:1.5rem}
.footer-brand .site-logo img{height:56px;margin-bottom:0.75rem}
.footer-brand p{color:var(--ga-muted);font-size:0.88rem;line-height:1.6}
.footer-info-block{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius);padding:1.1rem 1.25rem;margin-top:1rem}
.footer-info-block strong{display:block;color:var(--ga-brown);font-family:var(--ga-font-head);font-size:0.95rem;margin-bottom:0.4rem}
.footer-info-block p{font-size:0.85rem;color:var(--ga-muted);margin:0}
.footer-col h4{font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--ga-brown);margin-bottom:1.1rem;font-family:var(--ga-font-body);font-weight:700}
.footer-nav-link{display:flex;align-items:center;gap:0.6rem;padding:0.6rem 1rem;background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius);color:var(--ga-text);font-size:0.88rem;margin-bottom:0.5rem;transition:all var(--ga-transition)}
.footer-nav-link:hover{border-color:var(--ga-brown);color:var(--ga-brown);background:var(--ga-beige)}
.footer-contact-box{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius-lg);padding:1.25rem}
.footer-contact-box p{font-size:0.85rem;color:var(--ga-muted);margin-bottom:1rem}
.footer-contact-btn{display:flex;align-items:center;gap:0.6rem;padding:0.6rem 1rem;border-radius:var(--ga-radius);font-size:0.88rem;font-weight:600;margin-bottom:0.5rem;transition:all var(--ga-transition);border:1px solid var(--ga-border);color:var(--ga-text);background:var(--ga-beige)}
.footer-contact-btn:hover{border-color:var(--ga-brown);color:var(--ga-brown)}
.footer-contact-btn.accent{background:var(--ga-cream)}
.footer-bottom{text-align:center;color:var(--ga-muted);font-size:0.82rem}

/* =========================================================
   WOOCOMMERCE
   ========================================================= */
.woocommerce,.woocommerce-page{font-family:var(--ga-font-body)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:var(--ga-radius);padding:1rem 1.5rem;margin-bottom:1.5rem;border-left:4px solid var(--ga-red);background:var(--ga-cream);color:var(--ga-text);list-style:none}
.woocommerce-breadcrumb{font-size:0.85rem;color:var(--ga-muted);margin-bottom:2rem}
.woocommerce-breadcrumb a{color:var(--ga-brown)}

.woocommerce-archive-wrap{padding:3rem 1.5rem}
.woocommerce-archive-wrap .page-header{text-align:center;margin-bottom:2.5rem}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:0.75rem 1.25rem;background:var(--ga-white);border:1px solid var(--ga-border);border-radius:var(--ga-radius);font-size:0.9rem}

.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:1.75rem !important;list-style:none !important;padding:0 !important;margin:0 !important;width:100% !important}
.woocommerce ul.products li.product{background:var(--ga-white) !important;border:1px solid var(--ga-border) !important;border-radius:var(--ga-radius-lg) !important;overflow:hidden !important;transition:all var(--ga-transition) !important;display:flex !important;flex-direction:column !important;margin:0 !important;float:none !important;width:auto !important}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 12px 36px var(--ga-shadow-lg) !important;border-color:var(--ga-brown-mid) !important}
.woocommerce ul.products li.product a img{width:100% !important;height:200px !important;object-fit:cover !important;transition:transform 0.4s ease !important;margin:0 !important}
.woocommerce ul.products li.product:hover a img{transform:scale(1.05) !important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ga-font-head) !important;font-size:1rem !important;color:var(--ga-brown-dark) !important;padding:1rem 1.1rem 0.3rem !important;margin:0 !important}
.woocommerce ul.products li.product .price{padding:0 1.1rem !important;color:var(--ga-brown) !important;font-weight:700 !important;font-size:1.05rem !important}
.woocommerce ul.products li.product .button{margin:0.75rem 1.1rem 1.1rem !important;width:calc(100% - 2.2rem) !important}

.single-product-wrap{max-width:var(--ga-container);margin:0 auto;padding:2.5rem 1.5rem}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.woocommerce div.product .woocommerce-product-gallery{border-radius:var(--ga-radius-lg);overflow:hidden;box-shadow:0 8px 32px var(--ga-shadow-lg)}
.woocommerce div.product .summary{display:flex;flex-direction:column;gap:1rem}
.woocommerce div.product .product_title{font-size:clamp(1.6rem,3vw,2.4rem);color:var(--ga-brown-dark);margin:0}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:1.9rem;font-weight:700;color:var(--ga-brown);font-family:var(--ga-font-head)}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ga-muted);line-height:1.8;padding:1.1rem 1.25rem;background:var(--ga-cream);border-radius:var(--ga-radius);border-left:3px solid var(--ga-red)}
.woocommerce div.product form.cart{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.woocommerce div.product form.cart .qty{width:72px;padding:0.65rem 0.75rem;border:2px solid var(--ga-border);border-radius:var(--ga-radius-sm);font-size:1rem;text-align:center;font-family:var(--ga-font-body)}
.woocommerce div.product form.cart .qty:focus{border-color:var(--ga-brown);outline:none}
.woocommerce div.product .product_meta{padding-top:1rem;border-top:1px solid var(--ga-border);font-size:0.88rem;color:var(--ga-muted)}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:1rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:0.5rem;list-style:none;padding:0;margin:0;border-bottom:2px solid var(--ga-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:0.65rem 1.25rem;color:var(--ga-muted);font-weight:600;font-size:0.9rem;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--ga-transition);background:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ga-red);border-bottom-color:var(--ga-red)}
.woocommerce div.product .woocommerce-tabs .panel{padding:2rem;background:var(--ga-white);border:1px solid var(--ga-border);border-top:none;border-radius:0 0 var(--ga-radius) var(--ga-radius);margin-top:0}
.related.products{grid-column:1/-1;margin-top:2rem}

.woocommerce table.shop_table{width:100%;border-collapse:collapse;background:var(--ga-white);border-radius:var(--ga-radius);overflow:hidden;box-shadow:0 2px 12px var(--ga-shadow)}
.woocommerce table.shop_table th{background:var(--ga-cream);padding:1rem 1.25rem;font-weight:600;color:var(--ga-brown-dark);border-bottom:2px solid var(--ga-border);text-align:left}
.woocommerce table.shop_table td{padding:1rem 1.25rem;border-bottom:1px solid var(--ga-border);vertical-align:middle}

input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="tel"],input[type="url"],textarea,select{width:100%;padding:0.7rem 1rem;border:2px solid var(--ga-border);border-radius:var(--ga-radius-sm);font-family:var(--ga-font-body);font-size:0.95rem;color:var(--ga-text);background:var(--ga-white);transition:border-color var(--ga-transition);outline:none}
input:focus,textarea:focus,select:focus{border-color:var(--ga-red)}

.dokan-store-wrap,.dokan-single-store,.dokan-dashboard-wrap{max-width:var(--ga-container);margin:0 auto;padding:2rem 1.5rem}

/* =========================================================
   RESPONSIVE — Corrigé
   ========================================================= */
@media(max-width:1024px){
    .hero-grid{grid-template-columns:1fr;gap:2.5rem}
    .stats-grid{grid-template-columns:repeat(4,1fr)}
    .showcase-grid{grid-template-columns:1fr;gap:2rem}
    .artisans-grid{grid-template-columns:repeat(2,1fr)}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
    .woocommerce ul.products{grid-template-columns:repeat(2,1fr) !important}
    .woocommerce div.product{grid-template-columns:1fr;gap:2.5rem}
    .woocommerce div.product .woocommerce-tabs,.related.products{grid-column:1}
}

@media(max-width:768px){
    .showcase-mobile-compact .showcase-panel{padding:1.25rem}
    .showcase-mobile-compact .showcase-logo-wrap{min-height:180px;padding:1rem}
    .showcase-mobile-compact .showcase-content{gap:0.8rem}
    .showcase-mobile-compact .feature-grid{gap:0.85rem}
    /* Menu mobile */
    .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ga-white);border-top:1px solid var(--ga-border);padding:1rem 1.5rem;box-shadow:0 8px 24px var(--ga-shadow-lg);z-index:199}
    .main-nav.open{display:block}
    .main-nav ul{flex-direction:column;gap:0.25rem}
    .main-nav a{padding:0.6rem 1rem}
    .menu-toggle{display:block}

    /* Logo réduit sur mobile */
    .site-logo img{height:64px}

    /* Grilles */
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .showcase-features{grid-template-columns:1fr}
    .feature-grid{grid-template-columns:1fr}
    .artisans-grid{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr;gap:1.75rem}
    .products-header{flex-direction:column;align-items:flex-start}
    .shop-toolbar{flex-direction:column;gap:0.75rem;align-items:flex-start}
    .woocommerce div.product form.cart{flex-direction:column;align-items:stretch}
    .woocommerce div.product form.cart .qty{width:100%}
}

@media(max-width:480px){
    .showcase-grid{grid-template-columns:1fr}
    .showcase-panel{padding:1.25rem;border-radius:22px}
    .showcase-logo-wrap{min-height:170px;border-radius:18px}
    .showcase-content h2{max-width:none}
    .woocommerce ul.products{grid-template-columns:1fr !important}
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    h1{font-size:1.7rem}
    .container,.content-wrap{padding:0 1rem}
    .content-wrap{padding:2rem 1rem}
    .section{padding:3.5rem 0}
    .hero-section{padding:3rem 0}
    .hero-actions{flex-direction:column}
    .hero-actions .button{width:100%;text-align:center}
}


/* Showcase V3 customizer */
:root{--ga-showcase-logo-height:200px;--ga-showcase-card-padding:1rem;--ga-showcase-card-radius:14px;--ga-showcase-card-minh:0px;}


/* V4 mobile polishing */
@media (max-width: 767px){
  .showcase-mobile-compact .showcase-panel{padding:1.1rem;border-radius:22px}
  .showcase-mobile-compact .showcase-logo-wrap{min-height:180px;padding:1rem;border-radius:20px}
  .showcase-mobile-compact .feature-grid{grid-template-columns:1fr;gap:.85rem}
  .showcase-mobile-compact .showcase-content h2{max-width:none}
}


/* V5 SIGNATURE LUXE */
.showcase-section{--ga-showcase-bg-image:none}
.showcase-section.has-bg-image::marker{content:""}
.showcase-section::before{background:radial-gradient(circle at top left, rgba(242,237,227,.82), transparent 30%),radial-gradient(circle at bottom right, rgba(212,196,168,.24), transparent 28%),linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,0))}
.showcase-section[style*="--ga-showcase-bg-image"]::before{background-image:linear-gradient(180deg, rgba(250,247,241,.88), rgba(250,247,241,.80)), var(--ga-showcase-bg-image), radial-gradient(circle at top left, rgba(242,237,227,.82), transparent 30%), radial-gradient(circle at bottom right, rgba(212,196,168,.24), transparent 28%);background-size:auto, cover, auto, auto;background-position:center;background-repeat:no-repeat}
.showcase-panel,.showcase-content,.feature-card{position:relative}
.showcase-decorative-line{display:block;width:128px;max-width:100%;height:14px;position:relative;margin:.2rem 0 .35rem}
.showcase-decorative-line::before,.showcase-decorative-line::after{content:"";position:absolute;top:50%;transform:translateY(-50%)}
.showcase-decorative-line::before{left:0;right:0;height:1px;background:linear-gradient(90deg, rgba(107,79,44,0), rgba(107,79,44,.22), rgba(107,79,44,.55), rgba(107,79,44,.22), rgba(107,79,44,0))}
.showcase-decorative-line::after{left:50%;width:12px;height:12px;border:1px solid rgba(107,79,44,.35);background:rgba(255,255,255,.7);transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 3px rgba(248,244,236,.9)}
.showcase-feature-grid-decor{display:block;grid-column:1/-1;height:1px;background:linear-gradient(90deg, rgba(107,79,44,0), rgba(107,79,44,.16), rgba(107,79,44,0));margin:-.2rem 0 .2rem}
.showcase-decor-off .showcase-decorative-line,.showcase-decor-off .showcase-feature-grid-decor{display:none}
.showcase-style-signature .showcase-panel{background:linear-gradient(180deg, rgba(248,242,232,.98) 0%, rgba(241,232,216,.98) 100%);border-color:rgba(173,143,96,.42);box-shadow:0 18px 54px rgba(61,43,16,.14), inset 0 1px 0 rgba(255,255,255,.8)}
.showcase-style-signature .showcase-panel::after{border-color:rgba(173,143,96,.48)}
.showcase-style-signature .showcase-logo-wrap{background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,245,237,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.75), 0 16px 32px rgba(61,43,16,.05)}
.showcase-style-signature .showcase-content .eyebrow{background:linear-gradient(90deg, rgba(107,79,44,.1), rgba(107,79,44,.04));border:1px solid rgba(173,143,96,.22);padding:.45rem .9rem;letter-spacing:.16em}
.showcase-style-signature .showcase-content h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25}
.showcase-style-signature .feature-card{background:linear-gradient(180deg, rgba(255,252,247,.96), rgba(246,239,229,.96));border-color:rgba(173,143,96,.34)}
.showcase-luxury-cards-on .feature-card{box-shadow:0 10px 24px rgba(61,43,16,.06), inset 0 1px 0 rgba(255,255,255,.7)}
.showcase-luxury-cards-on .feature-card h4{position:relative;padding-left:1rem}
.showcase-luxury-cards-on .feature-card h4::before{content:"";position:absolute;left:0;top:.45em;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle, rgba(173,143,96,.95), rgba(107,79,44,.65));box-shadow:0 0 0 4px rgba(173,143,96,.12)}
.showcase-luxury-cards-on .feature-card::before{height:1px;top:auto;bottom:0;background:linear-gradient(90deg, rgba(107,79,44,0), rgba(173,143,96,.48), rgba(107,79,44,0))}
.showcase-luxury-cards-on .feature-card::after{inset:auto -10% 55% auto;width:58%;height:120%;background:radial-gradient(circle at center, rgba(255,255,255,.4), rgba(255,255,255,0) 68%);transform:none;opacity:.8}
.showcase-luxury-cards-on .feature-card:hover::after{transform:translateY(-4px);opacity:1}
.showcase-style-signature.showcase-card-fx-on .feature-card:hover,.showcase-style-signature.showcase-luxury-cards-on .feature-card:hover{transform:translateY(-4px);box-shadow:0 20px 38px rgba(61,43,16,.12), inset 0 1px 0 rgba(255,255,255,.82)}
.showcase-style-signature .showcase-content,.showcase-style-signature .showcase-panel{z-index:1}
.showcase-style-signature .showcase-content::before,.showcase-style-signature .showcase-panel::before{content:"";position:absolute;inset:auto auto -18px -18px;width:84px;height:84px;border-left:1px solid rgba(173,143,96,.22);border-bottom:1px solid rgba(173,143,96,.22);border-radius:0 0 0 18px;pointer-events:none;opacity:.6}
.showcase-style-signature .showcase-panel::before{inset:-18px -18px auto auto;border-left:none;border-bottom:none;border-right:1px solid rgba(173,143,96,.22);border-top:1px solid rgba(173,143,96,.22);border-radius:0 18px 0 0}
@media (max-width: 768px){
  .showcase-style-signature .showcase-content h2{font-size:clamp(1.35rem,5vw,1.75rem)}
  .showcase-decorative-line{width:96px}
}


/* =========================================================
   FOOTER V6 — Maison d'artisan prestige
   ========================================================= */
.site-footer{position:relative;background:linear-gradient(180deg, #ebe3d4 0%, #e4dac7 42%, #ddd0ba 100%);border-top:1px solid rgba(107,79,44,.16);padding:4.2rem 0 1.8rem;overflow:hidden}
.site-footer::before{content:"";position:absolute;inset:-10% auto auto -8%;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle, rgba(255,255,255,.48), rgba(255,255,255,0) 68%);pointer-events:none}
.site-footer::after{content:"";position:absolute;inset:auto -10% -16% auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle, rgba(107,79,44,.10), rgba(107,79,44,0) 70%);pointer-events:none}
.footer-grid{position:relative;grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));gap:1.5rem;padding:1.6rem;border:1px solid rgba(173,143,96,.30);border-radius:28px;background:linear-gradient(180deg, rgba(255,250,243,.92), rgba(247,240,230,.82));box-shadow:0 22px 54px rgba(61,43,16,.10), inset 0 1px 0 rgba(255,255,255,.75)}
.footer-grid::before{content:"";position:absolute;inset:14px;border-radius:22px;border:1px solid rgba(173,143,96,.22);pointer-events:none}
.footer-brand-luxe{padding:1.15rem 1.2rem 1.25rem;background:linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,248,240,.26));border:1px solid rgba(173,143,96,.24);border-radius:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.66)}
.footer-kicker{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .75rem;margin-bottom:1rem;border-radius:999px;border:1px solid rgba(173,143,96,.26);background:linear-gradient(90deg, rgba(107,79,44,.10), rgba(107,79,44,.03));color:var(--ga-brown-mid);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.footer-brand-luxe h3{font-family:var(--ga-font-head);font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.05;color:var(--ga-brown-dark);margin-bottom:.8rem}
.footer-brand-luxe > p{font-size:.98rem;line-height:1.8;color:#6e5a46}
.footer-info-block-luxe{margin-top:1.2rem;background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(252,246,237,.86));border:1px solid rgba(173,143,96,.30);border-radius:20px;padding:1.2rem 1.3rem;box-shadow:0 10px 24px rgba(61,43,16,.06), inset 0 1px 0 rgba(255,255,255,.72)}
.footer-col{position:relative;padding:1.05rem;background:linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,249,242,.18));border:1px solid rgba(173,143,96,.20);border-radius:22px;backdrop-filter:blur(5px)}
.footer-col h4{font-family:var(--ga-font-head);font-size:1.08rem;color:var(--ga-brown-dark);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(173,143,96,.18)}
.footer-nav-link{position:relative;display:flex;align-items:center;gap:.72rem;padding:.82rem 1rem;background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,241,230,.94));border:1px solid rgba(173,143,96,.34);border-radius:18px;color:var(--ga-text);font-size:.92rem;margin-bottom:.65rem;box-shadow:0 8px 18px rgba(61,43,16,.05), inset 0 1px 0 rgba(255,255,255,.78);transition:transform var(--ga-transition), box-shadow var(--ga-transition), border-color var(--ga-transition), background var(--ga-transition)}
.footer-nav-link::after{content:"";position:absolute;inset:auto 1rem .55rem 1rem;height:1px;background:linear-gradient(90deg, rgba(173,143,96,0), rgba(173,143,96,.28), rgba(173,143,96,0));opacity:.85}
.footer-nav-link:hover{transform:translateY(-2px);border-color:rgba(107,79,44,.46);color:var(--ga-brown);background:linear-gradient(180deg, rgba(255,255,255,1), rgba(247,238,224,1));box-shadow:0 16px 28px rgba(61,43,16,.11), inset 0 1px 0 rgba(255,255,255,.92)}
.footer-contact-box{padding:1rem;background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(250,242,231,.62));border:1px solid rgba(173,143,96,.24);border-radius:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.68)}
.footer-contact-box p{color:#6e5a46;line-height:1.7;font-size:.92rem;margin-bottom:.9rem}
.footer-contact-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.88rem 1rem;border-radius:16px;border:1px solid rgba(173,143,96,.30);background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,241,230,.95));color:var(--ga-brown-dark);font-weight:600;box-shadow:0 8px 18px rgba(61,43,16,.05), inset 0 1px 0 rgba(255,255,255,.78);margin-top:.65rem;text-decoration:none;transition:transform var(--ga-transition), box-shadow var(--ga-transition), border-color var(--ga-transition)}
.footer-contact-btn:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(61,43,16,.11);border-color:rgba(107,79,44,.42)}
.footer-contact-btn.accent{background:linear-gradient(180deg, rgba(107,79,44,.98), rgba(83,60,33,.98));color:#fff;border-color:rgba(61,43,16,.34)}
.footer-bottom-signature{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:1.7rem;padding-top:1.35rem;border-top:1px solid rgba(173,143,96,.28);text-align:center}
.footer-bottom-logo .custom-logo-link{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1rem;border-radius:999px;background:linear-gradient(180deg, rgba(255,255,255,.66), rgba(247,239,227,.42));border:1px solid rgba(173,143,96,.24);box-shadow:0 10px 26px rgba(61,43,16,.08), inset 0 1px 0 rgba(255,255,255,.76)}
.footer-bottom-logo img,.footer-bottom-logo .site-logo img,.footer-bottom-logo .custom-logo{max-height:54px !important;width:auto !important;height:auto !important}
.footer-bottom-signature p{font-size:.84rem;color:#7a6550;letter-spacing:.02em}

/* Bloc luxe V6 */
.showcase-style-signature .showcase-content{padding:1rem 0 1rem .6rem}
.showcase-style-signature .showcase-content::after{content:"";position:absolute;inset:18px auto 18px -10px;width:1px;background:linear-gradient(180deg, rgba(173,143,96,0), rgba(173,143,96,.26), rgba(173,143,96,0));pointer-events:none}
.showcase-style-signature .feature-card{border-radius:20px;box-shadow:0 14px 30px rgba(61,43,16,.07), inset 0 1px 0 rgba(255,255,255,.78)}
.showcase-style-signature .feature-card h4{font-size:1.18rem;margin-bottom:.55rem}
.showcase-style-signature .feature-card p{color:#6c5845;line-height:1.72}
.showcase-style-signature .showcase-feature-grid{gap:1.15rem}
.showcase-style-signature.showcase-luxury-cards-on .feature-card{background:linear-gradient(180deg, rgba(255,254,250,.98), rgba(244,235,222,.96));border-color:rgba(161,129,81,.38);box-shadow:0 16px 34px rgba(61,43,16,.08), inset 0 1px 0 rgba(255,255,255,.84)}
.showcase-style-signature.showcase-luxury-cards-on .feature-card::before{height:2px;bottom:auto;top:0;background:linear-gradient(90deg, rgba(161,129,81,0), rgba(161,129,81,.52), rgba(161,129,81,0))}
.showcase-style-signature.showcase-luxury-cards-on .feature-card::after{inset:auto -12% 44% auto;width:64%;height:140%;background:radial-gradient(circle at center, rgba(255,255,255,.52), rgba(255,255,255,0) 70%)}
.showcase-style-signature .showcase-panel,.showcase-style-signature .showcase-content{overflow:hidden}
.showcase-style-signature .showcase-logo-wrap{border-radius:26px}
@media (max-width: 1024px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand-luxe{grid-column:1/-1}.showcase-style-signature .showcase-content{padding-left:0}.showcase-style-signature .showcase-content::after{display:none}}
@media (max-width: 767px){.site-footer{padding:3rem 0 1.4rem}.footer-grid{grid-template-columns:1fr;padding:1rem}.footer-col,.footer-brand-luxe{padding:1rem}.footer-bottom-logo img,.footer-bottom-logo .site-logo img,.footer-bottom-logo .custom-logo{max-height:42px !important}}


/* =========================================================
   V8 — Identité visuelle complète + fusion du logo
   ========================================================= */
body{background:linear-gradient(180deg, var(--ga-beige) 0%, #f7f2e8 100%)}
.site-header{backdrop-filter:blur(8px);background:rgba(255,254,250,.92);border-bottom:1px solid rgba(173,143,96,.24);box-shadow:0 10px 30px rgba(61,43,16,.06)}
.header-inner{padding:.6rem 1.5rem}
.main-nav a{letter-spacing:.02em}
.main-nav a:hover,.main-nav .current-menu-item>a{background:linear-gradient(180deg, rgba(107,79,44,.10), rgba(107,79,44,.04))}
.hero-section{position:relative;overflow:hidden}
.hero-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at top left, rgba(255,255,255,.92), transparent 28%), linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,0))}
.section-white{background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,252,247,.96))}
.section-cream{background:linear-gradient(180deg, rgba(245,239,229,.98), rgba(239,231,216,.98))}
.eyebrow{border:1px solid rgba(173,143,96,.20);box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.panel{box-shadow:0 14px 40px rgba(61,43,16,.06), inset 0 1px 0 rgba(255,255,255,.68)}

.showcase-section{padding-top:5.5rem;padding-bottom:5.5rem}
.showcase-section[style*="--ga-showcase-bg-image"]::before{background-image:linear-gradient(180deg, rgba(252,250,246,.92), rgba(248,242,233,.88)), var(--ga-showcase-bg-image);background-size:cover, cover;background-position:center center, center center;opacity:1}
.showcase-section[style*="--ga-showcase-bg-image"]::after{opacity:calc(var(--ga-showcase-texture-opacity, .16) + var(--ga-showcase-bg-image-opacity, .12))}
.showcase-grid{gap:4.6rem}
.showcase-panel{background:linear-gradient(180deg, rgba(246,240,231,.88), rgba(241,234,222,.96));box-shadow:0 26px 64px rgba(61,43,16,.10), inset 0 1px 0 rgba(255,255,255,.75)}
.showcase-panel::before{content:"";position:absolute;inset:-22% auto auto -12%;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle, rgba(255,255,255,.46), rgba(255,255,255,0) 70%);pointer-events:none}
.showcase-logo-wrap{background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(252,248,242,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.84), 0 18px 34px rgba(61,43,16,.05)}
.showcase-logo-wrap::after{content:"";position:absolute;inset:0;border-radius:24px;background:radial-gradient(circle at center, rgba(255,255,255,.52) 0%, rgba(255,255,255,0) 62%);pointer-events:none}
.showcase-logo{position:relative;z-index:2}
.showcase-logo-blend-on .showcase-logo{mix-blend-mode:multiply;opacity:var(--ga-logo-blend-strength, .72);filter:contrast(1.02) saturate(1.02) drop-shadow(0 10px 20px rgba(61,43,16,.10))}
.showcase-logo-blend-on .showcase-logo-wrap{background:linear-gradient(180deg, #ffffff 0%, #fbf7ef 100%)}
.showcase-logo-blend-off .showcase-logo{opacity:1}
.identity-editorial .showcase-content h2{letter-spacing:-.03em;font-size:clamp(2.2rem, 3.8vw, 4rem);line-height:.98}
.identity-editorial .showcase-content .muted{font-size:1.02rem;line-height:1.9;max-width:62ch}
.identity-editorial .feature-card h4{font-size:1.12rem}
.identity-editorial .feature-card p{font-size:.92rem;line-height:1.78}
.identity-atelier .feature-card,.identity-atelier .showcase-panel{border-color:rgba(150,118,76,.24)}
.identity-heritage .showcase-panel{background:linear-gradient(180deg, rgba(245,236,222,.94), rgba(238,228,212,.98))}
.showcase-style-signature .showcase-panel{border-radius:34px}
.showcase-style-signature .showcase-panel::after{inset:16px;border-color:rgba(173,143,96,.36)}
.showcase-style-signature .showcase-content{padding-right:.25rem}
.showcase-style-signature .feature-card{border-radius:22px;box-shadow:0 18px 40px rgba(61,43,16,.08), inset 0 1px 0 rgba(255,255,255,.82)}
.showcase-style-signature .feature-card h4{font-size:1.2rem;letter-spacing:-.01em}
.showcase-style-signature .feature-card p{font-size:.94rem}
.showcase-style-signature .feature-grid{gap:1.25rem}
.showcase-style-signature .showcase-decorative-line{margin-bottom:1.25rem}
.showcase-style-signature.showcase-luxury-cards-on .feature-card{background:linear-gradient(180deg, rgba(255,254,251,.98), rgba(245,236,221,.98));border:1px solid rgba(161,129,81,.32)}
.showcase-style-signature.showcase-luxury-cards-on .feature-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(61,43,16,.12), inset 0 1px 0 rgba(255,255,255,.9)}
.showcase-style-signature.showcase-luxury-cards-on .feature-card::before{height:2px;background:linear-gradient(90deg, rgba(161,129,81,0), rgba(161,129,81,.64), rgba(161,129,81,0))}
.showcase-style-signature.showcase-luxury-cards-on .feature-card::after{opacity:.92}

.site-footer{background:linear-gradient(180deg, #eee5d6 0%, #e3d7c2 55%, #d8c7ae 100%)}
.footer-grid{background:linear-gradient(180deg, rgba(255,252,247,.95), rgba(249,241,230,.88));box-shadow:0 30px 70px rgba(61,43,16,.12), inset 0 1px 0 rgba(255,255,255,.82)}
.footer-brand-luxe h3{margin-bottom:.9rem}
.footer-info-block-luxe strong{display:block;margin-bottom:.45rem;font-family:var(--ga-font-head);font-size:1.02rem;color:var(--ga-brown-dark)}
.footer-bottom-signature{margin-top:1.35rem;padding-top:1.15rem}
.footer-bottom-signature p{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}

@media (max-width: 1024px){
  .showcase-grid{gap:2.5rem}
  .identity-editorial .showcase-content h2{font-size:clamp(2rem, 5vw, 3rem)}
}
@media (max-width: 767px){
  .showcase-section{padding-top:4.2rem;padding-bottom:4.2rem}
  .showcase-panel{padding:1.2rem;border-radius:24px}
  .showcase-logo-blend-on .showcase-logo{opacity:1}
  .identity-editorial .showcase-content h2{font-size:clamp(1.85rem, 9vw, 2.5rem);line-height:1.02}
}


/* V9 signature invisible logo */
.showcase-logo-surface-seamless{--ga-logo-stage-bg:rgba(247,244,238,.99);--ga-logo-stage-stroke:rgba(212,196,168,.14)}
.showcase-logo-surface-seamless .showcase-logo-stage{padding:0;border-radius:28px;box-shadow:none;background:transparent}
.showcase-logo-surface-seamless .showcase-logo-feather{inset:4px;border-radius:24px;box-shadow:inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 1.5) calc(var(--ga-showcase-logo-feather, 22px) * .95) rgba(247,244,238,.98), inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 2.6) calc(var(--ga-showcase-logo-feather, 22px) * 1.25) rgba(247,244,238,.99)}
.showcase-logo-surface-soft{--ga-logo-stage-bg:rgba(250,248,244,.98);--ga-logo-stage-stroke:rgba(212,196,168,.18)}
.showcase-logo-surface-soft .showcase-logo-stage{padding:.35rem;border:1px solid var(--ga-logo-stage-stroke)}
.showcase-logo-surface-framed{--ga-logo-stage-bg:rgba(252,250,247,.99);--ga-logo-stage-stroke:rgba(184,158,116,.24)}
.showcase-logo-surface-framed .showcase-logo-stage{padding:.55rem;border:1px solid var(--ga-logo-stage-stroke);box-shadow:0 22px 40px rgba(61,43,16,.08), inset 0 1px 0 rgba(255,255,255,.8)}
.showcase-style-signature .showcase-panel{background:linear-gradient(180deg, #f7f2e8 0%, #f2eadc 52%, #efe5d2 100%);border-color:rgba(183,152,104,.36);box-shadow:0 20px 55px rgba(61,43,16,.10)}
.showcase-style-signature .showcase-panel::after{border-color:rgba(183,152,104,.28)}
.showcase-style-signature .showcase-logo-wrap{background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(249,244,235,.9))}
.showcase-style-signature .feature-card{background:linear-gradient(180deg, rgba(255,252,246,.96), rgba(247,240,227,.98));border-color:rgba(183,152,104,.34);box-shadow:0 10px 30px rgba(61,43,16,.06), inset 0 1px 0 rgba(255,255,255,.65)}
.showcase-style-signature .feature-card h4{letter-spacing:.01em}
.identity-editorial .showcase-content h2{font-size:clamp(2.2rem, 4vw, 4rem);line-height:1.05}
.identity-editorial .showcase-content .muted{font-size:1.08rem;line-height:1.9}
.identity-editorial .feature-card p{line-height:1.8}
@media (max-width: 767px){
  .showcase-logo-stage{max-width:100%}
  .showcase-logo-surface-framed .showcase-logo-stage{padding:.35rem}
}


/* V10 corrections — logo plus net + header plus lisible */
.showcase-logo-wrap::after{display:none !important;}
.showcase-logo-feather{opacity:.42 !important;box-shadow:inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 1.05) calc(var(--ga-showcase-logo-feather, 22px) * .55) var(--ga-logo-stage-bg) !important;}
.showcase-logo-surface-seamless .showcase-logo-feather{box-shadow:inset 0 0 calc(var(--ga-showcase-logo-feather, 22px) * 1.1) calc(var(--ga-showcase-logo-feather, 22px) * .55) rgba(247,244,238,.94) !important;}
.showcase-logo,.showcase-logo-blend-on .showcase-logo,.showcase-logo-blend-off .showcase-logo{opacity:1 !important;mix-blend-mode:normal !important;filter:drop-shadow(0 6px 14px rgba(61,43,16,.08)) contrast(1.01) saturate(1.01) !important;}
.showcase-has-motion .showcase-logo-wrap:hover .showcase-logo{transform:translateY(-2px) scale(1.01) !important;filter:drop-shadow(0 8px 16px rgba(61,43,16,.09)) contrast(1.01) saturate(1.01) !important;}
.site-header{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;background:#fcfaf6 !important;box-shadow:0 8px 24px rgba(61,43,16,.05) !important;}
.site-logo img,.site-header .custom-logo,.site-header .custom-logo-link img{opacity:1 !important;filter:none !important;mix-blend-mode:normal !important;}
.site-title,.site-description,.site-logo a{opacity:1 !important;color:var(--ga-brown-dark) !important;text-shadow:none !important;}


/* v11 – netteté hero / badge haut gauche */
.hero-copy .eyebrow{position:relative;z-index:2;color:var(--ga-brown-dark) !important;background:rgba(250,246,238,.96) !important;border:1px solid rgba(183,152,104,.34) !important;box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 6px 18px rgba(61,43,16,.04) !important;opacity:1 !important;filter:none !important;text-shadow:none !important;}
.hero-copy h1,.hero-copy .muted{position:relative;z-index:2;opacity:1 !important;filter:none !important;text-shadow:none !important;}
.hero-section,.hero-copy{isolation:isolate;}
.hero-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg, rgba(250,248,244,.08), rgba(250,248,244,.08));opacity:1;z-index:0;}
.hero-section .container{position:relative;z-index:1;}
@media (max-width: 768px){.hero-copy .eyebrow{font-size:.68rem;letter-spacing:.10em;padding:.34rem .78rem;}}


/* v12 – finition finale */
.hero-copy .eyebrow{
  background:rgba(251,247,240,.985) !important;
  border-color:rgba(183,152,104,.42) !important;
  color:#8b6a3f !important;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset, 0 8px 20px rgba(61,43,16,.035) !important;
  backdrop-filter:none !important;
}
.hero-copy h1{
  color:var(--ga-brown-dark) !important;
  letter-spacing:-0.018em;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.hero-copy .muted{
  color:#7c6850 !important;
}
.showcase-shell,.showcase-panel,.showcase-logo-wrap{
  backdrop-filter:none !important;
}
.showcase-logo-wrap{
  border:1px solid rgba(212,196,168,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88), 0 16px 28px rgba(61,43,16,.045) !important;
}
.showcase-card{
  box-shadow:0 10px 22px rgba(61,43,16,.035);
}
.site-footer{
  border-top:1px solid rgba(212,196,168,.28);
}
@media (max-width: 768px){
  .hero-copy h1{letter-spacing:-0.012em;}
}


/* =========================================================
   CTA ARTISAN & HERO REASSURANCE
   ========================================================= */
.hero-section{position:relative;overflow:hidden}
.hero-lead{max-width:46rem}
.hero-reassurance{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1rem}
.hero-reassurance span{display:inline-flex;align-items:center;gap:0.35rem;padding:0.45rem 0.85rem;background:rgba(107,79,44,0.08);border:1px solid rgba(107,79,44,0.12);border-radius:var(--ga-radius-pill);font-size:0.88rem;color:var(--ga-brown-dark);font-weight:600}
.artisan-cta{white-space:nowrap;box-shadow:0 8px 24px rgba(192,57,43,0.18)}
.header-actions{display:flex;align-items:center;gap:0.5rem}
@media (max-width: 860px){
  .artisan-cta{display:none !important}
}


/* =========================================================
   HEADER CTA ARTISAN CUSTOM
   ========================================================= */
.artisan-cta-group{display:flex;flex-direction:column;align-items:stretch;gap:0.3rem}
.artisan-cta-primary,.artisan-cta-secondary{white-space:nowrap;box-shadow:0 8px 24px rgba(192,57,43,0.08);font-size:0.75rem;padding:0.32rem 0.8rem;line-height:1.2;text-align:center;width:100%}
.artisan-cta-secondary.button.secondary{border-width:2px !important}
@media (max-width: 860px){
  .artisan-cta-group{display:none !important}
}

/* =========================================================
   PAGE ESPACE ARTISAN
   ========================================================= */
.body-espace-artisan,.ga-artisan-hub-page{background:linear-gradient(180deg,var(--ga-beige) 0%, #fffdf9 100%)}
.artisan-hub-hero{position:relative;overflow:hidden;padding:5.5rem 0 4.5rem}
.artisan-hub-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top left, rgba(107,79,44,0.12), transparent 30%),radial-gradient(circle at bottom right, rgba(192,57,43,0.10), transparent 24%);pointer-events:none}
.artisan-hub-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:2rem;align-items:center}
.artisan-hub-copy{display:flex;flex-direction:column;gap:1rem}
.artisan-hub-copy h1{max-width:12ch}
.artisan-hub-copy p{max-width:60ch}
.artisan-hub-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}
.artisan-hub-note{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}
.artisan-hub-note span{display:inline-flex;align-items:center;padding:.5rem .85rem;background:rgba(107,79,44,0.08);border:1px solid rgba(107,79,44,0.12);border-radius:var(--ga-radius-pill);font-weight:600;font-size:.9rem}
.artisan-hub-panel{background:rgba(255,255,255,0.9);border:1px solid var(--ga-border);border-radius:28px;padding:2rem;box-shadow:0 20px 40px rgba(61,43,16,.09)}
.artisan-hub-checklist{display:grid;gap:1rem}
.artisan-hub-checklist li{display:flex;gap:.85rem;align-items:flex-start;padding:1rem 1.1rem;background:var(--ga-white);border:1px solid rgba(212,196,168,.55);border-radius:18px}
.artisan-hub-step{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:999px;background:var(--ga-brown-dark);color:var(--ga-white);font-weight:700;font-size:.9rem;margin-top:.1rem}
.artisan-hub-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.artisan-hub-benefit{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:22px;padding:1.5rem;box-shadow:0 8px 24px rgba(61,43,16,.05)}
.artisan-hub-benefit h3{font-size:1.15rem;margin-bottom:.5rem}
.artisan-hub-paths{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.artisan-hub-path{background:var(--ga-white);border:1px solid var(--ga-border);border-radius:24px;padding:1.75rem;box-shadow:0 12px 26px rgba(61,43,16,.05)}
.artisan-hub-path .button{margin-top:1rem}
.artisan-hub-faq{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.artisan-hub-faq .panel{height:100%}
@media (max-width: 980px){
  .artisan-hub-grid,.artisan-hub-benefits,.artisan-hub-faq,.artisan-hub-paths{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .artisan-hub-hero{padding:4rem 0 3rem}
  .artisan-hub-actions .button{width:100%;text-align:center}
  .artisan-hub-panel{padding:1.25rem;border-radius:20px}
}

/* =========================================================
   TARIFS — SECTION DÉDIÉE & BANDEAU ACCUEIL
   ========================================================= */

/* Grille 3 cartes */
.tarifs-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

/* Carte de base */
.tarif-card {
    position: relative;
    padding: 1.5rem;
    border-radius: var(--ga-radius-lg);
    background: var(--ga-white);
    border: 1px solid var(--ga-border);
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Carte mise en avant */
.tarif-card-featured {
    border: 2px solid var(--ga-red);
    box-shadow: 0 8px 32px rgba(192, 57, 43, 0.12);
}

/* Badge "Offre de lancement" */
.tarif-badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--ga-red);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.9rem;
    border-radius: 100px;
    white-space: nowrap;
    letter-spacing: 0.05em;
}

/* Label (nom de l'offre) */
.tarif-label {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--ga-muted);
    margin-bottom: 0.5rem;
}

/* Prix */
.tarif-price {
    display: flex;
    align-items: baseline;
    gap: 0.35rem;
    margin-bottom: 0.15rem;
}
.tarif-price strong {
    font-family: var(--ga-font-head);
    font-size: 2rem;
    color: var(--ga-brown-dark);
    line-height: 1;
}
.tarif-price span {
    font-size: 0.8rem;
    color: var(--ga-muted);
}

/* Séparateur */
.tarif-divider {
    border: none;
    border-top: 1px solid var(--ga-border);
    margin: 0.9rem 0;
}

/* Liste des éléments */
.tarif-items {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}
.tarif-items li {
    font-size: 0.8rem;
    color: var(--ga-brown);
    padding-left: 1rem;
    position: relative;
    line-height: 1.4;
}
.tarif-items li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.45em;
    width: 5px;
    height: 5px;
    background: var(--ga-red);
    border-radius: 50%;
}

/* Bloc parrainage */
.parrainage-bloc {
    padding: 1.5rem;
}
.parrainage-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-top: 1rem;
}
.parrainage-item {
    background: var(--ga-cream);
    border-radius: var(--ga-radius-md);
    padding: 1rem;
    text-align: center;
}
.parrainage-icon {
    display: block;
    font-size: 1.5rem;
    margin-bottom: 0.4rem;
}
.parrainage-item strong {
    display: block;
    font-size: 0.82rem;
    color: var(--ga-brown-dark);
    margin-bottom: 0.3rem;
}
.parrainage-item p {
    font-size: 0.78rem;
    color: var(--ga-muted);
    line-height: 1.5;
    margin: 0;
}

/* ── BANDEAU RÉSUMÉ (accueil) ── */
.tarifs-bandeau {
    background: var(--ga-brown-dark) !important;
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}
.tarifs-bandeau-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    text-align: center;
}
.tarifs-bandeau-inner .eyebrow {
    background: rgba(255,255,255,0.15);
    color: var(--ga-cream);
    border: none;
}
.tarifs-bandeau-title {
    font-family: var(--ga-font-head);
    font-size: clamp(1.3rem, 2.5vw, 1.8rem);
    color: var(--ga-cream);
    margin: 0;
    line-height: 1.2;
}
.tarifs-bandeau-text {
    font-size: 0.95rem;
    font-weight: 500;
    color: rgba(242,237,227,0.8);
    margin: 0;
    letter-spacing: 0.02em;
}
.tarifs-bandeau-pills {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin: 0.25rem 0;
}
.tarifs-bandeau-pills span {
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--ga-cream);
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.2);
    padding: 0.25rem 0.85rem;
    border-radius: 100px;
}
.tarifs-bandeau .button {
    background: var(--ga-cream);
    color: var(--ga-brown-dark);
    border-color: var(--ga-cream);
    margin-top: 0.5rem;
    font-weight: 600;
}
.tarifs-bandeau .button:hover {
    background: #fff;
    border-color: #fff;
}

/* ── PAGE TARIFS — FAQ ── */
.tarifs-faq {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.faq-item {
    padding: 1rem 1.25rem;
    cursor: pointer;
}
.faq-item summary {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ga-brown-dark);
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}
.faq-item summary::after {
    content: '+';
    font-size: 1.2rem;
    color: var(--ga-red);
    flex-shrink: 0;
    transition: transform 0.2s;
}
.faq-item[open] summary::after {
    transform: rotate(45deg);
}
.faq-item p {
    font-size: 0.85rem;
    color: var(--ga-muted);
    margin-top: 0.75rem;
    line-height: 1.65;
}

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
    .tarifs-cards-grid { grid-template-columns: 1fr; }
    .parrainage-grid   { grid-template-columns: 1fr; }
    .tarifs-bandeau-inner { flex-direction: column; gap: 1rem; }
}
@media (min-width: 769px) and (max-width: 1024px) {
    .tarifs-cards-grid { grid-template-columns: 1fr 1fr; }
}
