/* =====================================================================
   LADY CARO DÉCO — « craftcore digital »
   Feuille de style principale du thème enfant Storefront
   ---------------------------------------------------------------------
   01. Tokens & base
   02. Motif point de croix + stickers (signatures)
   03. Ticker & bandeaux défilants
   04. En-tête (Storefront)
   05. Boutons
   06. Boutique & cartes produit (loop)
   07. Fiche produit + personnalisation broderie
   08. Panier & commande
   09. Pied de page
   10. Page d'accueil (lc-home : hero, bento, atelier, avis, perso, insta)
   11. Responsive & accessibilité
   ===================================================================== */

/* 01. TOKENS & BASE ------------------------------------------------- */
:root{
  --paper:#F0EDE3;
  --card:#FBFAF4;
  --ink:#15130D;
  --red:#E83A26;
  --blue:#2536DA;
  --mute:#8C8576;
  --disp:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --mono:'Space Mono',ui-monospace,monospace;
  --pixel:'Pixelify Sans',monospace;
  --shadow:6px 6px 0 var(--ink);
}

body.woocommerce,
body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--disp);
  font-weight:500;
  background-image:radial-gradient(rgba(21,19,13,.05) 1px,transparent 1px);
  background-size:22px 22px;
}

a{color:var(--ink);}
a:hover{color:var(--red);}

h1,h2,h3,h4,.entry-title,.page-title{
  font-family:var(--disp);
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--ink);
}

/* conteneur un poil plus large que Storefront par défaut */
.col-full{max-width:1240px;}

/* 02. POINT DE CROIX + STICKERS ------------------------------------- */
.lc-stitch{
  aspect-ratio:1/1;
  background-size:contain;background-repeat:no-repeat;background-position:center;
}
.lc-stitch.is-on{
  background-image:
    linear-gradient(45deg,transparent 42%,var(--red) 42%,var(--red) 58%,transparent 58%),
    linear-gradient(-45deg,transparent 42%,var(--red) 42%,var(--red) 58%,transparent 58%);
}
.lc-stitch.is-on.is-blue{
  background-image:
    linear-gradient(45deg,transparent 42%,var(--blue) 42%,var(--blue) 58%,transparent 58%),
    linear-gradient(-45deg,transparent 42%,var(--blue) 42%,var(--blue) 58%,transparent 58%);
}
.lc-x{font-family:var(--mono);color:var(--red);font-weight:700;}

.lc-sticker{
  display:inline-block;
  font-family:var(--mono);font-size:12px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;
  background:var(--ink);color:var(--paper);
  padding:6px 13px;border-radius:4px;transform:rotate(-3deg);
  line-height:1;
}
.lc-sticker.lc-red{background:var(--red);color:#fff;}
.lc-sticker.lc-blue{background:var(--blue);color:#fff;}
.lc-sticker.lc-outline{background:transparent;color:var(--ink);border:2px solid var(--ink);}

/* 03. TICKER & BANDEAUX --------------------------------------------- */
.lc-ticker{
  background:var(--ink);color:var(--paper);
  border-bottom:2.5px solid var(--ink);
  overflow:hidden;white-space:nowrap;
}
.lc-ticker-track{
  display:inline-block;padding:11px 0;
  font-family:var(--mono);font-size:13px;text-transform:uppercase;letter-spacing:.1em;
  animation:lc-scroll 26s linear infinite;
}
.lc-ticker-track span{margin:0 8px;}
.lc-ticker .lc-star{color:var(--red);}

.lc-band{
  background:var(--blue);color:#fff;
  border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);
  padding:16px 0;overflow:hidden;white-space:nowrap;
}
.lc-band .lc-band-row{
  display:inline-block;
  font-family:var(--disp);font-weight:800;font-size:26px;letter-spacing:-.01em;
  animation:lc-scroll 22s linear infinite;
}
.lc-band .lc-band-row span{margin:0 18px;}
.lc-band .lc-band-row .lc-x{color:#fff;}

@keyframes lc-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* 04. EN-TÊTE SUR-MESURE (rangée unique : logo+nom · menu · panier) -- */
.site-header{
  background:var(--paper)!important;
  border-bottom:2.5px solid var(--ink);
  padding:14px 0!important;
}
/* Storefront ajoute une margin-bottom sous l'en-tête sur la home : sa règle
   exclut « page-template-template-homepage » mais pas notre variante
   « -ladycaro », donc elle s'applique chez nous. On la neutralise. */
.home .site-header{margin-bottom:0!important;}
.lc-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 26px;}

/* marque : logo rond + nom */
.lc-brand{display:flex;align-items:center;gap:13px;}
.lc-brand-logo{
  width:50px!important;height:50px!important;
  border-radius:50%;border:2.5px solid var(--ink);display:block;margin:0;
}
.lc-brand-name{
  font-family:var(--disp);font-weight:800;font-size:21px;letter-spacing:-.02em;
  color:var(--ink);line-height:1;
}
.lc-brand-name .lc-dot{color:var(--red);}

/* navigation (centrée via space-between du conteneur) */
.lc-nav-menu{display:flex;gap:6px;list-style:none;margin:0;padding:0;}
.lc-nav-menu li{margin:0;padding:0;list-style:none;}
.lc-nav-menu a{
  display:block;
  font-family:var(--mono);font-size:13px;text-transform:uppercase;letter-spacing:.02em;
  color:var(--ink);border:2px solid transparent;border-radius:6px;padding:8px 13px;
  transition:.15s;
}
.lc-nav-menu a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.lc-nav-menu .current-menu-item>a{color:var(--red);}

/* panier : pastille rouge « Panier (montant) » à ombre dure */
.lc-cart-wrap{position:relative;flex:0 0 auto;}
.lc-cart-btn{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--red);color:#fff;text-decoration:none;
  font-family:var(--mono);font-weight:700;font-size:13px;line-height:1;
  padding:11px 16px;border-radius:6px;border:2.5px solid var(--ink);
  box-shadow:3px 3px 0 var(--ink);transition:.15s;white-space:nowrap;
}
.lc-cart-btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink);color:#fff;}
.lc-cart-btn .lc-cart-amt,
.lc-cart-btn .amount,
.lc-cart-btn .woocommerce-Price-amount,
.lc-cart-btn .woocommerce-Price-currencySymbol{color:#fff;}

/* 05. BOUTONS ------------------------------------------------------- */
button,input[type="button"],input[type="reset"],input[type="submit"],
.button,a.button,.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,.woocommerce #respond input#submit{
  font-family:var(--mono)!important;font-weight:700!important;
  font-size:14px;text-transform:uppercase;letter-spacing:.04em;
  background:var(--ink);color:var(--paper)!important;
  border:2.5px solid var(--ink);border-radius:9px;
  padding:14px 24px;box-shadow:4px 4px 0 var(--red);
  transition:transform .15s, box-shadow .15s;
}
button:hover,.button:hover,a.button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{
  background:var(--ink);color:var(--paper)!important;
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--red);
}
/* bouton principal (ajouter au panier, commander) -> accent rouge */
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.single_add_to_cart_button,
.checkout-button{
  background:var(--red)!important;color:#fff!important;
  box-shadow:4px 4px 0 var(--ink);
}
.woocommerce button.button.alt:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover{box-shadow:6px 6px 0 var(--ink);}

/* 06. BOUTIQUE & CARTES PRODUIT ------------------------------------- */
.woocommerce .page-title,
.woocommerce-products-header__title{
  font-family:var(--disp);font-weight:800;letter-spacing:-.03em;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:var(--card);
  border:2.5px solid var(--ink);border-radius:12px;
  overflow:hidden;position:relative;
  padding:0 0 16px;
  transition:transform .18s, box-shadow .18s;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-5px);
  box-shadow:0 12px 0 -2px var(--red);
}
.woocommerce ul.products li.product a img{
  margin:0 0 14px;border-bottom:2.5px solid var(--ink);border-radius:0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--disp);font-weight:700;font-size:18px;line-height:1.15;
  padding:.4em 16px 0;letter-spacing:-.01em;
}
.woocommerce ul.products li.product .price{
  font-family:var(--mono);font-weight:700;font-size:15px;color:var(--ink);
  padding:0 16px;
}
.woocommerce ul.products li.product .price .amount{
  background:var(--ink);color:var(--paper);
  display:inline-block;padding:5px 11px;border-radius:5px;
}
.woocommerce ul.products li.product .price del{opacity:.5;background:none;}
.woocommerce ul.products li.product .button{
  margin:12px 16px 0;display:inline-block;
}
/* étiquette promo native */
.woocommerce span.onsale{
  background:var(--blue);color:#fff;
  font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:11px;
  border-radius:5px;border:2px solid var(--ink);
  min-height:auto;min-width:auto;padding:5px 9px;line-height:1;
  top:auto;right:12px;left:auto;
}

/* cachet « fait main » + stickers perso/unique (ajoutés via functions.php) */
.lc-handmade{
  position:absolute;z-index:3;bottom:14px;right:12px;
  font-family:var(--mono);font-size:10px;font-weight:700;text-transform:uppercase;
  color:var(--mute);letter-spacing:.04em;
}
.lc-loop-tag{position:absolute;z-index:3;top:12px;left:12px;}

/* 07. FICHE PRODUIT + PERSONNALISATION ------------------------------ */
.single-product div.product .product_title{
  font-family:var(--disp);font-weight:800;font-size:clamp(30px,4vw,46px);
  line-height:.98;letter-spacing:-.03em;
}
.single-product div.product .price,
.single-product div.product p.price{
  font-family:var(--disp);font-weight:800;font-size:34px;color:var(--ink);
}
.single-product div.product .price .amount{
  background:var(--ink);color:var(--paper);padding:5px 14px;border-radius:8px;
  display:inline-block;
}
.single-product .woocommerce-product-gallery{
  border:2.5px solid var(--ink);border-radius:14px;overflow:hidden;
  box-shadow:var(--shadow);background:var(--card);
}
.single-product .woocommerce-product-gallery__trigger{z-index:4;}
.woocommerce-tabs ul.tabs li{
  background:var(--card);border:2.5px solid var(--ink);border-radius:8px 8px 0 0;
}
.woocommerce-tabs ul.tabs li.active{background:var(--red);}
.woocommerce-tabs ul.tabs li.active a{color:#fff;}
.woocommerce-tabs ul.tabs li a{font-family:var(--mono);text-transform:uppercase;font-size:13px;font-weight:700;}
.woocommerce div.product .woocommerce-tabs .panel{
  border:2.5px solid var(--ink);border-radius:0 12px 12px 12px;padding:24px;background:var(--card);
  font-family:var(--mono);font-size:14px;line-height:1.7;
}

/* quantité */
.woocommerce .quantity .qty{
  border:2.5px solid var(--ink);border-radius:9px;background:var(--card);
  font-family:var(--mono);font-weight:700;height:54px;
}

/* --- bloc personnalisation broderie --- */
.lc-perso{
  position:relative;
  border:2.5px solid var(--ink);border-radius:14px;background:var(--card);
  padding:26px;margin:0 0 22px;box-shadow:6px 6px 0 var(--blue);
}
.lc-perso-tag{position:absolute;top:-14px;left:20px;}
.lc-perso .lc-field{margin:0 0 18px;}
.lc-perso label{
  display:block;font-family:var(--mono);font-size:12px;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;margin-bottom:9px;color:var(--ink);
}
.lc-perso label small{font-weight:400;text-transform:none;letter-spacing:0;color:var(--mute);margin-left:6px;}
.lc-perso input[type="text"]{
  width:100%;padding:14px 16px;
  border:2.5px solid var(--ink);border-radius:9px;background:var(--paper);
  font-family:var(--mono);font-size:14px;color:var(--ink);
}
.lc-perso input[type="text"]:focus{outline:none;box-shadow:4px 4px 0 var(--red);}
.lc-aplabel{
  font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--mute);margin:0 0 6px;
}
.lc-apercu{
  font-family:var(--pixel);font-weight:700;font-size:30px;color:var(--red);
  min-height:44px;padding:6px 10px;margin:0 0 18px;
  border:2px dashed var(--ink);border-radius:8px;background:var(--paper);
  background-image:radial-gradient(rgba(21,19,13,.08) 1px,transparent 1px);background-size:11px 11px;
}
.lc-fils{display:flex;gap:12px;flex-wrap:wrap;}
.lc-fil{
  width:36px;height:36px;border-radius:7px;cursor:pointer;
  border:2.5px solid var(--ink);transition:.15s;position:relative;display:inline-block;
}
.lc-fil input{position:absolute;opacity:0;inset:0;cursor:pointer;}
.lc-fil:hover{transform:translate(-1px,-1px);}
.lc-fil.is-sel{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px);}
.lc-fil:has(input:checked){box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px);}

/* 08. PANIER & COMMANDE --------------------------------------------- */
.woocommerce table.shop_table{
  border:2.5px solid var(--ink);border-radius:12px;border-collapse:separate;
  background:var(--card);
}
.woocommerce table.shop_table th{font-family:var(--mono);text-transform:uppercase;font-size:12px;}
.woocommerce .cart-collaterals .cart_totals>h2,
.woocommerce-checkout h3{font-family:var(--disp);font-weight:800;}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container .select2-selection{
  border:2.5px solid var(--ink)!important;border-radius:9px;background:var(--paper);
}
.woocommerce-info,.woocommerce-message{
  border-top-color:var(--red);border:2.5px solid var(--ink);border-radius:10px;background:var(--card);
}
.woocommerce-info::before,.woocommerce-message::before{color:var(--red);}

/* 09. PIED DE PAGE (sur-mesure, façon maquette) --------------------- */
.site-footer{
  background:var(--ink)!important;color:var(--paper)!important;
  border-top:2.5px solid var(--ink);padding:64px 0 0;
}
/* le fond reste pleine largeur ; .lc-wrap centre le contenu à 1240 comme le reste du site */
.site-footer .col-full{max-width:none;padding:0;}

.lc-footer-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;
}
.lc-footer-logo{
  width:54px!important;height:54px!important;border-radius:50%;
  border:2.5px solid var(--paper);margin:0 0 16px;display:block;
}
.lc-footer-brand p{
  font-family:var(--mono);font-size:13px;line-height:1.7;max-width:30ch;color:#C9C4B6;margin:0 0 18px;
}
.lc-socials{display:flex;gap:10px;}
.lc-socials a{
  width:40px;height:40px;border:2.5px solid var(--paper);border-radius:8px;
  display:grid;place-items:center;transition:.15s;color:var(--paper);
}
.lc-socials a:hover{background:var(--red);border-color:var(--red);color:#fff;}
.lc-socials svg{width:17px;height:17px;}

.lc-footer-col h4{
  font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em;
  color:var(--red);margin:0 0 16px;font-weight:700;
}
.lc-footer-col ul{list-style:none;margin:0;padding:0;}
.lc-footer-col li{margin-bottom:10px;font-size:15px;color:var(--paper);}
.lc-footer-col a{color:var(--paper);}
.lc-footer-col a:hover{color:var(--red);}

.lc-footer-bas{
  border-top:1px solid rgba(255,255,255,.15);padding:18px 0;
  font-family:var(--mono);font-size:12px;color:#8C8576;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
}
.lc-footer-bas .lc-star{color:var(--red);}

/* 10. PAGE D'ACCUEIL (lc-home) -------------------------------------- */
/* La home « casse » le conteneur 1240 de Storefront : le corps devient pleine
   largeur pour les sections bord à bord (bande défilante, produits, atelier),
   et le contenu reste centré via .lc-wrap (max-width 1240) dans chaque section. */
.page-template-template-homepage-ladycaro .site-content .col-full,
.page-template-template-accueil-blocs .site-content .col-full{
  max-width:none;padding-left:0;padding-right:0;
}
.lc-home{overflow:hidden;}
/* en version blocs, on retire les marges/largeurs par défaut des blocs cœur
   pour que .lc-wrap (1240) et les sections pleine largeur gèrent la mise en page */
.lc-home-blocks > .wp-block-group,
.lc-home-blocks > .wp-block-columns,
.lc-home-blocks > div{margin-top:0;margin-bottom:0;}
/* la mise en page « constrained » des blocs Groupe écrase le max-width de .lc-wrap :
   on le réimpose pour garder le contenu centré à 1240 dans chaque section. */
.lc-home-blocks .lc-wrap{max-width:1240px!important;margin-left:auto!important;margin-right:auto!important;padding:0 26px!important;}
/* en-tête de section en version blocs : titre + // num empilés */
.lc-home-blocks .lc-head-blocks{margin-bottom:38px;}
.lc-home-blocks .lc-head-blocks .lc-num{margin-top:8px;}
.lc-produits .lc-head-blocks h2{color:var(--paper);}
.lc-produits .lc-head-blocks .lc-num{color:#9C968A;}
/* avis : la rotation .lc-note:nth-child ne marche pas (chaque note est seule dans
   sa colonne) → on cible la position de la colonne pour retrouver le décalage. */
.lc-avis-grid .wp-block-column:nth-child(1) .lc-note{transform:rotate(-1.5deg);}
.lc-avis-grid .wp-block-column:nth-child(2) .lc-note{transform:rotate(1deg);}
.lc-avis-grid .wp-block-column:nth-child(3) .lc-note{transform:rotate(-0.5deg);}
/* fil d'Ariane masqué sur ce gabarit (comme la page d'accueil) */
.page-template-template-accueil-blocs .woocommerce-breadcrumb,
.page-template-template-accueil-blocs .storefront-breadcrumb,
.page-template-template-accueil-blocs nav.woocommerce-breadcrumb{display:none!important;}
.lc-wrap{max-width:1240px;margin:0 auto;padding:0 26px;}

/* hero */
.lc-hero{padding:64px 0 50px;}
.lc-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;}
.lc-eyebrow{
  font-family:var(--mono);font-size:13px;text-transform:uppercase;letter-spacing:.14em;
  color:var(--red);margin-bottom:18px;display:flex;align-items:center;gap:10px;
}
/* en version blocs l'eyebrow est un <p> : les règles .lc-hero p / .lc-atelier p
   (15px, marge, max-width) l'emportent sinon. On les rebat. */
.lc-home .lc-eyebrow{font-size:13px;margin:0 0 18px;max-width:none;}
.lc-hero h1{font-size:clamp(46px,7vw,92px);line-height:.94;letter-spacing:-.03em;}
.lc-hero h1 .lc-out{-webkit-text-stroke:2.5px var(--ink);color:transparent;font-style:italic;}
.lc-hero h1 .lc-hl{background:var(--red);color:#fff;padding:0 .12em;display:inline-block;transform:rotate(-1.5deg);}
.lc-hero p{font-family:var(--mono);font-size:15px;line-height:1.7;max-width:42ch;margin:28px 0 32px;}
.lc-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.lc-btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.04em;
  padding:15px 26px;border:2.5px solid var(--ink);border-radius:8px;cursor:pointer;transition:.15s;
}
.lc-btn-solid{background:var(--ink);color:var(--paper);box-shadow:4px 4px 0 var(--red);}
.lc-btn-solid:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--red);color:var(--paper);}
.lc-btn-ghost{background:transparent;color:var(--ink);}
.lc-btn-ghost:hover{background:var(--ink);color:var(--paper);}

.lc-heart-card{
  background:var(--card);border:2.5px solid var(--ink);border-radius:14px;
  box-shadow:8px 8px 0 var(--ink);padding:30px;position:relative;
}
.lc-heart-card .lc-tag{position:absolute;top:-14px;right:18px;}
.lc-heart-card .lc-corner{position:absolute;bottom:10px;left:14px;font-family:var(--pixel);font-size:13px;color:var(--mute);}
.lc-heart-grid{display:grid;grid-template-columns:repeat(11,1fr);gap:3px;width:78%;margin:6px auto 14px;}
.lc-heart-grid .lc-stitch:not(.is-on){
  background-image:radial-gradient(rgba(21,19,13,.16) 1.4px,transparent 1.5px);background-size:100% 100%;
}
.lc-heart-legend{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);text-align:center;}

/* en-têtes de section */
.lc-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:20px;flex-wrap:wrap;}
.lc-head h2{font-size:clamp(32px,4.4vw,56px);line-height:.98;letter-spacing:-.03em;}
.lc-head .lc-num{font-family:var(--mono);font-size:13px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;}
.lc-section{padding:78px 0;}

/* bento catégories */
.lc-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:200px;gap:18px;}
.lc-tile{
  border:2.5px solid var(--ink);border-radius:12px;background:var(--card);
  position:relative;overflow:hidden;transition:.18s;
  display:flex;flex-direction:column;justify-content:flex-end;padding:22px;
  background-size:cover;background-position:center;
}
.lc-tile:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--ink);}
.lc-tile.is-big{grid-row:span 2;background-color:var(--red);}
.lc-tile.is-big h3,.lc-tile.is-big .lc-meta{color:#fff;}
.lc-tile.is-wide{grid-column:span 2;}
.lc-tile .lc-ill{position:absolute;inset:0;display:grid;place-items:center;opacity:.9;}
.lc-tile .lc-ill svg{width:42%;height:42%;}
.lc-tile h3{font-size:25px;position:relative;z-index:2;}
.lc-tile .lc-meta{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);position:relative;z-index:2;}
.lc-tile.has-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(21,19,13,.55),transparent 60%);}
.lc-tile.has-thumb h3,.lc-tile.has-thumb .lc-meta{color:#fff;position:relative;z-index:2;}

/* bloc produits sur fond encre */
.lc-produits{
  background:var(--ink);color:var(--paper);
  border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);
  background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:22px 22px;
  padding:78px 0;
}
.lc-produits .lc-head h2{color:var(--paper);}
.lc-produits .woocommerce ul.products li.product{background:var(--paper);}

/* grille produits phares : 4 colonnes alignées (la maquette utilise display:grid).
   On neutralise les floats/largeurs WooCommerce et le clearfix (sinon les pseudo-
   éléments ::before/::after créent des cellules fantômes dans la grille). */
.lc-produits ul.products{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0;
}
.lc-produits ul.products::before,
.lc-produits ul.products::after{content:none;display:none;}
.lc-produits ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;clear:none!important;
}
/* vignettes façon maquette : alignées à gauche, sans bouton « ajouter au panier »
   ni cachet « fait main » (la carte entière sert de lien vers le produit). */
.lc-produits ul.products li.product{text-align:left;}
.lc-produits ul.products li.product .button,
.lc-produits ul.products li.product .added_to_cart,
.lc-produits ul.products li.product .lc-handmade{display:none!important;}
.lc-produits ul.products li.product .woocommerce-loop-product__title{padding-left:16px;padding-right:16px;}
.lc-produits ul.products li.product .price{display:block;padding:0 16px 16px;}
.lc-centre{text-align:center;margin-top:42px;}

/* atelier */
.lc-atelier{
  background:var(--red);color:#fff;
  border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);padding:78px 0;
}
.lc-atelier-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;}
.lc-atelier .lc-eyebrow{color:#fff;}
.lc-atelier h2{color:#fff;font-size:clamp(34px,4.6vw,60px);line-height:.98;margin-bottom:22px;}
.lc-atelier p{font-family:var(--mono);font-size:15px;line-height:1.7;max-width:48ch;margin-bottom:16px;}
.lc-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.lc-chip{
  font-family:var(--mono);font-size:12px;font-weight:700;text-transform:uppercase;
  background:#fff;color:var(--ink);padding:8px 14px;border-radius:6px;border:2.5px solid var(--ink);
}
.lc-atelier-visu{
  background:var(--card);border:2.5px solid var(--ink);border-radius:14px;box-shadow:8px 8px 0 var(--ink);
  aspect-ratio:1/1.04;display:grid;place-items:center;position:relative;background-size:cover;background-position:center;
}
.lc-atelier-visu .lc-badge-rond{
  position:absolute;top:-22px;left:-22px;width:92px;height:92px;border-radius:50%;
  background:var(--blue);color:#fff;border:2.5px solid var(--ink);
  display:grid;place-items:center;text-align:center;
  font-family:var(--mono);font-size:11px;font-weight:700;text-transform:uppercase;line-height:1.3;
  transform:rotate(-8deg);
}

/* avis */
.lc-avis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.lc-note{
  background:var(--card);border:2.5px solid var(--ink);border-radius:10px;
  padding:26px 24px;position:relative;box-shadow:5px 5px 0 var(--ink);
}
.lc-note:nth-child(1){transform:rotate(-1.5deg);}
.lc-note:nth-child(2){transform:rotate(1deg);}
.lc-note:nth-child(3){transform:rotate(-.5deg);}
.lc-note .lc-stars{color:var(--red);font-family:var(--mono);font-weight:700;letter-spacing:2px;margin-bottom:12px;}
.lc-note p{font-size:18px;font-weight:500;line-height:1.4;margin-bottom:16px;}
.lc-note .lc-who{font-family:var(--mono);font-size:12px;text-transform:uppercase;color:var(--mute);letter-spacing:.04em;}

/* perso CTA */
.lc-perso-cta{padding:80px 0;}
.lc-perso-box{
  border:2.5px solid var(--ink);border-radius:16px;background:var(--card);
  padding:54px;display:grid;grid-template-columns:1.3fr .7fr;gap:36px;align-items:center;
  box-shadow:10px 10px 0 var(--blue);position:relative;
}
.lc-perso-box h2{font-size:clamp(30px,4vw,50px);line-height:.98;}
.lc-perso-box h2 em{font-style:italic;color:var(--red);}
.lc-perso-box p{font-family:var(--mono);font-size:14px;line-height:1.7;margin:18px 0 26px;}
.lc-perso-mini{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;width:160px;margin-left:auto;}

/* instagram */
.lc-insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.lc-ig{
  aspect-ratio:1/1;border:2.5px solid var(--ink);border-radius:10px;background:var(--card);
  display:grid;place-items:center;transition:.15s;
}
.lc-ig:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink);background:var(--blue);}
.lc-ig:hover svg{color:#fff;}
.lc-ig svg{width:26px;height:26px;color:var(--ink);}

/* 11. RESPONSIVE & ACCESSIBILITÉ ------------------------------------ */
@media (max-width:980px){
  .lc-nav{display:none;}
  .lc-header-inner{gap:14px;}
  .lc-hero-grid,.lc-atelier-grid,.lc-perso-box{grid-template-columns:1fr;gap:36px;}
  .lc-bento{grid-template-columns:1fr 1fr;grid-auto-rows:180px;}
  .lc-produits ul.products{grid-template-columns:repeat(2,1fr);}
  .lc-footer-grid{grid-template-columns:1fr 1fr;gap:30px;}
  .lc-tile.is-big{grid-row:span 1;}
  .lc-avis-grid{grid-template-columns:1fr;}
  .lc-insta-grid{grid-template-columns:repeat(3,1fr);}
  .lc-perso-mini{margin:0 auto;}
}
@media (max-width:600px){
  .lc-bento{grid-template-columns:1fr;}
  .lc-produits ul.products{grid-template-columns:1fr;}
  .lc-footer-grid{grid-template-columns:1fr;}
  .lc-tile.is-wide{grid-column:span 1;}
  .lc-section,.lc-produits,.lc-atelier{padding:56px 0;}
  .lc-perso-box,.lc-atelier-visu{padding:32px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;}
  .lc-ticker-track,.lc-band-row{animation:none!important;}
}
