/*
Theme Name:   Pierre & Âme
Theme URI:    https://example.com/pierre-et-ame
Author:       Pierre & Âme
Description:  Thème WordPress autonome pour boutique de bracelets en pierres naturelles (lithothérapie). Conçu pour WooCommerce : catalogue, fiche produit, panier, commande, compte. Élégant, chaleureux, entièrement personnalisable (Apparence → Personnaliser). Aucun thème parent requis.
Version:      3.16.0
Requires at least: 6.0
Requires PHP: 7.4
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  pierre-et-ame
Tags:         e-commerce, woocommerce, two-columns, custom-colors, custom-menu, featured-images, translation-ready
*/

/* =========================================================================
   0. RESET & BASES
   ========================================================================= */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0;
  font-family:var(--pa-body);
  color:var(--pa-ink);
  background:var(--pa-bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--pa-accent); text-decoration:none; }
a:hover{ color:var(--pa-accent-deep); }
button{ font-family:inherit; }
h1,h2,h3,h4{ font-family:var(--pa-heading); font-weight:600; color:var(--pa-ink); letter-spacing:-.01em; line-height:1.1; }
::selection{ background:rgba(176,118,79,.22); }
.pa-container{ width:100%; max-width:1480px; margin:0 auto; padding:0 32px; }
.screen-reader-text{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.pa-sronly{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

/* =========================================================================
   1. JETONS (surchargés par l'Outil de personnalisation, voir functions.php)
   ========================================================================= */
:root{
  --pa-accent:#b0764f;
  --pa-accent-deep:#8a5a38;
  --pa-bg:#f4efe6;
  --pa-surface:#ffffff !important;
  --pa-ink:#2a241e;
  --pa-muted:#8c8273;
  --pa-soft:#f1ece1;
  --pa-line:rgba(60,45,30,.13);
  --pa-heading:'Cormorant Garamond',Georgia,serif;
  --pa-body:'Hanken Grotesk',system-ui,-apple-system,sans-serif;
  --pa-btn-radius:999px;
  --pa-card-radius:18px;
  --pa-card-border:1px solid transparent;
  --pa-card-shadow:0 20px 44px -26px rgba(70,45,20,.42);
}

/* =========================================================================
   2. BANDEAU PROMO + EN-TÊTE
   ========================================================================= */
.pa-topbar{ background:var(--pa-accent); color:#fdf6ee; }
.pa-topbar__inner{
  display:flex; justify-content:center; align-items:center; gap:38px; flex-wrap:wrap;
  padding:9px 32px; font-size:12px; letter-spacing:.08em; text-transform:uppercase; font-weight:500;
}
.pa-topbar__sep{ opacity:.55; }

.pa-header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,253,248,.85); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--pa-line);
}
.pa-header__inner{ display:flex; align-items:center; gap:34px; padding:16px 32px; background:#fff;}
.pa-logo{ display:inline-flex; align-items:baseline; gap:6px; font-family:var(--pa-heading); font-size:27px; font-weight:600; color:var(--pa-ink); white-space:nowrap; }
.pa-logo span{ color:var(--pa-accent); }
.pa-logo img{ max-height:46px; width:auto; }
.pa-nav{ display:flex; gap:30px; flex:1; }
.pa-nav a{ font-size:14.5px; font-weight:500; color:var(--pa-ink); letter-spacing:.01em; transition:color .2s; }
.pa-nav a:hover,.pa-nav .current-menu-item > a{ color:var(--pa-accent); }
.pa-nav ul{ list-style:none; margin:0; padding:0; display:flex; gap:30px; }
.pa-header__actions{ display:flex; align-items:center; gap:14px; }
.pa-iconbtn{ display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:none; border:none; cursor:pointer; color:var(--pa-ink); transition:background .2s; position:relative; }
.pa-iconbtn:hover{ background:rgba(60,45,30,.06); }
.pa-cart-count{ position:absolute; top:0; right:-2px; min-width:18px; height:18px; padding:0 4px; border-radius:9px; background:var(--pa-accent); color:#fff; font-size:11px; font-weight:700; display:grid; place-items:center; line-height:1; }
.pa-wish-count{ position:absolute; top:0; right:-2px; min-width:18px; height:18px; padding:0 4px; border-radius:9px; background:var(--pa-accent); color:#fff; font-size:11px; font-weight:700; display:grid; place-items:center; line-height:1; }
.pa-wishlist-link.pa-wish-pop svg,.pa-wish.pa-wish-pop svg{ animation:paWishPop .3s ease; }
@keyframes paWishPop{ 0%{transform:scale(1)} 40%{transform:scale(1.32)} 100%{transform:scale(1)} }rid; place-items:center; }
.pa-burger{ display:none; }

/* =========================================================================
   3. BOUTONS & FORMULAIRES (globaux)
   ========================================================================= */
.pa-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce #place_order{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  background:var(--pa-accent)!important; color:#fff!important; border:none;
  border-radius:var(--pa-btn-radius); cursor:pointer;
  font-family:var(--pa-body); font-weight:600; letter-spacing:.02em; font-size:14px;
  padding:12px 24px; transition:filter .2s, transform .2s;
}
.pa-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce #place_order:hover{ filter:brightness(1.07); transform:translateY(-1px); color:#fff; }
.pa-btn--ghost{ background:none!important; color:var(--pa-ink)!important; border:1px solid rgba(60,45,30,.25); }
.pa-btn--ghost:hover{ background:#26211b!important; color:#fff!important; border-color:#26211b; filter:none; }
.pa-btn--light{ background:var(--pa-surface); color:var(--pa-ink); border:1px solid var(--pa-line); }

input[type=text],input[type=email],input[type=search],input[type=tel],input[type=password],input[type=number],textarea,select,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.select2-container .select2-selection{
  font-family:inherit; font-size:14.5px; color:var(--pa-ink);
  background:var(--pa-surface); border:1px solid rgba(60,45,30,.18); border-radius:12px;
  padding:12px 16px; outline:none; transition:border-color .2s, box-shadow .2s;
}
input:focus,textarea:focus,select:focus{ border-color:var(--pa-accent); box-shadow:0 0 0 3px rgba(176,118,79,.14); }

/* =========================================================================
   4. PIED DE PAGE
   ========================================================================= */
.pa-footer{ background:#26211b; color:#d9cfbf; margin-top:80px; }
.pa-footer__grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding:56px 32px 30px; max-width:1280px; margin:0 auto; }
.pa-footer h4{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:#8a8073; font-weight:600; margin:0 0 16px; font-family:var(--pa-body); }
.pa-footer__brand .pa-logo{ color:#fdf6ee; }
.pa-footer p{ font-size:14px; line-height:1.7; color:#b3a896; }
.pa-footer__tagline{ max-width:34ch; margin:14px 0 0; }
.pa-footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.pa-footer ul a{ font-size:14px; color:#d9cfbf; }
.pa-footer ul a:hover{ color:#fff; }
.pa-newsletter{ display:flex; max-width:330px; border:1px solid rgba(255,255,255,.18); border-radius:999px; overflow:hidden; background:rgba(255,255,255,.05); margin-top:18px; }
.pa-newsletter input{ flex:1; background:none; border:none; color:#fdf6ee; padding:13px 18px; border-radius:0; }
.pa-newsletter input::placeholder{ color:#9a9082; }
.pa-newsletter button{ background:var(--pa-accent); color:#fff; border:none; padding:0 22px; font-weight:600; font-size:13.5px; cursor:pointer; white-space:nowrap; }
.pa-newsletter__msg{ font-size:12.5px; color:#e7d9b6; margin:9px 2px 0; min-height:1em; }
.pa-newsletter__msg.is-error{ color:#e6a98f; }
.pa-footer__socials{ display:flex; gap:10px; margin-top:18px; }
.pa-social{ width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.16); color:#d9cfbf; transition:all .18s; }
.pa-social:hover{ background:var(--pa-accent); border-color:var(--pa-accent); color:#fff; }
.pa-footer__bottom{ border-top:1px solid rgba(255,255,255,.1); }
.pa-footer__bottom .pa-container{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:18px; padding-bottom:18px; font-size:12.5px; color:#8a8073; }
.pa-footer__bottom .pa-footer__legal{ list-style:none; margin:0; padding:0; display:flex; flex-direction:row; flex-wrap:wrap; gap:18px; }
.pa-footer__legal a{ font-size:12.5px; color:#8a8073; }
.pa-footer__legal a:hover{ color:#d9cfbf; }

/* =========================================================================
   5. ACCUEIL (front-page)
   ========================================================================= */
.pa-hero{ position:relative; overflow:hidden; }
.pa-hero__inner{ display:grid; grid-template-columns:1fr 1.1fr; gap:48px; align-items:center; padding:64px 32px; max-width:1280px; margin:0 auto; }
.pa-hero h1{ font-size:clamp(44px,5.5vw,72px); margin:0 0 18px; }
.pa-hero p{ font-size:17px; color:var(--pa-muted); max-width:46ch; margin:0 0 28px; line-height:1.65; }
.pa-hero__media{ aspect-ratio:16/9; border-radius:24px; overflow:hidden; background:repeating-linear-gradient(45deg,#ece3d3,#ece3d3 12px,#e5dac6 12px,#e5dac6 24px); }
.pa-hero__media img{ width:100%; height:100%; object-fit:cover; }
.pa-hero__media video,.pa-hero__video{ width:100%; height:100%; object-fit:cover; display:block; }
.pa-section{ padding:56px 0; }
.pa-section__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap; margin-bottom:30px; }
.pa-eyebrow{ font-size:15px; letter-spacing:.1em; text-transform:uppercase; color:var(--pa-accent); font-weight:600; margin:0 0 6px; }
.pa-section h2{ font-size:clamp(30px,3.4vw,44px); margin:0; }
.pa-intentions-wrap{ position:relative; }
.pa-carousel-arrow{ position:absolute; top:calc(50% - 9px); transform:translateY(-50%); z-index:5; width:44px; height:44px; border-radius:50%; display:grid; place-items:center; background:var(--pa-surface); color:var(--pa-ink); border:1px solid var(--pa-line); box-shadow:0 8px 22px -10px rgba(70,45,20,.45); cursor:pointer; transition:opacity .2s, background .2s, transform .15s; }
.pa-carousel-arrow:hover{ background:var(--pa-accent); color:#fff; border-color:var(--pa-accent); }
.pa-carousel-arrow:active{ transform:translateY(-50%) scale(.92); }
.pa-carousel-arrow--prev{ left:-14px; }
.pa-carousel-arrow--next{ right:-14px; }
.pa-carousel-arrow[hidden],.pa-carousel-arrow.is-disabled{ opacity:0; pointer-events:none; }
.pa-intentions{ display:flex; gap:13px; flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x proximity; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; padding-bottom:6px; scrollbar-width:thin; scrollbar-color:var(--pa-accent) transparent; }
.pa-intentions::-webkit-scrollbar{ height:6px; }
.pa-intentions::-webkit-scrollbar-thumb{ background:rgba(60,45,30,.25); border-radius:999px; }
.pa-intentions::-webkit-scrollbar-track{ background:transparent; }
.pa-intention{ display:flex; flex-direction:column; align-items:center; gap:9px; flex:0 0 auto; min-width:118px; scroll-snap-align:start; padding:20px 18px 16px; border-radius:16px; background:var(--pa-surface); border:1.5px solid var(--pa-line); transition:all .2s; }
.pa-intention:hover{ transform:translateY(-4px); border-color:var(--pa-accent); }
.pa-intention__dot{ width:34px; height:34px; border-radius:50%; box-shadow:0 2px 5px rgba(60,40,20,.2); }
.pa-intention__name{ font-family:var(--pa-heading); font-size:18px; font-weight:600; }
.pa-intention__count{ font-size:11.5px; color:var(--pa-muted); font-weight:500; }
.pa-reassure-strip{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; padding:40px 32px; max-width:1280px; margin:0 auto; border-top:1px solid var(--pa-line); border-bottom:1px solid var(--pa-line); }
.pa-reassure-strip .item{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; }
.pa-reassure-strip svg{ color:var(--pa-accent); }
.pa-reassure-strip h4{ margin:0; font-family:var(--pa-heading); font-size:19px; }
.pa-reassure-strip p{ margin:0; font-size:13px; color:var(--pa-muted); }

/* --- Notre rituel --- */
.pa-ritual__grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.pa-ritual__media{ position:relative; aspect-ratio:4/5; border-radius:22px; overflow:hidden; background:repeating-linear-gradient(45deg,#ece3d3,#ece3d3 12px,#e5dac6 12px,#e5dac6 24px); display:grid; place-items:center; }
.pa-ritual__media img{ width:100%; height:100%; object-fit:cover; }
.pa-ph{ font-family:monospace; font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; color:#a89a82; background:rgba(255,253,248,.8); padding:7px 13px; border-radius:999px; }
.pa-ritual__intro{ font-size:16px; line-height:1.7; color:var(--pa-muted); margin:18px 0 26px; max-width:44ch; }
.pa-ritual__steps{ display:flex; flex-direction:column; }
.pa-ritual__step{ display:flex; gap:18px; align-items:flex-start; padding:16px 0; border-top:1px solid var(--pa-line); }
.pa-ritual__ico{ flex:none; width:46px; height:46px; border-radius:50%; display:grid; place-items:center; background:var(--pa-surface); border:1px solid var(--pa-line); color:var(--pa-accent); }
.pa-ritual__step-t{ margin:0; font-family:var(--pa-heading); font-size:21px; font-weight:600; color:var(--pa-ink); line-height:1.1; }
.pa-ritual__step-b{ margin:3px 0 0; font-size:14px; color:var(--pa-muted); line-height:1.55; }

/* --- Quiz « Trouvez votre pierre » --- */
.pa-quiz{ background:linear-gradient(165deg,#fffdf8,#f3ece0); border:1px solid var(--pa-line); border-radius:26px; padding:54px 56px; box-shadow:0 30px 60px -40px rgba(70,45,20,.4); }
.pa-quiz__head{ display:flex; align-items:center; gap:14px; margin-bottom:8px; }
.pa-quiz__eyebrow{ font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--pa-accent); font-weight:600; }
.pa-quiz__rule{ flex:1; height:1px; background:rgba(60,45,30,.14); }
.pa-quiz__progress-label{ font-size:12.5px; color:var(--pa-muted); }
.pa-quiz__bar{ height:4px; border-radius:999px; background:rgba(60,45,30,.1); overflow:hidden; margin-bottom:34px; }
.pa-quiz__bar-fill{ height:100%; background:var(--pa-accent); border-radius:999px; width:0; transition:width .4s cubic-bezier(.2,.7,.3,1); }
.pa-quiz__q{ font-family:var(--pa-heading); font-weight:600; font-size:clamp(28px,3.4vw,42px); line-height:1.08; margin:0 0 28px; max-width:18ch; color:var(--pa-ink); animation:paFadeUp .35s ease both; }
.pa-quiz__opts{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:14px; animation:paFadeUp .35s ease both; }
.pa-quiz__opt{ text-align:left; cursor:pointer; background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:16px; padding:20px; color:var(--pa-ink); transition:all .18s; }
.pa-quiz__opt:hover{ background:#fff; border-color:var(--pa-accent); transform:translateY(-3px); box-shadow:0 14px 30px -18px rgba(70,45,20,.4); }
.pa-quiz__opt-top{ display:flex; align-items:center; gap:13px; }
.pa-quiz__dot{ flex:none; width:36px; height:36px; border-radius:50%; box-shadow:0 2px 6px rgba(60,40,20,.22); }
.pa-quiz__opt-label{ font-family:var(--pa-heading); font-size:23px; font-weight:600; line-height:1; }
.pa-quiz__opt-hint{ display:block; margin-top:10px; font-size:13px; color:var(--pa-muted); line-height:1.45; }
.pa-quiz__back{ margin-top:26px; background:none; border:none; color:var(--pa-muted); cursor:pointer; font-size:13.5px; padding:0; display:inline-flex; align-items:center; gap:7px; }
.pa-quiz__back:hover{ color:var(--pa-ink); }
.pa-quiz__result{ display:grid; grid-template-columns:1.1fr 1fr; gap:44px; align-items:center; animation:paFadeUp .4s ease both; }
.pa-quiz__result-name{ font-family:var(--pa-heading); font-weight:600; font-size:clamp(38px,5vw,60px); line-height:1; margin:0; color:var(--pa-ink); }
.pa-quiz__result-desc{ font-size:16px; line-height:1.7; color:var(--pa-muted); margin:18px 0 26px; max-width:42ch; }
.pa-quiz__chips{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:30px; }
.pa-quiz__chips span{ font-size:13px; color:#3a342c; background:var(--pa-surface); border:1px solid var(--pa-line); padding:7px 14px; border-radius:999px; }
.pa-quiz__actions{ display:flex; gap:13px; flex-wrap:wrap; }
.pa-quiz__ring-wrap{ display:grid; place-items:center; }
.pa-quiz__ring-halo{ position:relative; width:260px; height:260px; border-radius:50%; display:grid; place-items:center; }
@keyframes paFadeUp{ from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:none} }
@media (max-width:860px){
	.pa-ritual__grid{ grid-template-columns:1fr; gap:28px; }
	.pa-quiz{ padding:34px 24px; }
	.pa-quiz__result{ grid-template-columns:1fr; gap:24px; }
	.pa-quiz__ring-wrap{ order:-1; }
}

/* --- Nos engagements --- */
.pa-values__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.pa-values__card{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:30px 28px; }
.pa-values__ico{ display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:var(--pa-soft); color:var(--pa-accent); margin-bottom:18px; }
.pa-values__t{ font-family:var(--pa-heading); font-size:24px; font-weight:600; margin:0 0 8px; color:var(--pa-ink); }
.pa-values__b{ margin:0; font-size:14.5px; line-height:1.6; color:var(--pa-muted); }

/* --- Notre histoire --- */
.pa-about__grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.pa-about__media{ position:relative; aspect-ratio:1/1; border-radius:22px; overflow:hidden; background:repeating-linear-gradient(45deg,#ece3d3,#ece3d3 12px,#e5dac6 12px,#e5dac6 24px); display:grid; place-items:center; }
.pa-about__media img{ width:100%; height:100%; object-fit:cover; }
.pa-about__p{ font-size:16px; line-height:1.75; color:#544c41; margin:18px 0 0; max-width:48ch; }
.pa-about__sign{ font-family:var(--pa-heading); font-style:italic; font-size:22px; color:var(--pa-accent); margin:22px 0 22px; }
/* Variante sans image : bloc éditorial centré */
.pa-about--noimg .pa-about__grid{ grid-template-columns:1fr; max-width:760px; margin:0 auto; text-align:center; }
.pa-about--noimg .pa-about__p{ max-width:none; margin-left:auto; margin-right:auto; }
.pa-about--noimg .pa-eyebrow{ margin-bottom:4px; }

/* --- FAQ --- */
.pa-faq__list{ max-width:840px; }
.pa-faq__item{ border-top:1px solid var(--pa-line); }
.pa-faq__item:last-child{ border-bottom:1px solid var(--pa-line); }
.pa-faq__item summary{ display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 2px; cursor:pointer; list-style:none; font-family:var(--pa-heading); font-size:22px; font-weight:600; color:var(--pa-ink); }
.pa-faq__item summary::-webkit-details-marker{ display:none; }
.pa-faq__plus{ flex:none; font-size:26px; font-weight:400; color:var(--pa-muted); transition:transform .2s; }
.pa-faq__item[open] .pa-faq__plus{ transform:rotate(45deg); }
.pa-faq__item p{ margin:0 2px 22px; font-size:15px; line-height:1.7; color:var(--pa-muted); max-width:70ch; }

/* --- Newsletter --- */
.pa-news__card{ background:#26211b; border-radius:24px; padding:48px 52px; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.pa-news__text h2{ color:#fdf6ee; font-size:clamp(28px,3.2vw,40px); margin:6px 0 0; }
.pa-news__eyebrow{ color:#caa86e; margin:0; }
.pa-news__p{ color:#c9beae; font-size:15.5px; line-height:1.7; margin:14px 0 0; max-width:42ch; }
.pa-news__form{ width:100%; }
.pa-news__row{ display:flex; gap:10px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.18); border-radius:999px; padding:6px 6px 6px 6px; }
.pa-news__row input{ flex:1; background:none; border:none; outline:none; color:#fdf6ee; padding:12px 18px; font-family:inherit; font-size:15px; border-radius:999px; }
.pa-news__row input::placeholder{ color:#9a9082; }
.pa-news__row .pa-btn{ white-space:nowrap; }
.pa-news__msg{ margin:12px 2px 0; font-size:14px; min-height:1.2em; color:#e7d9b6; }
.pa-news__msg.is-error{ color:#e6a98f; }
.pa-news__legal{ margin:10px 2px 0; font-size:12px; color:#8a8073; }
@media (max-width:860px){
	.pa-values__grid{ grid-template-columns:1fr; }
	.pa-about__grid{ grid-template-columns:1fr; gap:28px; }
	.pa-about__media{ order:-1; }
	.pa-news__card{ grid-template-columns:1fr; gap:24px; padding:32px 24px; }
	.pa-news__row{ flex-direction:column; border-radius:18px; }
	.pa-news__row input{ text-align:center; }
}

/* =========================================================================
   6. PAGES GÉNÉRIQUES / ARTICLES
   ========================================================================= */
.pa-page-hero{ padding:48px 0 8px; }
.pa-page-hero h1{ font-size:clamp(36px,4.5vw,58px); margin:0; }
.pa-breadcrumb,.woocommerce .woocommerce-breadcrumb{ font-size:12.5px; letter-spacing:.04em; color:var(--pa-muted); margin:14px 0 22px; }
.pa-entry{ max-width:760px; margin:0 auto; padding:24px 32px 40px; font-size:16.5px; }
.pa-entry h2{ font-size:30px; margin:32px 0 12px; }
.pa-entry p{ margin:0 0 18px; }
.pa-prose a{ text-decoration:underline; }

/* =========================================================================
   7. WOOCOMMERCE — pleine largeur (pas de sidebar imposée)
   ========================================================================= */
.woocommerce-page .pa-shop-wrap,.woocommerce .pa-shop-wrap{ max-width:1280px; margin:0 auto; padding:0 32px; }
.woocommerce .woocommerce-result-count{ color:var(--pa-muted); font-size:14px; margin:0; }
.woocommerce .woocommerce-ordering select{ border-radius:999px; padding:9px 16px; }
.woocommerce-products-header{ padding:48px 0 6px; }
.woocommerce-products-header__title{ font-size:clamp(40px,5vw,64px)!important; margin:0 0 8px; }

/* barre filtres par intention */
.pa-filterwrap{ margin:20px 0 24px; }
.pa-filterwrap__label{ display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--pa-muted); font-weight:600; margin:0 0 11px; }
.pa-filterbar{ display:flex; gap:10px; flex-wrap:wrap; margin:0; align-items:center; }
.pa-filterbar a{ font-size:13.5px; font-weight:600; color:var(--pa-ink); background:var(--pa-surface); border:1px solid var(--pa-line); padding:9px 16px; border-radius:999px; transition:all .15s; }
.pa-filterbar a:hover{ border-color:var(--pa-accent); }
.pa-filterbar a.is-active{ background:#26211b; color:#fff; border-color:#26211b; }
.pa-chip--extra{ display:none; }
.pa-filterwrap.is-expanded .pa-chip--extra{ display:inline-block; }
.pa-filter-more{ font-size:13.5px; font-weight:600; color:var(--pa-accent); background:none; border:none; cursor:pointer; padding:9px 8px; }
.pa-filter-more:hover{ text-decoration:underline; }

.woocommerce .woocommerce-result-count + .woocommerce-ordering{ margin-bottom:24px; }
.pa-shop-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-bottom:22px; border-bottom:1px solid var(--pa-line); margin-bottom:28px; }

/* grille */
.woocommerce ul.products{
  display:grid!important; grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:24px; width:100%; max-width:100%; margin:0 0 70px!important; padding:0; list-style:none;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{ content:none!important; display:none!important; }
.woocommerce ul.products li.product{
  position:relative; background:var(--pa-surface); border-radius:var(--pa-card-radius);
  border:var(--pa-card-border); box-shadow:var(--pa-card-shadow); overflow:hidden;
  width:auto!important; margin:0!important; padding:0!important;
  display:flex; flex-direction:column; transition:transform .32s cubic-bezier(.2,.7,.3,1), box-shadow .32s;
}
.woocommerce ul.products li.product:hover{ transform:translateY(-7px); box-shadow:0 30px 56px -28px rgba(70,45,20,.5); }
.pa-card__media{ position:relative; }
.pa-card__imglink{ display:block; }
.woocommerce ul.products li.product .pa-card__media img{ margin:0!important; border-radius:0; display:block; aspect-ratio:1/1; object-fit:cover; width:100%; }
.pa-card-cat{ position:absolute; top:14px; left:14px; z-index:2; font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; font-weight:600; color:var(--pa-ink); background:rgba(255,253,248,.82); padding:5px 11px; border-radius:999px; }
.pa-card-sale{ position:absolute; top:14px; right:54px; z-index:2; font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; font-weight:700; color:#fff; background:var(--pa-accent); padding:5px 11px; border-radius:999px; }
.pa-card-actions{ position:absolute; top:11px; right:11px; z-index:2; display:flex; flex-direction:column; gap:8px; }
.pa-card-icon{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:rgba(255,253,248,.85); border:none; cursor:pointer; color:#7a7064; transition:background .2s,color .2s; }
.pa-card-icon:hover{ background:#fff; color:var(--pa-accent); }
.pa-card-icon.is-wished{ color:var(--pa-accent); }
.pa-card-icon.pa-wish.is-wished svg,.pa-wishlist-link.is-wished svg{ fill:var(--pa-accent); stroke:var(--pa-accent); }

/* --- Page « Mes favoris » --- */
.pa-wishlist-empty{ text-align:center; padding:64px 20px; background:var(--pa-surface); border:1px dashed rgba(60,45,30,.2); border-radius:22px; }
.pa-wishlist-empty__ico{ width:64px; height:64px; border-radius:50%; background:var(--pa-soft); display:grid; place-items:center; margin:0 auto 18px; color:var(--pa-accent); }
.pa-wishlist-empty h2{ font-family:var(--pa-heading); font-size:30px; font-weight:600; margin:0 0 8px; }
.pa-wishlist-empty p{ font-size:15px; color:var(--pa-muted); max-width:42ch; margin:0 auto 22px; }
/* bouton favoris sur la fiche produit */
.pa-single-wish{ width:54px; height:54px; border-radius:50%; background:var(--pa-surface); border:1px solid rgba(60,45,30,.2); cursor:pointer; display:grid; place-items:center; color:#7a7064; transition:background .2s,color .2s; flex:none; }
.pa-single-wish:hover{ background:#fff; color:var(--pa-accent); }
.pa-single-wish.is-wished{ color:var(--pa-accent); }
.pa-single-wish.is-wished svg{ fill:var(--pa-accent); stroke:var(--pa-accent); }
.woocommerce div.product form.cart .pa-single-wish{ margin-left:4px; }

/* =========================================================================
   LE JOURNAL — liste + article
   ========================================================================= */
.pa-ph{ background:repeating-linear-gradient(45deg,#ece3d3,#ece3d3 11px,#e5dac6 11px,#e5dac6 22px); display:grid; place-items:center; width:100%; height:100%; }
.pa-ph span{ font-family:monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:#a89a82; background:rgba(255,253,248,.8); padding:5px 10px; border-radius:999px; }
.pa-post-meta{ font-size:13.5px; color:#373129; }

/* --- Liste --- */
.pa-journal{ max-width:1280px; margin:0 auto; padding:52px 32px 70px; }
.pa-journal__head{ text-align:center; max-width:680px; margin:0 auto 14px; }
.pa-journal__head h1{ font-size:clamp(42px,5.5vw,64px); line-height:1.02; margin:8px 0 0; }
.pa-journal__intro{ font-size:16.5px; color:var(--pa-muted); line-height:1.6; margin:16px 0 0; }
.pa-journal__filters{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:26px; }
.pa-journal__filters a{ font-size:13px; font-weight:600; color:#3a342c; background:var(--pa-surface); border:1px solid var(--pa-line); padding:9px 16px; border-radius:999px; transition:all .15s; }
.pa-journal__filters a:hover{ border-color:var(--pa-accent); }
.pa-journal__filters a.is-active{ background:#26211b; color:#fff; border-color:#26211b; }

.pa-feature{ display:grid; grid-template-columns:1.15fr 1fr; gap:36px; align-items:center; background:var(--pa-surface); border-radius:22px; overflow:hidden; box-shadow:0 24px 50px -32px rgba(70,45,20,.45); margin:38px 0 30px; text-decoration:none; transition:transform .3s, box-shadow .3s; }
.pa-feature:hover{ transform:translateY(-4px); box-shadow:0 34px 60px -34px rgba(70,45,20,.5); }
.pa-feature__media{ aspect-ratio:4/3; height:100%; }
.pa-feature__media img{ width:100%; height:100%; object-fit:cover; }
.pa-feature__body{ padding:18px 44px 18px 4px; }
.pa-feature__body h2{ font-size:clamp(28px,3.2vw,38px); line-height:1.05; margin:12px 0 0; }
.pa-feature__excerpt{ font-size:15px; color:var(--pa-muted); line-height:1.65; margin:14px 0 16px; }
.pa-feature__more{ display:inline-block; margin-top:18px; font-size:14px; font-weight:600; color:var(--pa-accent); }

.pa-journal__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:8px; }
.pa-postcard{ display:block; background:var(--pa-surface); border-radius:16px; overflow:hidden; box-shadow:0 18px 40px -30px rgba(70,45,20,.4); text-decoration:none; transition:transform .3s, box-shadow .3s; }
.pa-postcard:hover{ transform:translateY(-6px); box-shadow:0 30px 52px -30px rgba(70,45,20,.5); }
.pa-postcard__media{ position:relative; aspect-ratio:3/2; }
.pa-postcard__media img{ width:100%; height:100%; object-fit:cover; }
.pa-postcard__cat{ position:absolute; top:12px; left:12px; font-size:11px; letter-spacing:.04em; text-transform:uppercase; font-weight:600; color:#6a6155; background:rgba(255,253,248,.88); padding:5px 11px; border-radius:999px; }
.pa-postcard__body{ padding:17px 20px 21px; }
.pa-postcard__body h3{ font-size:22px; line-height:1.14; margin:0; color:var(--pa-ink); }
.pa-postcard__excerpt{ font-size:13.5px; color:var(--pa-muted); line-height:1.55; margin:9px 0 12px; }
.pa-journal__pagination{ margin-top:46px; }
.pa-journal__search{ display:flex; align-items:center; gap:9px; max-width:480px; margin:22px auto 0; background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:999px; padding:5px 5px 5px 16px; color:var(--pa-muted); }
.pa-journal__search input[type=search]{ flex:1; border:none; background:none; outline:none; padding:9px 0; font-size:14.5px; color:var(--pa-ink); }
.pa-journal__search button{ background:var(--pa-accent); color:#fff; border:none; border-radius:999px; padding:10px 18px; font-size:13.5px; font-weight:600; cursor:pointer; white-space:nowrap; }
.pa-journal__news{ margin-top:56px; }
.pa-journal__news-card{ background:#26211b; border-radius:24px; padding:48px; text-align:center; color:#fdf6ee; }
.pa-journal__news-eyebrow{ color:#caa86e; }
.pa-journal__news-card h2{ color:#fdf6ee; font-size:clamp(28px,3.4vw,40px); margin:8px 0 0; }
.pa-journal__news-sub{ font-size:15.5px; color:#c9beae; margin:14px auto 22px; max-width:46ch; }
.pa-journal__news .pa-newsletter-wrap{ max-width:440px; margin:0 auto; }
.pa-newsletter--light{ margin:0 auto; }
/* Pagination élégante */
.pa-journal__pagination .page-numbers{ display:inline-flex; align-items:center; justify-content:center; min-width:42px; height:42px; padding:0 6px; border-radius:50%; background:var(--pa-surface); border:1px solid var(--pa-line); color:var(--pa-ink); font-size:14px; text-decoration:none; transition:all .15s; }
.pa-journal__pagination a.page-numbers:hover{ border-color:var(--pa-accent); color:var(--pa-accent); }
.pa-journal__pagination .page-numbers.current{ background:#26211b; color:#fff; border-color:#26211b; }
.pa-journal__pagination .page-numbers.dots{ border:none; background:none; }
.pa-journal__pagination nav{ display:flex; justify-content:center; }
.pa-journal__pagination .nav-links{ display:flex; gap:8px; flex-wrap:wrap; justify-content:center; }
.pa-journal__empty{ text-align:center; color:var(--pa-muted); padding:60px 0; }

/* --- Article --- */
.pa-article__hero{ max-width:860px; margin:0 auto; padding:46px 32px 0; text-align:center; }
.pa-article__title{ font-size:clamp(36px,5vw,56px); line-height:1.04; margin:14px 0 0; }
.pa-article__lead{ font-size:18px; color:var(--pa-muted); line-height:1.6; max-width:60ch; margin:18px auto 0; }
.pa-article__byline{ display:flex; align-items:center; justify-content:center; gap:14px; margin:26px 0 30px; }
.pa-article__avatar{ width:42px; height:42px; border-radius:50%; }
.pa-article__author{ margin:0; font-size:14px; font-weight:600; }
.pa-article__cover{ max-width:1080px; margin:0 auto; padding:0 32px; }
.pa-article__cover img{ width:100%; aspect-ratio:21/9; object-fit:cover; border-radius:22px; }
.pa-article__layout{ max-width:1480px !important; margin:0 auto; padding:44px 32px 20px; display:grid; grid-template-columns:130px 1fr; gap:48px; align-items:start; }
.pa-article__aside{ position:sticky; top:96px; display:flex; flex-direction:column; gap:24px; }
.pa-aside-label{ font-size:15.5px !important; letter-spacing:.1em; text-transform:uppercase; color:#26221c !important; font-weight:600; margin:0 0 12px; }
.pa-toc__list{ display:flex; flex-direction:column; gap:9px; border-left:2px solid rgba(60,45,30,.12); padding-left:14px; }
.pa-toc__link{ font-size:15.5px !important; color:var(--pa-muted); text-decoration:none; line-height:1.35; transition:color .15s; }
.pa-toc__link.is-sub{ padding-left:12px; font-size:13px; }
.pa-toc__link:hover{ color:var(--pa-ink); }
.pa-toc__link.is-active{ color:var(--pa-accent); font-weight:600; }
.pa-share__row{ display:flex; gap:9px; }
.pa-share__btn{ width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:var(--pa-surface); border:1px solid var(--pa-line); color:#6a6155; transition:all .18s; }
.pa-share__btn:hover,.pa-share__btn.is-copied{ background:var(--pa-accent); color:#fff; border-color:var(--pa-accent); }
.pa-pshare{ display:flex; align-items:center; gap:13px; margin:18px 0 0; padding-top:18px; border-top:1px solid var(--pa-line); }
.pa-pshare__label{ font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--pa-muted); font-weight:600; }
.pa-article__body{ max-width:1080px !important; }
.pa-prose{ font-size:16.5px; line-height:1.8; color:#3a342c; }
.pa-prose > p:first-child{ font-size:17.5px; }
.pa-prose p{ margin:0 0 18px; }
.pa-prose h2{ font-family:var(--pa-heading); font-size:30px; font-weight:600; margin:34px 0 12px; }
.pa-prose h3{ font-family:var(--pa-heading); font-size:23px; font-weight:600; margin:26px 0 10px; }
.pa-prose img{ border-radius:14px; margin:22px 0; }
.pa-prose ul,.pa-prose ol{ margin:0 0 18px; padding-left:22px; }
.pa-prose li{ margin:0 0 8px; }
.pa-prose blockquote{ border-left:3px solid var(--pa-accent); padding:6px 0 6px 22px; margin:26px 0; }
.pa-prose blockquote p{ font-family:var(--pa-heading); font-style:italic; font-size:24px; line-height:1.3; color:var(--pa-ink); margin:0; }
.pa-prose a{ color:var(--pa-accent); text-decoration:underline; }
.pa-article__tags{ display:flex; gap:8px; flex-wrap:wrap; margin-top:30px; }
.pa-article__tags a{ font-size:14.5px !important; color:var(--pa-muted); background:var(--pa-soft); padding:6px 13px; border-radius:999px; text-decoration:none; }
.pa-article__tags a:hover{ color:var(--pa-accent); }
.pa-related{ max-width:1080px; margin:0 auto; padding:30px 32px 80px; }
.pa-related{ border-top:1px solid var(--pa-line); margin-top:20px; padding-top:40px; }
.pa-related h2{ font-size:30px; margin:0 0 22px; }
.pa-related__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.pa-article__comments{ max-width:760px; margin:0 auto; padding:0 32px 60px; }

/* Section commentaires (Le Journal) */
.pa-comments{ }
.pa-comments__title{ font-family:var(--pa-heading); font-size:28px; font-weight:600; margin:0 0 24px; }
.pa-comments__title span{ color:var(--pa-accent); }
.pa-commentlist{ list-style:none; margin:0 0 36px; padding:0; display:flex; flex-direction:column; gap:16px; }
.pa-commentlist .children{ list-style:none; margin:16px 0 0 34px; padding-left:20px; border-left:2px solid var(--pa-line); display:flex; flex-direction:column; gap:16px; }
.pa-comment__body{ display:flex; gap:14px; background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:16px; padding:18px 20px; }
.pa-comment__avatar img{ width:46px; height:46px; border-radius:50%; display:block; }
.pa-comment__main{ flex:1; min-width:0; }
.pa-comment__head{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:7px; }
.pa-comment__author{ font-weight:600; font-size:15px; color:var(--pa-ink); }
.pa-comment__date{ font-size:12.5px; color:var(--pa-muted); }
.pa-comment__pending{ font-size:11px; font-weight:600; color:#9a6a1a; background:#f6ecd6; padding:3px 9px; border-radius:999px; }
.pa-comment__text{ font-size:14.5px; line-height:1.65; color:#3a342c; }
.pa-comment__text p{ margin:0 0 10px; }
.pa-comment__actions{ margin-top:8px; }
.pa-comment__actions a{ font-size:12.5px; font-weight:600; color:var(--pa-accent); text-decoration:none; }
.pa-comment__actions a:hover{ text-decoration:underline; }

/* Formulaire de commentaire */
.comment-respond{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:26px 28px; }
.comment-reply-title{ font-family:var(--pa-heading); font-size:24px; font-weight:600; margin:0 0 6px; }
.comment-reply-title small{ font-size:13px; font-weight:400; margin-left:10px; }
.comment-reply-title small a{ color:var(--pa-accent); }
.logged-in-as{ font-size:13px; color:var(--pa-muted); margin:0 0 16px; }
.logged-in-as a{ color:var(--pa-accent); }
.pa-form__row{ display:flex; flex-direction:column; gap:6px; margin:0 0 16px; }
.pa-form__row label{ font-size:13px; font-weight:600; color:var(--pa-ink); }
.pa-form__row label span{ color:var(--pa-accent); }
.pa-form__row input,.pa-form__row textarea{ width:100%; }
.comment-form > p:has(.pa-form__row--half){ display:flex; gap:14px; }
.pa-commentform{ display:flex; flex-wrap:wrap; gap:0 14px; }
.pa-form__row--half{ flex:1 1 calc(50% - 7px); }
.pa-form__row:not(.pa-form__row--half){ flex:1 1 100%; }
.pa-form__consent{ flex:1 1 100%; font-size:13px; color:var(--pa-muted); margin:0 0 16px; }
.pa-form__consent label{ display:flex; align-items:center; gap:8px; cursor:pointer; }
.pa-form__consent input{ width:auto; }
.form-submit{ flex:1 1 100%; margin:0; }
.pa-comments__closed{ color:var(--pa-muted); font-size:14px; }
@media (max-width:560px){ .pa-form__row--half{ flex:1 1 100%; } }

@media (max-width:860px){
	.pa-feature{ grid-template-columns:1fr; }
	.pa-feature__body{ padding:0 26px 26px; }
	.pa-journal__grid,.pa-related__grid{ grid-template-columns:1fr 1fr; }
	.pa-article__layout{ grid-template-columns:1fr; gap:26px; }
	.pa-article__aside{ position:static; flex-direction:row; flex-wrap:wrap; gap:30px; }
}
@media (max-width:560px){
	.pa-journal__grid,.pa-related__grid{ grid-template-columns:1fr; }
}

/* =========================================================================
   PAGE COLLECTION (Coffrets)
   ========================================================================= */
.pa-col-hero{ border-bottom:1px solid var(--pa-line); }
.pa-col-hero__inner{ display:grid; grid-template-columns:1.05fr 1fr; gap:54px; align-items:center; padding-top:60px; padding-bottom:60px; }
.pa-col-hero__text h1{ font-size:clamp(44px,5.6vw,72px); line-height:1.01; margin:16px 0 0; }
.pa-col-hero__intro{ font-size:17px; color:var(--pa-muted); line-height:1.65; max-width:46ch; margin:20px 0 30px; }
.pa-col-hero__cta{ display:flex; gap:13px; flex-wrap:wrap; }
.pa-col-hero__media{ aspect-ratio:5/6; border-radius:22px; overflow:hidden; }
.pa-col-hero__media img{ width:100%; height:100%; object-fit:cover; }

.pa-col-perks{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; padding-top:46px; }
.pa-col-perk{ display:flex; gap:15px; align-items:flex-start; background:var(--pa-surface); border:1px solid rgba(60,45,30,.1); border-radius:16px; padding:22px 24px; }
.pa-col-perk__ico{ flex:none; width:46px; height:46px; border-radius:50%; background:var(--pa-soft); color:var(--pa-accent); display:grid; place-items:center; font-size:21px; }
.pa-col-perk__t{ margin:0; font-family:var(--pa-heading); font-size:21px; font-weight:600; }
.pa-col-perk__b{ margin:4px 0 0; font-size:13.5px; color:var(--pa-muted); line-height:1.5; }

.pa-col-free{ padding-top:36px; }
.pa-col-grid{ padding-top:40px; }
.pa-col-grid__head,.pa-col-related__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap; margin-bottom:24px; }
.pa-col-grid__head h2,.pa-col-related__head h2{ font-size:clamp(30px,3.4vw,44px); margin:0; }

.pa-col-story-wrap{ padding-top:44px; }
.pa-col-story{ display:grid; grid-template-columns:1fr 1fr; background:var(--pa-surface); border-radius:24px; overflow:hidden; box-shadow:0 26px 54px -34px rgba(70,45,20,.45); }
.pa-col-story__media{ min-height:340px; }
.pa-col-story__media img{ width:100%; height:100%; object-fit:cover; }
.pa-col-story__media .pa-ph{ width:100%; height:100%; }
.pa-col-story__body{ padding:48px 52px; display:flex; flex-direction:column; justify-content:center; }
.pa-col-story__body h2{ font-size:clamp(28px,3.2vw,40px); line-height:1.08; margin:14px 0 0; }
.pa-col-story__text{ font-size:15.5px; color:#544c41; line-height:1.7; margin:18px 0 0; max-width:44ch; }
.pa-col-story__items{ display:flex; flex-direction:column; gap:11px; margin-top:22px; }
.pa-col-story__item{ display:inline-flex; align-items:center; gap:11px; font-size:14.5px; color:#3a342c; }
.pa-col-story__check{ flex:none; width:22px; height:22px; border-radius:50%; background:var(--pa-accent); color:#fff; display:grid; place-items:center; font-size:12px; }

.pa-col-related{ padding-top:44px; padding-bottom:80px; }
.pa-col-related__head{ border-top:1px solid var(--pa-line); padding-top:40px; }

@media (max-width:860px){
	.pa-col-hero__inner{ grid-template-columns:1fr; gap:28px; }
	.pa-col-perks{ grid-template-columns:1fr; }
	.pa-col-story{ grid-template-columns:1fr; }
	.pa-col-story__media{ order:-1; min-height:260px; }
}
.pa-card__body{ display:flex; flex-direction:column; padding:16px 20px 18px; flex:1; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-size:23px!important; line-height:1.1; padding:0!important; margin:0; }
.pa-card-sub{ padding:2px 0 0; margin:0; font-family:var(--pa-heading); font-style:italic; font-size:12.5px; color:var(--pa-muted); }
.pa-vertus{ display:flex; gap:6px; flex-wrap:wrap; padding:10px 0 0; }
.pa-vertus span{ font-size:11.5px; color:var(--pa-ink); background:var(--pa-soft); padding:4px 10px; border-radius:999px; }
.pa-card__foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:14px; flex-wrap:wrap; }
.woocommerce ul.products li.product .price{ color:var(--pa-ink)!important; font-family:var(--pa-body); font-size:19px!important; font-weight:600; padding:0; margin:0; white-space:nowrap; }
.woocommerce ul.products li.product .price del{ color:var(--pa-muted); font-weight:400; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }
.woocommerce ul.products li.product .pa-card__foot .button{ margin:0; font-size:13px!important; padding:10px 16px!important; white-space:nowrap; max-width:100%; flex:0 1 auto; }

/* pagination */
.woocommerce nav.woocommerce-pagination ul{ border:none; gap:8px; display:flex; justify-content:center; }
.woocommerce nav.woocommerce-pagination ul li{ border:none; }
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  border-radius:50%; width:42px; height:42px; line-height:42px; background:var(--pa-surface); border:1px solid var(--pa-line); color:var(--pa-ink); }
.woocommerce nav.woocommerce-pagination ul li span.current{ background:var(--pa-accent); color:#fff; border-color:var(--pa-accent); }

/* =========================================================================
   8. FICHE PRODUIT
   ========================================================================= */
.woocommerce div.product{ max-width:1280px; margin:0 auto; padding:28px 0 0; }
.single-product.woocommerce div.product .pa-single-top{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; max-width:1180px; margin:0 auto; }
.pa-single-gallery{ position:relative; }
/* colonne de gauche (galerie) fixe pendant que la droite défile (façon maquette) */
@media (min-width:861px){
  .pa-single-gallery{ position:sticky; top:100px; align-self:start; }
}
.pa-single-bottom{ margin-top:48px; }
.woocommerce div.product .woocommerce-product-gallery{ position:relative; margin:0!important; width:100%!important; float:none!important; }
.woocommerce div.product .woocommerce-product-gallery__image,.woocommerce div.product .woocommerce-product-gallery__wrapper{ border-radius:22px; overflow:hidden; }
.woocommerce div.product .woocommerce-product-gallery img{ border-radius:22px; }
.woocommerce div.product .summary{ margin:0!important; width:100%!important; float:none!important; }
.woocommerce div.product .product_title{ font-size:clamp(34px,4vw,50px)!important; line-height:1.02; margin:4px 0 0; }
.woocommerce div.product p.price,.woocommerce div.product span.price{ color:var(--pa-ink)!important; font-family:var(--pa-body); font-size:30px!important; font-weight:600; margin:16px 0 4px; }
.woocommerce div.product .woocommerce-product-rating{ margin-bottom:14px; }
.woocommerce .star-rating span::before,.woocommerce div.product .stars a::before{ color:var(--pa-accent); }
.woocommerce div.product .woocommerce-product-details__short-description{ font-size:16px; line-height:1.7; color:#544c41; max-width:48ch; margin:18px 0; }
.pa-single-latin{ font-family:var(--pa-heading); font-style:italic; font-size:17px; color:var(--pa-muted); margin:6px 0 0; }
.pa-block-label{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--pa-muted); font-weight:600; margin:0 0 11px; }
.pa-vertus-block{ margin:22px 0 0; }
.woocommerce-product-attributes{ border:1px solid var(--pa-line); border-radius:14px; overflow:hidden; }
.woocommerce-product-attributes th{ background:var(--pa-surface); color:var(--pa-muted); text-transform:uppercase; font-size:11px; letter-spacing:.05em; }
.woocommerce-product-attributes td{ background:var(--pa-surface); color:var(--pa-ink); font-style:normal; }
.woocommerce div.product form.cart{ display:flex; gap:13px; align-items:stretch; margin:26px 0; }
.woocommerce .quantity .qty{ border:1px solid rgba(60,45,30,.2); border-radius:var(--pa-btn-radius); height:54px; width:90px; text-align:center; font-weight:600; background:var(--pa-surface); }
/* stepper quantité personnalisé (− / +) */
.woocommerce .quantity.pa-qty{ display:inline-flex; align-items:center; border:1px solid rgba(60,45,30,.2); border-radius:var(--pa-btn-radius); overflow:hidden; height:54px; background:var(--pa-surface); }
.woocommerce .quantity.pa-qty .qty{ border:none!important; border-radius:0!important; width:46px!important; height:100%!important; background:transparent!important; -moz-appearance:textfield; }
.woocommerce .quantity.pa-qty .qty::-webkit-outer-spin-button,.woocommerce .quantity.pa-qty .qty::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.pa-qty-btn{ width:44px; height:54px; border:none; background:none; font-size:20px; line-height:1; cursor:pointer; color:var(--pa-ink); transition:background .15s; }
.pa-qty-btn:hover{ background:rgba(60,45,30,.06); }
.woocommerce div.product form.cart .single_add_to_cart_button{ flex:1; height:54px; font-size:15px; white-space:nowrap; }
.pa-single-vertus{ display:flex; gap:9px; flex-wrap:wrap; margin:22px 0 0; }
.pa-single-vertus span{ display:inline-flex; align-items:center; gap:7px; font-size:13.5px; color:var(--pa-ink); background:var(--pa-surface); border:1px solid var(--pa-line); padding:8px 14px; border-radius:999px; }
.pa-single-vertus span::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--pa-accent); }
/* tableau d'attributs (style maquette) */
.pa-attr-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--pa-line); border:1px solid var(--pa-line); border-radius:14px; overflow:hidden; margin:24px 0 0; }
.pa-attr{ background:var(--pa-surface); padding:14px 16px; }
.pa-attr__l{ display:block; font-size:11px; letter-spacing:.05em; text-transform:uppercase; color:var(--pa-muted); font-weight:600; }
.pa-attr__v{ display:block; margin-top:4px; font-size:14.5px; color:var(--pa-ink); font-weight:500; }
.pa-trust{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:26px 0 0; padding-top:26px; border-top:1px solid var(--pa-line); }
.pa-trust__item{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; padding:4px 14px; position:relative; }
.pa-trust__item + .pa-trust__item::before{ content:""; position:absolute; left:0; top:6px; bottom:6px; width:1px; background:var(--pa-line); }
.pa-trust__ico{ color:var(--pa-accent); }
.pa-trust__ico svg{ width:40px; height:40px; display:block; }
.pa-trust__img{ width:46px; height:46px; object-fit:contain; display:block; }
@media (max-width:600px){
	.pa-trust{ grid-template-columns:repeat(2,1fr); gap:18px 0; }
	.pa-trust__item:nth-child(3)::before{ display:none; }
}

/* =========================================================================
   BOUTIQUE — bannière + vignettes collections + strip réassurance
   ========================================================================= */
.pa-shop-banner{ position:relative; overflow:hidden; background:linear-gradient(115deg,#2a1822,#5c2347 55%,var(--pa-accent)); color:#fff; }
.pa-shop-banner__inner{ position:relative; z-index:2; display:grid; grid-template-columns:1.15fr .85fr; gap:44px; align-items:center; padding-top:48px; padding-bottom:48px; }
.pa-shop-banner__media{ aspect-ratio:4/3; border-radius:20px; overflow:hidden; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.05); display:grid; place-items:center; }
.pa-shop-banner__photo{ width:100%; height:100%; object-fit:cover; }
.pa-shop-banner__deco{ display:grid; place-items:center; width:60%; opacity:.9; }
.pa-shop-banner__deco svg{ width:100%; height:auto; }
.pa-shop-banner__crumb{ color:rgba(255,255,255,.65); margin:0 0 16px; }
.pa-shop-banner__crumb a{ color:rgba(255,255,255,.75); }
.pa-shop-banner__crumb a:hover{ color:#fff; }
.pa-shop-banner__eyebrow{ color:#f4b8da; }
.pa-shop-banner__title{ color:#fff; font-size:clamp(42px,5.4vw,68px); line-height:1.01; margin:14px 0 0; }
.pa-shop-banner__intro{ font-size:16.5px; color:rgba(255,255,255,.85); line-height:1.6; max-width:46ch; margin:18px 0 24px; }
.pa-shop-banner__stats{ display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.pa-shop-banner__sep{ width:1px; align-self:stretch; background:rgba(255,255,255,.22); }
.pa-shop-banner__stat{ display:flex; align-items:center; gap:11px; }
.pa-shop-banner__ico{ flex:none; width:34px; height:34px; display:grid; place-items:center; color:#f4b8da; }
.pa-shop-banner__ico svg{ width:26px; height:26px; }
.pa-shop-banner__stat-txt{ display:flex; flex-direction:column; }
.pa-shop-banner__stat .k{ display:block; font-family:var(--pa-heading); font-size:23px; line-height:1; color:#fff; white-space:nowrap; }
.pa-shop-banner__stat .v{ display:block; font-size:12px; color:rgba(255,255,255,.7); margin-top:3px; white-space:nowrap; }
@media (max-width:860px){
	.pa-shop-banner__inner{ grid-template-columns:1fr; gap:26px; }
	.pa-shop-banner__media{ order:-1; }
}

.pa-shop-collections{ padding:38px 0 4px; }
.pa-shop-collections__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:16px; }
.pa-shop-collections__head h2{ font-size:26px; }
.pa-shop-collections__grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.pa-coll{ position:relative; display:block; aspect-ratio:3/4; border-radius:16px; overflow:hidden; text-decoration:none; background:color-mix(in oklab, var(--coll), #2a1822 55%); transition:transform .28s, box-shadow .28s; }
.pa-coll:hover{ transform:translateY(-5px); box-shadow:0 22px 40px -22px rgba(70,20,50,.5); }
.pa-coll__overlay{ position:absolute; inset:0; background:linear-gradient(to top,rgba(20,10,16,.62),rgba(20,10,16,0) 58%); }
.pa-coll__cap{ position:absolute; left:0; right:0; bottom:0; padding:13px; text-align:center; z-index:2; }
.pa-coll__dot{ display:block; width:30px; height:30px; border-radius:50%; margin:0 auto 7px; box-shadow:0 2px 6px rgba(0,0,0,.3); }
.pa-coll__name{ display:block; font-family:var(--pa-heading); font-size:18px; font-weight:600; color:#fff; line-height:1.05; }
@media (max-width:980px){ .pa-shop-collections__grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:520px){ .pa-shop-collections__grid{ grid-template-columns:repeat(2,1fr); } }

.pa-shop-trust{ background:var(--pa-surface); border-top:1px solid var(--pa-line); margin-top:30px; }
.pa-shop-trust .pa-container{ padding-top:30px; padding-bottom:30px; }
.pa-trust--strip{ border-top:none; margin:0; padding-top:0; max-width:920px; margin-left:auto; margin-right:auto; }
/* La bannière remplace le header + fil d'Ariane WooCommerce par défaut */
.woocommerce-shop .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{ display:none; }
.woocommerce-shop .pa-shop-wrap > .woocommerce-breadcrumb,
.tax-product_cat .pa-shop-wrap > .woocommerce-breadcrumb{ display:none; }
.woocommerce-shop .pa-shop-wrap,
.tax-product_cat .pa-shop-wrap{ padding-top:6px; }

/* =========================================================================
   FILTRES (bouton + volet) · FILTRES ACTIFS · MINI-PANIER · LIVRAISON
   ========================================================================= */
.pa-filter-toggle{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--pa-ink); background:var(--pa-surface); border:1px solid rgba(60,45,30,.18); padding:9px 15px; border-radius:999px; cursor:pointer; transition:border-color .2s; }
.pa-filter-toggle:hover{ border-color:var(--pa-accent); }
.pa-filter-toggle__n{ min-width:18px; height:18px; padding:0 5px; border-radius:9px; background:var(--pa-accent); color:#fff; font-size:11px; display:grid; place-items:center; }

.pa-activefilters{ display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin:0 0 22px; }
.pa-activefilters__chip{ display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:600; color:var(--pa-accent-deep); background:color-mix(in oklab, var(--pa-accent), #fff 80%); border:1px solid color-mix(in oklab, var(--pa-accent), #fff 55%); padding:6px 12px; border-radius:999px; text-decoration:none; }
.pa-activefilters__chip span{ font-size:11px; opacity:.7; }
.pa-activefilters__chip:hover{ color:#fff; background:var(--pa-accent); }
.pa-activefilters__clear{ font-size:12.5px; color:var(--pa-muted); text-decoration:underline; }

/* Volet générique (filtres + panier) */
.pa-drawer{ position:fixed; inset:0; z-index:210; visibility:hidden; }
.pa-drawer.is-open{ visibility:visible; }
.pa-drawer__backdrop{ position:absolute; inset:0; background:rgba(26,21,16,.5); opacity:0; transition:opacity .3s; }
.pa-drawer.is-open .pa-drawer__backdrop{ opacity:1; }
.pa-drawer__panel{ position:absolute; top:0; bottom:0; left:0; width:min(380px,90vw); background:var(--pa-surface); display:flex; flex-direction:column; box-shadow:20px 0 60px -20px rgba(0,0,0,.4); transform:translateX(-100%); transition:transform .32s cubic-bezier(.2,.7,.3,1); }
.pa-drawer__panel--right{ left:auto; right:0; transform:translateX(100%); box-shadow:-20px 0 60px -20px rgba(0,0,0,.4); }
.pa-drawer.is-open .pa-drawer__panel{ transform:none; }
.pa-drawer__head{ display:flex; align-items:center; justify-content:space-between; padding:18px 22px; border-bottom:1px solid var(--pa-line); }
.pa-drawer__title{ font-family:var(--pa-heading); font-size:22px; font-weight:600; }
.pa-drawer__close{ width:36px; height:36px; border-radius:50%; border:none; background:var(--pa-soft); cursor:pointer; font-size:15px; color:var(--pa-ink); }

/* Formulaire de filtres */
.pa-filterform{ overflow-y:auto; padding:6px 22px 22px; flex:1; display:flex; flex-direction:column; }
.pa-filtergroup{ border-top:1px solid var(--pa-line); padding:16px 0; }
.pa-filtergroup:first-child{ border-top:none; }
.pa-filtergroup__t{ font-size:13.5px; font-weight:600; margin:0 0 12px; }
.pa-pricerow{ display:flex; gap:12px; }
.pa-pricerow label{ flex:1; display:flex; flex-direction:column; gap:5px; font-size:12px; color:var(--pa-muted); }
.pa-pricerow input{ width:100%; }
/* Curseur de prix à 2 poignées */
.pa-slider{ position:relative; height:30px; margin:6px 6px 2px; }
.pa-slider__track{ position:absolute; top:13px; left:0; right:0; height:4px; border-radius:3px; background:#e5dac6; }
.pa-slider__range{ position:absolute; top:0; height:100%; border-radius:3px; background:var(--pa-accent); }
.pa-slider__handle{ position:absolute; top:0; left:0; width:100%; height:30px; margin:0; background:none; pointer-events:none; -webkit-appearance:none; appearance:none; }
.pa-slider__handle::-webkit-slider-thumb{ -webkit-appearance:none; appearance:none; pointer-events:auto; width:18px; height:18px; border-radius:50%; background:#fff; border:2px solid var(--pa-accent); box-shadow:0 1px 4px rgba(70,40,20,.35); cursor:pointer; margin-top:0; }
.pa-slider__handle::-moz-range-thumb{ pointer-events:auto; width:18px; height:18px; border-radius:50%; background:#fff; border:2px solid var(--pa-accent); box-shadow:0 1px 4px rgba(70,40,20,.35); cursor:pointer; }
.pa-slider__handle::-webkit-slider-runnable-track{ background:none; }
.pa-slider__handle::-moz-range-track{ background:none; }
.pa-slider__fields{ display:flex; align-items:flex-end; gap:10px; margin-top:10px; }
.pa-slider__fields label{ flex:1; display:flex; flex-direction:column; gap:5px; font-size:12px; color:var(--pa-muted); }
.pa-slider__fields input{ width:100%; }
.pa-slider__dash{ padding-bottom:11px; color:var(--pa-muted); }
.pa-filteropts{ display:flex; flex-wrap:wrap; gap:8px; }
.pa-filteropt{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--pa-ink); background:#fff; border:1px solid var(--pa-line); padding:8px 13px; border-radius:999px; cursor:pointer; transition:all .15s; }
.pa-filteropt:hover{ border-color:var(--pa-accent); }
.pa-filteropt.is-checked{ background:#26211b; color:#fff; border-color:#26211b; }
.pa-filteropt input{ position:absolute; opacity:0; width:0; height:0; }
.pa-filteropt__swatch{ width:16px; height:16px; border-radius:50%; box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); }
.pa-filteropts--swatch .pa-filteropt{ padding:7px 13px 7px 8px; }
.pa-filterform__actions{ display:flex; gap:10px; margin-top:auto; padding-top:18px; position:sticky; bottom:0; background:var(--pa-surface); }
.pa-filterform__actions .pa-btn{ flex:1; }

/* Mini-panier */
.pa-minicart__inner{ display:flex; flex-direction:column; flex:1; overflow:hidden; }
.pa-ship{ padding:15px 22px; background:var(--pa-bg,#f4efe6); border-bottom:1px solid var(--pa-line); }
.pa-ship__txt{ margin:0 0 8px; font-size:12.5px; color:#3a342c; }
.pa-ship__txt--win{ color:var(--pa-accent-deep); font-weight:600; }
.pa-ship__track{ height:6px; background:#e5dac6; border-radius:3px; overflow:hidden; }
.pa-ship__fill{ height:100%; background:linear-gradient(90deg,var(--pa-accent),color-mix(in oklab,var(--pa-accent),#fff 35%)); border-radius:3px; transition:width .4s; }
.pa-minicart__items{ flex:1; overflow-y:auto; padding:6px 22px; }
.pa-mcitem{ display:flex; gap:13px; padding:15px 0; border-bottom:1px solid var(--pa-line); position:relative; }
.pa-mcitem__media{ flex:none; width:64px; height:64px; border-radius:10px; overflow:hidden; }
.pa-mcitem__media img{ width:100%; height:100%; object-fit:cover; }
.pa-mcitem__body{ flex:1; min-width:0; }
.pa-mcitem__name{ font-family:var(--pa-heading); font-size:18px; font-weight:600; color:var(--pa-ink); text-decoration:none; line-height:1.1; display:block; }
.pa-mcitem__meta{ font-size:11.5px; color:var(--pa-muted); margin-top:2px; }
.pa-mcitem__meta p{ margin:0; font-size:11.5px; }
.pa-mcitem__row{ display:flex; align-items:center; justify-content:space-between; margin-top:8px; }
.pa-mcitem__price{ font-size:14px; font-weight:600; }
.pa-mcitem__remove{ position:absolute; top:13px; right:0; width:22px; height:22px; border:none; background:none; color:var(--pa-muted); cursor:pointer; font-size:12px; }
.pa-mcitem__remove:hover{ color:var(--pa-accent); }
.pa-qtybox{ display:inline-flex; align-items:center; border:1px solid rgba(60,45,30,.18); border-radius:999px; }
.pa-qtybox__btn{ width:28px; height:28px; border:none; background:none; cursor:pointer; font-size:15px; color:var(--pa-ink); }
.pa-qtybox__btn:hover{ color:var(--pa-accent); }
.pa-qtybox__n{ min-width:22px; text-align:center; font-size:13px; font-weight:600; }
.pa-minicart__foot{ padding:18px 22px; border-top:1px solid var(--pa-line); }
.pa-minicart__subtotal{ display:flex; align-items:center; justify-content:space-between; margin-bottom:13px; }
.pa-minicart__subtotal > span:first-child{ font-size:14px; color:var(--pa-muted); }
.pa-minicart__sub{ font-size:19px; font-weight:600; }
.pa-minicart__checkout{ width:100%; }
.pa-minicart__continue{ display:block; width:100%; text-align:center; margin-top:11px; background:none; border:none; cursor:pointer; font-size:12.5px; color:var(--pa-accent); font-weight:600; }
.pa-minicart__empty{ flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:50px 22px; text-align:center; color:var(--pa-muted); }
.pa-minicart.is-loading .pa-minicart__inner{ opacity:.55; pointer-events:none; }
.pa-trust__txt{ font-size:13px; line-height:1.4; color:#544c41; }
@media (max-width:520px){
	.pa-trust__ico svg{ width:34px; height:34px; }
	.pa-trust__item{ padding:4px 8px; }
	.pa-trust__txt{ font-size:12px; }
}
/* sceau fait main — pilule */
.pa-seal{ position:absolute; top:16px; left:16px; right:auto; z-index:5; display:inline-flex; align-items:center; gap:7px; background:var(--pa-accent,#b0764f); padding:8px 16px; border-radius:999px; box-shadow:0 4px 16px rgba(60,40,20,.22); pointer-events:none; }
.pa-seal__txt{ font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#fff; line-height:1; white-space:nowrap; }
/* onglets + avis */
.woocommerce div.product .woocommerce-tabs ul.tabs{ padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ border-color:var(--pa-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{ background:transparent; border:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ font-family:var(--pa-heading); font-size:20px; font-weight:600; color:var(--pa-muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--pa-accent); }
#reviews .commentlist li{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:14px; padding:20px 22px; margin-bottom:14px; list-style:none; }
#reviews .star-rating span::before{ color:var(--pa-accent); }
.pa-noreviews{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; padding:40px 24px; background:var(--pa-surface); border:1px dashed rgba(60,45,30,.2); border-radius:18px; }
.pa-noreviews__stars{ font-size:30px; letter-spacing:5px; color:#d8cebd; line-height:1; }
.pa-noreviews__t{ font-family:var(--pa-heading); font-size:26px; font-weight:600; color:var(--pa-ink); }
.pa-noreviews__b{ font-size:14.5px; color:var(--pa-muted); max-width:44ch; line-height:1.6; }
.woocommerce .related>h2,.woocommerce .upsells>h2{ font-family:var(--pa-heading); font-size:30px; font-weight:600; margin-bottom:20px; }
/* accordéons (remplacent les onglets) */
.pa-accordions{ margin-top:8px; }
.pa-acc{ border-top:1px solid var(--pa-line); }
.pa-acc:last-child{ border-bottom:1px solid var(--pa-line); }
.pa-acc summary{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 2px; cursor:pointer; list-style:none; font-family:var(--pa-heading); font-size:21px; font-weight:600; color:var(--pa-ink); }
.pa-acc summary::-webkit-details-marker{ display:none; }
.pa-acc summary::marker{ content:""; }
.pa-acc__i{ font-size:24px; line-height:1; color:var(--pa-muted); font-weight:400; transition:transform .2s; }
.pa-acc[open] .pa-acc__i{ transform:rotate(45deg); }
.pa-acc__body{ padding:0 2px 22px; font-size:14.5px; line-height:1.7; color:#6a6155; }
.pa-acc__body p{ margin:0 0 12px; }
.pa-accordions--summary{ margin-top:28px; }
/* section avis (séparée, pleine largeur) */
.pa-reviews{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:34px; margin:0 0 44px; }
.pa-reviews__title{ font-size:clamp(28px,3vw,38px); margin:0 0 24px; }
.pa-reviews__layout{ display:grid; grid-template-columns:280px 1fr; gap:48px; align-items:start; }
.pa-reviews__layout--empty{ grid-template-columns:1fr; }
.pa-reviews__main #reviews{ margin:0; }
.pa-reviews__main .commentlist{ margin:0; padding:0; list-style:none; }
.pa-reviews__main #review_form_wrapper{ margin-top:18px; }
.pa-reviews__main .woocommerce-Reviews-title{ display:none; } /* titre déjà affiché */
/* récap (colonne gauche) */
.pa-rev-avg{ display:flex; align-items:baseline; gap:10px; }
.pa-rev-avg__n{ font-family:var(--pa-heading); font-size:62px; font-weight:600; line-height:1; color:var(--pa-ink); }
.pa-rev-avg__d{ font-size:15px; color:var(--pa-muted); }
.pa-rev-stars{ margin:8px 0 6px; }
.pa-rev-count{ margin:0; font-size:13.5px; color:var(--pa-muted); }
.pa-rev-bars{ margin:22px 0 0; display:flex; flex-direction:column; gap:9px; }
.pa-rev-bar{ display:flex; align-items:center; gap:11px; }
.pa-rev-bar__l{ font-size:12px; color:var(--pa-muted); width:34px; white-space:nowrap; }
.pa-rev-bar__track{ flex:1; height:7px; border-radius:999px; background:var(--pa-soft); overflow:hidden; }
.pa-rev-bar__track > span{ display:block; height:100%; background:var(--pa-accent); border-radius:999px; }
.pa-rev-bar__p{ font-size:12px; color:var(--pa-muted); width:36px; text-align:right; }
@media (max-width:760px){ .pa-reviews__layout{ grid-template-columns:1fr; gap:28px; } }
/* cartes d'avis */
.pa-reviews__main .commentlist{ display:flex; flex-direction:column; gap:0; }
.pa-review{ list-style:none; }
.pa-review__card{ border:1px solid var(--pa-line); border-radius:14px; padding:20px 22px; margin-bottom:14px; background:var(--pa-surface); }
.pa-review__head{ display:flex; align-items:center; gap:13px; flex-wrap:wrap; }
.pa-review__avatar{ width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:color-mix(in oklab, var(--pa-accent), #fffdf8 78%); color:var(--pa-accent); font-weight:700; font-size:14px; flex:none; }
.pa-review__meta{ flex:1; display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-width:0; }
.pa-review__name{ font-weight:600; font-size:14.5px; color:var(--pa-ink); }
.pa-review__verified{ display:inline-flex; align-items:center; gap:4px; font-size:11px; color:#5a8a5f; background:#eef3ec; padding:3px 9px; border-radius:999px; font-weight:600; }
.pa-review__date{ font-size:12px; color:var(--pa-muted); width:100%; }
.pa-review__stars{ white-space:nowrap; margin-left:auto; }
.pa-review__text{ margin-top:12px; font-size:14.5px; line-height:1.65; color:#544c41; }
.pa-review__title-line{ margin:13px 0 0; font-family:var(--pa-heading); font-size:19px; font-weight:600; color:var(--pa-ink); }
.pa-review__title-line + .pa-review__text{ margin-top:5px; }
.comment-form-title{ display:flex; flex-direction:column; gap:6px; }
.comment-form-title input{ width:100%; }
.pa-review__text p{ margin:0 0 8px; }
/* formulaire d'avis */
.pa-reviews__main .comment-form-rating label{ font-weight:600; }
.pa-reviews__main #respond .form-submit{ margin-top:6px; }

/* =========================================================================
   9. PANIER / COMMANDE / COMPTE
   ========================================================================= */
.woocommerce-cart .pa-shop-wrap,.woocommerce-checkout .pa-shop-wrap,.woocommerce-account .pa-shop-wrap{ padding-top:32px; padding-bottom:60px; }
.woocommerce table.shop_table{ border-radius:14px; border:1px solid var(--pa-line); background:var(--pa-surface); overflow:hidden; }
.woocommerce table.shop_table th{ font-family:var(--pa-body); }
.woocommerce .cart_totals,.woocommerce-checkout #order_review{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:16px; padding:8px 22px 18px; }
/* --- Mon compte : layout 2 colonnes moderne --- */
.woocommerce-account.logged-in .pa-shop-wrap > .woocommerce{ display:grid; grid-template-columns:258px 1fr; gap:44px; align-items:start; }
.woocommerce-account .woocommerce-MyAccount-navigation{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:14px; position:sticky; top:100px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:3px; }
.woocommerce-account .woocommerce-MyAccount-navigation li a{ display:block; padding:12px 16px; border-radius:12px; background:transparent; border:none; font-size:15px; font-weight:500; color:var(--pa-ink); text-decoration:none; transition:background .18s,color .18s; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{ background:var(--pa-soft); color:var(--pa-accent); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{ background:#26211b; color:#fff; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--mes-favoris a::before{ content:"♡ "; }
.woocommerce-account .woocommerce-MyAccount-content{ min-width:0; }
.woocommerce-account .woocommerce-MyAccount-content > p:first-child{ font-size:16px; color:var(--pa-muted); }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,.woocommerce-account .addresses .col-1,.woocommerce-account .addresses .col-2{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:16px; padding:22px 24px; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
@media (max-width:860px){
	.woocommerce-account.logged-in .pa-shop-wrap > .woocommerce{ grid-template-columns:1fr; gap:24px; }
	.woocommerce-account .woocommerce-MyAccount-navigation{ position:static; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul{ flex-direction:row; flex-wrap:wrap; }
	.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{ grid-template-columns:1fr; }
}
.woocommerce-message,.woocommerce-info,.woocommerce-error{ border-top-color:var(--pa-accent); border-radius:10px; }
/* Entête sidebar compte */
.pa-acct-id{ display:flex; align-items:center; gap:12px; padding:4px 6px 16px; margin-bottom:8px; border-bottom:1px solid var(--pa-line); }
.pa-acct-id__av{ width:46px; height:46px; border-radius:50%; flex:none; display:grid; place-items:center; background:linear-gradient(135deg,var(--pa-accent),var(--pa-accent-deep)); color:#fff; font-family:var(--pa-heading); font-size:21px; font-weight:600; }
.pa-acct-id__name{ display:block; font-weight:600; font-size:15px; color:var(--pa-ink); }
.pa-acct-id__sub{ display:block; font-size:12px; color:var(--pa-muted); }
/* Tableau de bord */
.pa-dash__hero{ position:relative; overflow:hidden; background:linear-gradient(120deg,#2a1822,#5c2347 60%,var(--pa-accent)); border-radius:22px; padding:30px 34px; color:#fff; margin-bottom:20px; }
.pa-dash__halo{ position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.16); }
.pa-dash__halo--1{ right:-30px; top:-30px; width:180px; height:180px; }
.pa-dash__halo--2{ right:24px; top:42px; width:110px; height:110px; }
.pa-dash__eyebrow{ color:#f4b8da; margin:0 0 8px; }
.pa-dash__title{ font-family:var(--pa-heading); font-size:clamp(26px,3.2vw,34px); font-weight:600; color:#fff; line-height:1.02; margin:0; }
.pa-dash__sub{ font-size:14.5px; color:rgba(255,255,255,.82); margin:10px 0 0; max-width:52ch; }
.pa-dash__stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:20px; }
.pa-statcard{ display:block; text-decoration:none; background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:20px 22px; transition:transform .25s, box-shadow .25s; }
.pa-statcard:hover{ transform:translateY(-4px); box-shadow:0 18px 36px -24px rgba(70,45,20,.4); }
.pa-statcard__top{ display:flex; align-items:center; justify-content:space-between; font-size:12px; letter-spacing:.05em; text-transform:uppercase; color:var(--pa-muted); font-weight:600; }
.pa-statcard__num{ display:block; font-family:var(--pa-heading); font-size:38px; font-weight:600; color:var(--pa-ink); margin-top:6px; line-height:1; }
.pa-statcard__lbl{ display:block; font-size:12.5px; color:var(--pa-muted); margin-top:4px; }
.pa-dash__row{ display:grid; grid-template-columns:1.4fr 1fr; gap:16px; }
.pa-dash__panel{ background:var(--pa-surface); border:1px solid var(--pa-line); border-radius:18px; padding:22px 24px; }
.pa-dash__panel-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.pa-dash__panel-head h3{ font-family:var(--pa-heading); font-size:22px; font-weight:600; margin:0; }
.pa-dash__panel-head a{ font-size:12.5px; color:var(--pa-accent); font-weight:600; text-decoration:none; }
.pa-lastorder{ display:flex; align-items:center; gap:13px; padding:13px; border:1px solid var(--pa-line); border-radius:14px; text-decoration:none; }
.pa-lastorder:hover{ border-color:var(--pa-accent); }
.pa-lastorder__ico{ width:48px; height:48px; border-radius:11px; flex:none; display:grid; place-items:center; background:var(--pa-soft); }
.pa-lastorder__body{ flex:1; min-width:0; }
.pa-lastorder__id{ display:block; font-weight:600; font-size:14.5px; color:var(--pa-ink); }
.pa-lastorder__meta{ display:block; font-size:12.5px; color:var(--pa-muted); }
.pa-lastorder__status{ font-size:11.5px; font-weight:700; padding:5px 11px; border-radius:999px; background:#e3f1e8; color:#2e7d52; white-space:nowrap; }
.pa-lastorder__status.pa-status--pending,.pa-lastorder__status.pa-status--on-hold{ background:#f6ecd6; color:#9a6a1a; }
.pa-lastorder__status.pa-status--cancelled,.pa-lastorder__status.pa-status--failed{ background:#f4e0db; color:#a8442f; }
.pa-lastorder__total{ font-size:15px; font-weight:600; white-space:nowrap; }
.pa-shortcuts{ display:flex; flex-direction:column; gap:9px; }
.pa-shortcuts a{ display:flex; align-items:center; gap:11px; padding:11px 14px; border-radius:12px; background:var(--pa-bg,#f4efe6); font-size:14px; font-weight:500; color:var(--pa-ink); text-decoration:none; transition:background .15s; }
.pa-shortcuts a:hover{ background:var(--pa-soft); color:var(--pa-accent); }
.pa-shortcuts a span{ color:var(--pa-accent); }
.pa-dash__empty{ text-align:center; padding:24px; color:var(--pa-muted); }
.pa-dash__empty p{ margin:0 0 14px; font-size:14.5px; }
@media (max-width:860px){
	.pa-dash__stats{ grid-template-columns:1fr 1fr; }
	.pa-dash__row{ grid-template-columns:1fr; }
}
.woocommerce-message::before,.woocommerce-info::before{ color:var(--pa-accent); }

/* =========================================================================
   10. QUICK VIEW (modale) + RECHERCHE INSTANTANÉE + DRAWERS
   ========================================================================= */
.pa-modal{ position:fixed; inset:0; z-index:200; display:none; }
.pa-modal.is-open{ display:block; }
.pa-modal__backdrop{ position:absolute; inset:0; background:rgba(26,21,16,.5); backdrop-filter:blur(3px); }
.pa-modal__dialog{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(880px,92vw); max-height:88vh; overflow:auto; background:var(--pa-surface); border-radius:20px; padding:28px; box-shadow:0 30px 80px -30px rgba(0,0,0,.5); }
.pa-modal__close{ position:absolute; top:14px; right:14px; width:38px; height:38px; border-radius:50%; border:none; background:var(--pa-soft); cursor:pointer; font-size:18px; }
.pa-search-panel{ position:fixed; inset:0 0 auto 0; z-index:200; background:var(--pa-surface); border-bottom:1px solid var(--pa-line); transform:translateY(-100%); transition:transform .3s ease; padding:22px 0; }
.pa-search-panel.is-open{ transform:translateY(0); }
.pa-search-panel .pa-container{ display:flex; flex-direction:column; gap:14px; }
.pa-search-input{ width:100%; font-size:20px; padding:14px 18px; }
.pa-search-results{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.pa-search-result{ display:flex; gap:12px; align-items:center; padding:8px; border-radius:12px; }
.pa-search-result:hover{ background:var(--pa-soft); }
.pa-search-result img{ width:54px; height:54px; border-radius:8px; object-fit:cover; }
.pa-search-empty{ color:var(--pa-muted); font-size:14px; }

/* =========================================================================
   11. RESPONSIVE
   ========================================================================= */
@media (max-width:980px){
  .pa-hero__inner{ grid-template-columns:1fr; gap:28px; }
  .pa-footer__grid{ grid-template-columns:1fr 1fr; gap:28px; }
  .pa-reassure-strip{ grid-template-columns:1fr 1fr; gap:18px; }
}
@media (max-width:860px){
  .pa-nav{ display:none; }
  .pa-burger{ display:grid; }
  .single-product.woocommerce div.product .pa-single-top{ grid-template-columns:1fr; gap:28px; }
  .woocommerce ul.products{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:16px; }
  .pa-topbar__inner{ gap:16px; font-size:11px; }
  .pa-container{ padding:0 20px; }
}
@media (max-width:560px){
  .pa-footer__grid{ grid-template-columns:1fr; }
  .pa-reassure-strip{ grid-template-columns:1fr 1fr; }
}

/* menu mobile */
.pa-mobile-nav{ position:fixed; inset:0; z-index:200; display:none; }
.pa-mobile-nav.is-open{ display:block; }
.pa-mobile-nav__backdrop{ position:absolute; inset:0; background:rgba(26,21,16,.5); }
.pa-mobile-nav__panel{ position:absolute; top:0; right:0; height:100%; width:min(320px,84vw); background:var(--pa-surface); padding:28px 24px; display:flex; flex-direction:column; gap:18px; box-shadow:-20px 0 60px -20px rgba(0,0,0,.4); }
.pa-mobile-nav__panel a{ font-family:var(--pa-heading); font-size:22px; color:var(--pa-ink); }
.pa-mobile-nav__panel ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
