/* ============================================================
   Éclosions Brutes — Direction artistique « émotion fleurale »
   Palette glaçure céramique : émail, vert profond, terre, tournesol.
   ============================================================ */

:root{
  --email:#f7f3ec;        /* fond émail crème */
  --email-2:#efe8db;      /* fond alterné */
  --porcelaine:#ffffff;
  --encre:#20211c;        /* noir chaud / texte */
  --encre-doux:#54564c;
  --vert:#1e5a4c;         /* glaçure vert profond */
  --vert-clair:#6e8b7e;   /* sauge */
  --terre:#c16e4a;        /* terracotta */
  --or:#e0a93b;           /* tournesol / ocre */
  --pierre:#b8b2a6;       /* gris pierre */
  --filet:rgba(32,33,28,.10);

  --serif:"Fraunces","Cormorant Garamond",Georgia,serif;
  --sans:"Mulish",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

  --rythme:clamp(3rem,7vw,6rem);
  --rayon:14px;
  --ombre:0 18px 50px -28px rgba(32,33,28,.45);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--encre);
  background:var(--email);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--vert);text-decoration:none;transition:color .2s}
a:hover{color:var(--terre)}

h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:.4px;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,6vw,4.4rem)}
h2{font-size:clamp(1.8rem,4vw,2.8rem)}
em{font-style:italic}

.eb-skip{position:absolute;left:-9999px}
.eb-skip:focus{left:1rem;top:1rem;background:var(--vert);color:#fff;padding:.6rem 1rem;border-radius:8px;z-index:100}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

.eb-wrap{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem}
.eb-link{font-family:var(--sans);font-weight:600;color:var(--vert)}

/* ---------- Header ---------- */
.eb-header{position:sticky;top:0;z-index:40;background:rgba(247,243,236,.86);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--filet)}
.eb-header__inner{max-width:1180px;margin:0 auto;padding:.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.eb-header .custom-logo{max-height:64px;width:auto}
.eb-brand__txt{display:flex;flex-direction:row;align-items:center;gap:.65rem;line-height:1}
.eb-brand__mark{display:inline-flex;flex:0 0 auto}
.eb-brand__mark svg{display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.eb-brand__txt:hover .eb-brand__mark svg{transform:rotate(72deg)}
.eb-brand__words{display:flex;flex-direction:column;line-height:1}
.eb-brand__name{font-family:var(--serif);font-size:1.7rem;color:var(--encre)}
.eb-brand__name--it{font-style:italic;font-weight:300;color:var(--vert);margin-top:-2px}
.eb-brand__sub{font-size:.62rem;letter-spacing:.32em;text-transform:uppercase;color:var(--pierre);margin-top:4px}

.eb-menu{display:flex;gap:1.8rem;list-style:none;margin:0;padding:0;align-items:center}
.eb-menu a{font-family:var(--sans);font-weight:600;font-size:.95rem;color:var(--encre);position:relative;padding:.2rem 0}
.eb-menu a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:2px;background:var(--terre);transition:width .25s}
.eb-menu a:hover::after,.eb-menu .current-menu-item a::after{width:100%}
.eb-menu__cta,.eb-menu .eb-menu__cta{background:var(--vert);color:#fff!important;padding:.5rem 1.1rem;border-radius:999px}
.eb-menu__cta::after{display:none}
.eb-menu__cta:hover{background:var(--terre)}
.eb-nav__toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:.4rem}
.eb-nav__toggle span{display:block;width:26px;height:2px;background:var(--encre);transition:.25s}

/* ---------- Hero ---------- */
.eb-hero{position:relative;overflow:hidden;background:
  radial-gradient(120% 90% at 80% -10%,rgba(224,169,59,.18),transparent 55%),
  radial-gradient(90% 80% at 0% 100%,rgba(30,90,76,.20),transparent 60%),
  linear-gradient(180deg,var(--email),var(--email-2));
  text-align:center}
.eb-hero__inner{max-width:760px;margin:0 auto;padding:clamp(4rem,11vw,8rem) 1.5rem clamp(3.5rem,8vw,6rem);position:relative;z-index:2}
.eb-eyebrow{font-family:var(--sans);font-weight:700;letter-spacing:.34em;text-transform:uppercase;font-size:.72rem;color:var(--terre);margin:0 0 1.4rem}
.eb-hero__title{margin:0 0 1.2rem}
.eb-hero__title em{color:var(--vert)}
.eb-hero__lead{font-size:1.2rem;color:var(--encre-doux);max-width:34ch;margin:0 auto 2rem}
.eb-hero__cta{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}

/* pétales flottants */
.eb-hero__petals{position:absolute;inset:0;z-index:1;pointer-events:none}
.eb-hero__petals span{position:absolute;width:46px;height:46px;border-radius:60% 0 60% 0;opacity:.5;animation:eb-float 14s ease-in-out infinite}
.eb-hero__petals span:nth-child(1){left:8%;top:18%;background:var(--vert-clair);animation-delay:0s}
.eb-hero__petals span:nth-child(2){left:20%;top:62%;background:var(--or);opacity:.4;animation-delay:-3s}
.eb-hero__petals span:nth-child(3){right:12%;top:24%;background:var(--terre);opacity:.35;animation-delay:-6s}
.eb-hero__petals span:nth-child(4){right:24%;top:66%;background:var(--vert);opacity:.3;animation-delay:-2s}
.eb-hero__petals span:nth-child(5){left:46%;top:10%;background:var(--pierre);opacity:.4;animation-delay:-8s}
.eb-hero__petals span:nth-child(6){right:6%;bottom:14%;background:var(--vert-clair);opacity:.35;animation-delay:-5s}
@keyframes eb-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-26px) rotate(18deg)}}

/* ---------- Sections texte ---------- */
.eb-intro{max-width:720px;margin:0 auto;padding:var(--rythme) 1.5rem;text-align:center;font-family:var(--serif);font-size:clamp(1.3rem,2.6vw,1.7rem);line-height:1.5;color:var(--encre-doux)}
.eb-intro strong{color:var(--vert);font-weight:600}

.eb-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;max-width:1180px;margin:0 auto calc(var(--rythme) / 2);padding:0 1.5rem}
.eb-section-head--galerie{padding:0;margin-bottom:1.4rem}
.eb-section-head--galerie p{max-width:36ch;margin:0;color:var(--encre-doux)}
.eb-collection{max-width:1180px;margin:0 auto;padding:0 1.5rem var(--rythme)}
/* L'en-tête est déjà dans le conteneur paddé : on retire le double padding (corrige le décalage titre/grille). */
.eb-collection .eb-section-head{margin:0 auto 1.6rem;padding:0;max-width:none}

/* ---------- Boutons ---------- */
.eb-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-weight:700;font-size:.98rem;padding:.85rem 1.6rem;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:transform .2s,background .2s,color .2s}
.eb-btn:hover{transform:translateY(-2px)}
.eb-btn--primary{background:var(--vert);color:#fff}
.eb-btn--primary:hover{background:var(--terre);color:#fff}
.eb-btn--ghost{border-color:var(--vert);color:var(--vert)}
.eb-btn--ghost:hover{background:var(--vert);color:#fff}

/* ---------- Bandeau CTA ---------- */
.eb-bandeau{background:
  radial-gradient(90% 120% at 100% 0%,rgba(224,169,59,.22),transparent 50%),
  var(--vert);color:#fff;text-align:center}
.eb-bandeau__inner{max-width:680px;margin:0 auto;padding:var(--rythme) 1.5rem}
.eb-bandeau h2{color:#fff}
.eb-bandeau p{color:rgba(255,255,255,.85);font-size:1.1rem;margin-bottom:1.8rem}
.eb-bandeau .eb-btn--primary{background:var(--or);color:var(--encre)}
.eb-bandeau .eb-btn--primary:hover{background:#fff}

/* ---------- Galerie / cartes produits WooCommerce ---------- */
.woocommerce ul.products,
ul.products.columns-1,ul.products.columns-2,ul.products.columns-3,ul.products.columns-4,ul.products.columns-5,ul.products.columns-6,
ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:1.6rem!important;list-style:none;margin:0!important;padding:0;float:none!important}
/* WooCommerce ajoute un clearfix ::before/::after qui, dans une grille, occupe
   des cases fantômes (1re case vide = décalage de la 1re ligne). On les retire. */
.woocommerce ul.products::before,.woocommerce ul.products::after,
ul.products::before,ul.products::after{content:none!important;display:none!important}
.woocommerce ul.products li.product,
ul.products li.product{position:relative;display:flex;flex-direction:column;background:var(--porcelaine);border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;text-align:left;width:auto!important;min-width:0;margin:0!important;float:none!important;clear:none!important}
ul.products li.product:hover{transform:translateY(-8px);box-shadow:0 30px 64px -26px rgba(32,33,28,.55)}
ul.products li.product > a,
ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto}
ul.products li.product a img{aspect-ratio:4/5;object-fit:cover;width:100%;margin:0;display:block}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:1.25rem;font-weight:500;line-height:1.2;padding:1.2rem 1.4rem .15rem;margin:0;color:var(--encre)}
.woocommerce ul.products li.product .price,
ul.products li.product .price{display:block;box-sizing:border-box;width:100%;padding:.1rem 1.4rem 1.4rem;margin:auto 0 0;color:var(--vert-clair);font-family:var(--sans);font-size:1rem;font-weight:600}
.eb-prix small{color:var(--pierre)}
.eb-prix--demande{color:var(--terre);font-weight:600}

.eb-badge{position:absolute;top:.8rem;left:.8rem;z-index:3;font-family:var(--sans);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.32rem .7rem;border-radius:999px;color:#fff;backdrop-filter:blur(2px)}
.eb-badge--piece_unique{background:var(--vert)}
.eb-badge--sur_commande{background:var(--or);color:var(--encre)}
.eb-badge--vendue{background:var(--encre)}

/* ---------- Fiche produit ---------- */
.eb-commande{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid var(--filet)}
.eb-logistique{list-style:none;padding:0;margin:0 0 1.2rem;display:flex;flex-direction:column;gap:.5rem}
.eb-logistique li{font-family:var(--sans);font-weight:600;font-size:.95rem;display:flex;gap:.5rem;align-items:center}
.eb-logistique .is-on{color:var(--vert)}
.eb-logistique .is-off{color:var(--terre)}
.eb-logistique .is-warn{color:var(--encre-doux)}
.eb-commande .eb-btn{margin:.3rem .5rem .3rem 0}
.eb-vendue{font-family:var(--serif);font-style:italic;color:var(--encre-doux);margin-bottom:1rem}

/* ---------- Pages / prose ---------- */
.eb-page__head{text-align:center;margin-bottom:1.5rem}
.eb-page__hero{border-radius:var(--rayon);overflow:hidden;margin:0 0 2rem;box-shadow:var(--ombre)}
.eb-prose{max-width:680px;margin:0 auto;font-size:1.08rem}
.eb-prose h2,.eb-prose h3{margin-top:1.8em}
.eb-prose img{border-radius:var(--rayon);margin:1.5rem 0}

.eb-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.eb-post-card{background:var(--porcelaine);border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre)}
.eb-post-card h2{font-size:1.3rem;padding:1rem 1rem .3rem}
.eb-post-card__excerpt{padding:0 1rem 1.2rem;color:var(--encre-doux)}
.eb-empty{text-align:center;color:var(--encre-doux);font-family:var(--serif);font-style:italic;padding:3rem 0}

/* ---------- Footer ---------- */
.eb-footer{background:var(--encre);color:rgba(255,255,255,.82);font-family:var(--sans)}
.eb-footer__inner{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
.eb-footer .eb-brand__name{color:#fff;font-size:1.5rem}
.eb-footer__brand p{color:rgba(255,255,255,.6);margin:.5rem 0 0}
.eb-footer a{color:rgba(255,255,255,.85);display:block;margin-bottom:.4rem}
.eb-footer a:hover{color:var(--or)}
.eb-footer__social{margin-top:.6rem;display:flex;gap:1rem}
.eb-footer__social a{display:inline}
.eb-footer__menu{list-style:none;padding:0;margin:0}
.eb-footer__legal{border-top:1px solid rgba(255,255,255,.12);padding:1.2rem 1.5rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;max-width:1180px;margin:0 auto;font-size:.85rem;color:rgba(255,255,255,.55)}
.eb-footer__legal a{display:inline;color:rgba(255,255,255,.75)}

/* ---------- Reveal au scroll ---------- */
.eb-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.eb-reveal.is-in{opacity:1;transform:none}

/* ---------- Page intro (Réalisations & co) ---------- */
.eb-page__intro{text-align:center;background:linear-gradient(180deg,var(--email),var(--email-2));padding:clamp(3rem,8vw,5.5rem) 1.5rem clamp(2rem,5vw,3rem)}
.eb-page__intro-inner{max-width:680px;margin:0 auto}
.eb-page__intro-title{margin:.2em 0 .4em}
.eb-page__intro-lead,.eb-page__intro-text{font-size:1.15rem;color:var(--encre-doux);max-width:46ch;margin:0 auto}

/* ---------- Galerie réalisations (masonry + lightbox) ---------- */
.eb-galerie-section{max-width:1180px;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) 1.5rem}
.eb-galerie-section--alt{background:var(--email-2);max-width:none}
.eb-galerie-section--alt > *{max-width:1180px;margin-left:auto;margin-right:auto}
.eb-galerie{columns:3 280px;column-gap:1.4rem}
.eb-galerie__item{break-inside:avoid;margin:0 0 1.4rem;border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre);background:var(--porcelaine)}
.eb-galerie__link{display:block;position:relative;color:inherit}
.eb-galerie__link img{width:100%;height:auto;display:block;transition:transform .5s ease}
.eb-galerie__item:hover .eb-galerie__link img{transform:scale(1.04)}
.eb-galerie__cap{position:absolute;left:0;right:0;bottom:0;padding:1.4rem 1rem .9rem;display:flex;flex-direction:column;gap:.1rem;color:#fff;background:linear-gradient(0deg,rgba(20,21,16,.78),transparent);opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.eb-galerie__item:hover .eb-galerie__cap,.eb-galerie__link:focus-visible .eb-galerie__cap{opacity:1;transform:none}
.eb-galerie__titre{font-family:var(--serif);font-size:1.2rem}
.eb-galerie__note{font-family:var(--sans);font-size:.82rem;color:rgba(255,255,255,.85)}

.eb-noscroll{overflow:hidden}
.eb-lightbox{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem);background:rgba(18,19,14,.92);backdrop-filter:blur(4px)}
.eb-lightbox.is-open{display:flex}
.eb-lightbox__stage{margin:0;max-width:min(92vw,1100px);max-height:88vh;display:flex;flex-direction:column;align-items:center}
.eb-lightbox__stage img{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:8px;box-shadow:0 30px 80px -30px rgba(0,0,0,.8)}
.eb-lightbox__stage figcaption{color:#fff;text-align:center;margin-top:1rem;font-family:var(--sans);display:flex;flex-direction:column;gap:.15rem}
.eb-lightbox__stage figcaption strong{font-family:var(--serif);font-weight:500;font-size:1.3rem}
.eb-lightbox__stage figcaption span{color:rgba(255,255,255,.7);font-size:.9rem}
.eb-lightbox__close,.eb-lightbox__nav{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;cursor:pointer;border-radius:999px;line-height:1;transition:background .2s}
.eb-lightbox__close:hover,.eb-lightbox__nav:hover{background:rgba(255,255,255,.28)}
.eb-lightbox__close{top:1rem;right:1rem;width:44px;height:44px;font-size:1.7rem}
.eb-lightbox__nav{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:2.2rem}
.eb-lightbox__nav--prev{left:max(1rem,2vw)}
.eb-lightbox__nav--next{right:max(1rem,2vw)}

/* ============================================================
   Pages éditoriales : Atelier, Galerie, Contact (v0.3.0)
   ============================================================ */

.eb-section-head--center{justify-content:center;text-align:center;margin-bottom:calc(var(--rythme) / 2)}
.eb-section-head--center > div{max-width:46ch}
.eb-section-head__sub{color:var(--encre-doux);font-family:var(--sans);font-size:1rem;margin:.6rem 0 0}
.eb-note-edit{font-size:.86rem;color:var(--pierre);border-left:2px solid var(--filet);padding-left:.8rem;margin-top:1.4rem}
.eb-prose--flush{margin-left:0;margin-right:0;max-width:48ch}

/* ---------- Emplacements photo (placeholders) ---------- */
.eb-ph{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;text-align:center;border:1.5px dashed var(--vert-clair);border-radius:var(--rayon);color:var(--vert-clair);background:
  radial-gradient(120% 120% at 0% 0%,rgba(110,139,126,.12),transparent 60%),
  linear-gradient(180deg,var(--porcelaine),var(--email-2));
  aspect-ratio:4/5;min-height:180px;padding:1rem}
.eb-ph__mark{font-size:1.8rem;opacity:.7}
.eb-ph__txt{font-family:var(--sans);font-weight:600;font-size:.85rem;letter-spacing:.04em;color:var(--encre-doux)}
.eb-ph--portrait{aspect-ratio:4/5}
.eb-ph--wide{aspect-ratio:16/10;grid-column:span 2}
.eb-ph--map{aspect-ratio:16/11;border-style:solid;border-color:var(--filet)}
.eb-ph--card{aspect-ratio:4/5}
.eb-ph-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;max-width:1180px;margin:0 auto;padding:0 1.5rem}
.eb-ph-grid--4{grid-template-columns:repeat(4,1fr)}

/* ---------- Section « split » (texte + média) ---------- */
.eb-split{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem;display:grid;grid-template-columns:0.9fr 1.1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.eb-split__media .eb-ph{aspect-ratio:4/5;min-height:340px}
.eb-split__text h2{margin-top:.2em}
.eb-split__text > p{color:var(--encre-doux);font-size:1.08rem}

/* ---------- Process / étapes ---------- */
.eb-process{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem 0}
.eb-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;counter-reset:step}
.eb-step{position:relative;background:var(--porcelaine);border-radius:var(--rayon);padding:1.8rem 1.4rem;box-shadow:var(--ombre)}
.eb-step__num{font-family:var(--serif);font-size:1.1rem;color:var(--terre);font-weight:600;letter-spacing:.1em}
.eb-step h3{font-size:1.25rem;margin:.4rem 0 .4rem}
.eb-step p{color:var(--encre-doux);font-size:.96rem;margin:0}

/* ---------- Valeurs ---------- */
.eb-values{background:var(--email-2);margin-top:var(--rythme)}
.eb-values__inner{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem}
.eb-values__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.eb-value{text-align:center;padding:1.6rem 1.2rem}
.eb-value__icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--vert);color:#fff;font-size:1.7rem;margin-bottom:.9rem}
.eb-value h3{font-size:1.4rem;margin:0 0 .4rem}
.eb-value p{color:var(--encre-doux);margin:0}

/* ---------- Bande galerie (placeholders atelier) ---------- */
.eb-gallery-strip{max-width:1180px;margin:0 auto;padding:var(--rythme) 0}

/* ---------- Galerie WooCommerce vide ---------- */
.eb-galerie-empty{max-width:1180px;margin:0 auto;text-align:center}
.eb-galerie-empty__lead{font-family:var(--serif);font-size:1.3rem;color:var(--encre-doux);max-width:42ch;margin:0 auto 2rem}
.eb-galerie-empty__cta{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}

/* ---------- Contact ---------- */
.eb-contact{max-width:1180px;margin:0 auto;padding:var(--rythme) 1.5rem}
.eb-contact__grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.eb-form-card{background:var(--porcelaine);border-radius:var(--rayon);padding:clamp(1.6rem,4vw,2.6rem);box-shadow:var(--ombre)}
.eb-form-card__title{margin-top:0}
.eb-contact__direct{display:flex;gap:.9rem;flex-wrap:wrap;margin:1.4rem 0}
.eb-info-card{background:var(--vert);color:#fff;border-radius:var(--rayon);padding:clamp(1.6rem,4vw,2.4rem);box-shadow:var(--ombre)}
.eb-info-card__title{color:#fff;margin-top:0}
.eb-info-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.1rem}
.eb-info-list li{display:flex;flex-direction:column;gap:.15rem;line-height:1.45}
.eb-info-list__k{font-family:var(--sans);font-weight:700;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--or)}
.eb-info-list a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}
.eb-info-list a:hover{color:var(--or);border-color:var(--or)}
.eb-info-card__social{display:flex;gap:1.2rem;margin-top:1.6rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.2)}
.eb-info-card__social a{color:#fff;font-weight:600}
.eb-info-card__social a:hover{color:var(--or)}
.eb-contact__info .eb-ph--map{margin-top:1.2rem}

/* ---------- Formulaire (Contact Form 7 / Forminator) habillé ---------- */
.eb-form-card .wpcf7-form p,.eb-form-card form p{margin:0 0 1.1rem}
.eb-form-card label{display:block;font-family:var(--sans);font-weight:600;font-size:.92rem;color:var(--encre);margin-bottom:.35rem}
.eb-form-card input[type=text],
.eb-form-card input[type=email],
.eb-form-card input[type=tel],
.eb-form-card input[type=url],
.eb-form-card input[type=date],
.eb-form-card select,
.eb-form-card textarea{width:100%;font-family:var(--sans);font-size:1rem;color:var(--encre);background:var(--email);border:1.5px solid var(--filet);border-radius:10px;padding:.8rem 1rem;transition:border-color .2s,box-shadow .2s}
.eb-form-card textarea{min-height:140px;resize:vertical}
.eb-form-card input:focus,
.eb-form-card select:focus,
.eb-form-card textarea:focus{outline:none;border-color:var(--vert);box-shadow:0 0 0 3px rgba(30,90,76,.14)}
.eb-form-card input::placeholder,.eb-form-card textarea::placeholder{color:var(--pierre)}
.eb-form-card input[type=submit],
.eb-form-card button[type=submit],
.eb-form-card .wpcf7-submit{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-weight:700;font-size:1rem;padding:.9rem 1.8rem;border-radius:999px;border:0;background:var(--vert);color:#fff;cursor:pointer;transition:transform .2s,background .2s;width:auto}
.eb-form-card input[type=submit]:hover,
.eb-form-card .wpcf7-submit:hover{background:var(--terre);transform:translateY(-2px)}
.eb-form-card .wpcf7-not-valid-tip{color:var(--terre);font-size:.85rem}
.eb-form-card .wpcf7-response-output{border-radius:10px;border-width:1.5px;padding:.8rem 1rem;font-size:.92rem;margin:1rem 0 0}

/* ---------- Responsive (pages éditoriales) ---------- */
@media(max-width:860px){
  .eb-split{grid-template-columns:1fr}
  .eb-split__media{order:-1}
  .eb-steps{grid-template-columns:repeat(2,1fr)}
  .eb-values__grid{grid-template-columns:1fr;gap:.8rem}
  .eb-contact__grid{grid-template-columns:1fr}
  .eb-ph-grid,.eb-ph-grid--4{grid-template-columns:repeat(2,1fr)}
  .eb-ph--wide{grid-column:span 2}
}
@media(max-width:480px){
  .eb-steps{grid-template-columns:1fr}
  .eb-ph-grid,.eb-ph-grid--4{grid-template-columns:1fr}
  .eb-ph--wide{grid-column:auto}
  .eb-contact__direct{flex-direction:column}
  .eb-contact__direct .eb-btn{width:100%;justify-content:center}
}

/* ============================================================
   Galerie WooCommerce soignée + animations (v0.4.0)
   ============================================================ */

/* La boutique/galerie reprend le rythme éditorial du site (largeur contenue). */
.woocommerce-page .eb-main #primary,
.woocommerce-page .eb-main .content-area,
.woocommerce-page .eb-main > .woocommerce{max-width:1180px;width:100%;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) 1.5rem}
.woocommerce-products-header{text-align:center;max-width:680px;margin:0 auto 2.4rem}
.woocommerce-products-header__title{margin:0}
.woocommerce-products-header::before{content:"Le jardin de céramique";display:block;font-family:var(--sans);font-weight:700;letter-spacing:.34em;text-transform:uppercase;font-size:.72rem;color:var(--terre);margin-bottom:1rem}
.eb-shop-intro{color:var(--encre-doux);font-family:var(--serif);font-size:1.2rem;line-height:1.5;max-width:46ch;margin:.8rem auto 0}
/* Tri : select custom, soigné. */
.woocommerce .woocommerce-ordering{margin:0 0 2rem;display:flex;justify-content:flex-end}
.woocommerce .woocommerce-ordering select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-family:var(--sans);font-weight:600;font-size:.9rem;color:var(--encre);padding:.7rem 2.6rem .7rem 1.2rem;border:1.5px solid var(--filet);border-radius:999px;background-color:var(--porcelaine);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231e5a4c' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.1rem center;cursor:pointer;box-shadow:var(--ombre);transition:border-color .2s,box-shadow .2s}
.woocommerce .woocommerce-ordering select:hover{border-color:var(--vert-clair)}
.woocommerce .woocommerce-ordering select:focus{outline:none;border-color:var(--vert);box-shadow:0 0 0 3px rgba(30,90,76,.14)}
.woocommerce-breadcrumb{max-width:1200px;margin:0 auto;padding:1.4rem 1.5rem 0;font-family:var(--sans);font-size:.82rem;color:var(--pierre)}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:.5rem;justify-content:center;margin-top:2.4rem}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{border-radius:999px;background:var(--porcelaine);box-shadow:var(--ombre);padding:.5rem .9rem}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--vert);color:#fff}

/* ---------- Animations au scroll (révélation rapide + léger décalage) ---------- */
.eb-reveal{opacity:0;transform:translateY(16px);transition:opacity .45s ease-out,transform .45s ease-out}
.eb-reveal.is-in{opacity:1;transform:none}
/* Décalage progressif léger des cartes d'une même grille (max ~.15s). */
ul.products li.product.eb-reveal:nth-child(4n+2){transition-delay:.05s}
ul.products li.product.eb-reveal:nth-child(4n+3){transition-delay:.1s}
ul.products li.product.eb-reveal:nth-child(4n+4){transition-delay:.15s}
.eb-galerie__item.eb-reveal:nth-child(3n+2){transition-delay:.05s}
.eb-galerie__item.eb-reveal:nth-child(3n+3){transition-delay:.1s}
.eb-value.eb-reveal:nth-child(2){transition-delay:.06s}
.eb-value.eb-reveal:nth-child(3){transition-delay:.12s}
.eb-step.eb-reveal:nth-child(2){transition-delay:.05s}
.eb-step.eb-reveal:nth-child(3){transition-delay:.1s}
.eb-step.eb-reveal:nth-child(4){transition-delay:.15s}

/* ---------- Survols soignés ---------- */
.eb-value,.eb-step{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.eb-step:hover{transform:translateY(-6px);box-shadow:0 26px 60px -28px rgba(32,33,28,.5)}
.eb-value:hover .eb-value__icon{transform:translateY(-4px) rotate(-6deg)}
.eb-value__icon{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.eb-ph{transition:border-color .3s,color .3s,background .3s}
.eb-ph:hover{border-color:var(--terre);color:var(--terre)}
.eb-btn{will-change:transform}
.eb-link{position:relative}
.eb-link::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--terre);transition:width .3s}
.eb-link:hover::after{width:100%}

/* ---------- Responsive ---------- */
@media(max-width:980px){
  .eb-footer__inner{grid-template-columns:1fr 1fr}
  ul.products,.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}
  .eb-posts{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .eb-nav__toggle{display:flex;position:relative;z-index:60}
  /* Menu mobile : panneau hors écran quand fermé, sans calque invisible au-dessus du header. */
  .eb-menu{position:fixed;left:0;right:0;top:0;flex-direction:column;align-items:flex-start;background:var(--email);padding:5rem 1.6rem 1.8rem;gap:1.2rem;border-bottom:1px solid var(--filet);transform:translateY(calc(-100% - 2px));opacity:0;visibility:hidden;pointer-events:none;transition:transform .3s ease,opacity .2s ease,visibility 0s linear .3s;box-shadow:var(--ombre);z-index:30;max-height:100vh;overflow-y:auto}
  .eb-menu.is-open{transform:none;opacity:1;visibility:visible;pointer-events:auto;z-index:50;transition:transform .3s ease,opacity .2s ease}
  .eb-menu a{font-size:1.15rem}
  ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important}
  .eb-galerie{columns:2 160px;column-gap:1rem}
  .eb-galerie__item{margin-bottom:1rem}
  /* Sur tactile, pas de survol : la légende reste lisible en permanence. */
  .eb-galerie__cap{opacity:1;transform:none;padding-top:2rem}
  .eb-footer__inner{grid-template-columns:1fr}
  .eb-posts{grid-template-columns:1fr}
  .eb-lightbox__nav{width:46px;height:46px;font-size:1.8rem}
}
@media(max-width:420px){
  /* La galerie reste une vraie grille (2 colonnes), pas des cartes géantes empilées. */
  ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  ul.products li.product .woocommerce-loop-product__title{font-size:1rem;padding:.7rem .8rem .1rem}
  .woocommerce ul.products li.product .price,
  ul.products li.product .price{padding:.05rem .8rem .8rem;font-size:.9rem}
  .eb-galerie{columns:2 140px;column-gap:.8rem}
  .woocommerce .woocommerce-ordering{justify-content:stretch}
  .woocommerce .woocommerce-ordering select{width:100%}
  .eb-hero__cta{flex-direction:column}
  .eb-hero__cta .eb-btn{width:100%;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto}
  .eb-reveal{opacity:1;transform:none}
}
