/* Les pages qui n'ont pas été réécrites (v1.3) : conditions générales, mentions légales,
   confidentialité, panier, commande, mon compte, produits (chèques cadeaux), recherche,
   catégories, page introuvable. Classe <body> « lha-ancien ».
   Elles gardent leur contenu ; elles prennent seulement les couleurs, les polices et la mise en
   page de la refonte, pour qu'aucune ancienne interface ne réapparaisse au fil de la navigation. */

/* ---------- mise en page : pleine largeur, sans barre latérale ---------- */
body.lha-ancien,
body.lha-ancien #page-container,
body.lha-ancien #main-content{background:var(--lha-surface)}
body.lha-ancien #main-content .container{
  width:auto; max-width:1180px; margin:0 auto; padding:56px 24px 96px; box-sizing:content-box;
}
body.lha-ancien #main-content .container::before{display:none}
body.lha-ancien #sidebar{display:none}
body.lha-ancien #left-area{width:100%;float:none;padding:0}
body.lha-ancien #main-content .et_pb_section:not(.lha){background-color:var(--lha-surface)!important;padding:56px 24px 80px}
body.lha-ancien #main-content .et_pb_section:not(.lha) .et_pb_row{width:100%;max-width:1180px;padding:0}

/* textes longs (pages légales) : une colonne de lecture confortable */
body.lha-ancien.page:not(.woocommerce-page) #main-content .et_pb_section:not(.lha) .et_pb_row,
body.lha-ancien.search #left-area,
body.lha-ancien.archive:not(.woocommerce-page) #left-area{max-width:780px;margin-left:auto;margin-right:auto}

/* ---------- typographie ---------- */
body.lha-ancien #main-content,
body.lha-ancien #main-content :where(p,li,td,th,dd,dt,label,input,select,textarea,button){font-family:var(--lha-sans)}
body.lha-ancien #main-content :where(.et_pb_text,.entry-content,.woocommerce-Tabs-panel,.post-content) :where(p,li,td,th){
  color:var(--lha-ink); font-size:17px; line-height:1.7;
}
body.lha-ancien #main-content .et_pb_text p{padding-bottom:0;margin:0 0 1em}
body.lha-ancien #main-content .et_pb_text :where(strong,b){font-weight:600;color:var(--lha-ink)}
body.lha-ancien #main-content a{color:var(--lha-accent);text-underline-offset:3px}
body.lha-ancien #main-content a:hover{color:var(--lha-accent-h)}
body.lha-ancien #main-content :where(a,button,input,select,textarea,summary):focus-visible{
  outline:3px solid var(--lha-accent); outline-offset:2px; border-radius:4px;
}

body.lha-ancien #main-content :where(h1,h2,h3,h4,h5,h6){
  font-family:var(--lha-display); color:var(--lha-ink); font-weight:600; letter-spacing:-.015em;
  line-height:1.15; padding-bottom:0; text-transform:none;
}
body.lha-ancien #main-content :where(h1.entry-title,h1.main_title,h1.page-title,h1.not-found-title,h1.product_title,.et_pb_text h1,.et_pb_wc_title h1){
  font-size:clamp(34px,4.2vw,52px); margin:0 0 28px;
}
body.lha-ancien #main-content .et_pb_text h2{font-size:clamp(24px,2.4vw,30px);margin:1.8em 0 .5em}
body.lha-ancien #main-content .et_pb_text h3{font:600 19px/1.35 var(--lha-sans);letter-spacing:0;margin:1.5em 0 .4em}
body.lha-ancien #main-content .et_pb_text h4{font:600 17px/1.4 var(--lha-sans);letter-spacing:0;margin:1.3em 0 .3em}
body.lha-ancien #main-content .et_pb_text :where(h2,h3,h4) :where(span,strong){font:inherit!important;color:inherit!important}

/* titres des conditions générales : des paragraphes en gras souligné (copiés de Word) */
body.lha-ancien #main-content .et_pb_text p:has(> a[name^="_Toc"]){margin:2em 0 .5em}
body.lha-ancien #main-content .et_pb_text p:has(> a[name^="_Toc"]) u{text-decoration:none}
body.lha-ancien #main-content .et_pb_text p:has(> a[name^="_Toc"]) strong{font:600 19px/1.35 var(--lha-sans);color:var(--lha-ink)}
body.lha-ancien #main-content .et_pb_text p:has(> a[name^="_Toc"] + strong > u){
  margin-top:2.4em; padding-top:1.2em; border-top:1px solid var(--lha-border);
}
body.lha-ancien #main-content .et_pb_text p:has(> a[name^="_Toc"] + strong > u) strong{
  font:600 clamp(23px,2.2vw,28px)/1.2 var(--lha-display); letter-spacing:-.015em;
}

/* listes et tableaux */
body.lha-ancien #main-content .et_pb_text ul{list-style:disc;padding:0 0 1em 1.3em;margin:0}
body.lha-ancien #main-content .et_pb_text ol{list-style:decimal;padding:0 0 1em 1.5em;margin:0}
body.lha-ancien #main-content .et_pb_text li{padding-left:.2em;margin:0 0 .35em}
body.lha-ancien #main-content .et_pb_text li::marker{color:var(--lha-primary)}
body.lha-ancien #main-content .et_pb_text table{
  width:100%; border-collapse:collapse; margin:.5em 0 1.5em; border:1px solid var(--lha-border); background:var(--lha-raised);
}
body.lha-ancien #main-content .et_pb_text :where(th,td){
  border:1px solid var(--lha-border); padding:10px 12px; font-size:15px; line-height:1.5; text-align:left; vertical-align:top;
}
body.lha-ancien #main-content .et_pb_text th{background:var(--lha-sunken);font-weight:600}

/* ---------- recherche et catégories ---------- */
body.lha-ancien .lha-liste-tete{margin:0 0 32px;padding-bottom:24px;border-bottom:1px solid var(--lha-border)}
body.lha-ancien .lha-liste-tete .lha-liste-sur{font:600 13px/1.2 var(--lha-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--lha-muted);margin:0 0 10px}
body.lha-ancien .lha-liste-tete h1{font:600 clamp(32px,3.8vw,46px)/1.12 var(--lha-display);letter-spacing:-.018em;color:var(--lha-ink);margin:0 0 10px;padding:0}
body.lha-ancien .lha-liste-tete p{font-size:17px;line-height:1.6;color:var(--lha-muted);margin:0;padding:0}
body.lha-ancien .lha-liste-tete a.lha-lien-fleche{display:inline-flex;align-items:center;min-height:44px;font:600 16px/1.3 var(--lha-sans);color:var(--lha-accent)}
body.lha-ancien #left-area article.et_pb_post{
  margin:0; padding:22px 0; border-bottom:1px solid var(--lha-border); overflow:hidden;
}
body.lha-ancien #left-area article.et_pb_post .entry-featured-image-url{
  float:right; width:200px; margin:0 0 12px 24px; border-radius:var(--lha-r-md); overflow:hidden;
}
body.lha-ancien #left-area article.et_pb_post .entry-featured-image-url img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
body.lha-ancien #left-area article.et_pb_post h2.entry-title{font:600 24px/1.25 var(--lha-display);letter-spacing:-.01em;margin:0 0 4px}
body.lha-ancien #left-area article.et_pb_post h2.entry-title a{color:var(--lha-ink);text-decoration:none}
body.lha-ancien #left-area article.et_pb_post h2.entry-title a:hover{color:var(--lha-accent-h);text-decoration:underline}
body.lha-ancien #left-area .post-meta{font-size:14px;color:var(--lha-muted);margin:0 0 8px}
body.lha-ancien #left-area .post-meta a{color:var(--lha-muted)}
body.lha-ancien #left-area .post-meta .author{display:none}
body.lha-ancien #left-area article.et_pb_post > p:not(.post-meta){font-size:16px;line-height:1.6;color:var(--lha-muted)}
body.lha-ancien #left-area .pagination{padding:24px 0 0}
body.lha-ancien #left-area .pagination a{font:600 16px/1.2 var(--lha-sans);color:var(--lha-accent);display:inline-flex;align-items:center;min-height:44px}
body.lha-ancien #left-area .not_found .entry{padding:0}
body.lha-ancien #left-area .not_found p{font-size:17px;color:var(--lha-muted)}

/* ---------- page introuvable (modeles/404.php) ---------- */
body.lha-page #main-content.lha-404{background:var(--lha-surface);padding:88px 24px 112px}
.lha-404 .lha-404-in{max-width:720px;margin:0 auto;font-family:var(--lha-sans)}
.lha-404 .lha-404-code{font:600 13px/1.2 var(--lha-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--lha-muted);margin:0 0 12px;padding:0}
.lha-404 h1{font:600 clamp(34px,4.4vw,54px)/1.1 var(--lha-display);letter-spacing:-.02em;color:var(--lha-ink);margin:0 0 16px;padding:0}
.lha-404 .lha-404-txt{font-size:19px;line-height:1.6;color:var(--lha-muted);margin:0 0 28px;padding:0}
.lha-404 .lha-404-liens{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 32px;border-top:1px solid var(--lha-border-strong)}
.lha-404 .lha-404-liens li{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--lha-border)}
.lha-404 .lha-404-liens a{
  display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:56px;
  font:600 19px/1.3 var(--lha-display); letter-spacing:-.01em; color:var(--lha-ink); text-decoration:none;
}
.lha-404 .lha-404-liens a::after{
  content:""; flex:0 0 26px; width:26px; height:26px; border-radius:50%;
  background:var(--lha-sage100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235a6f52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12h11M12.5 7l5 5-5 5'/%3E%3C/svg%3E") center/14px no-repeat;
  transition:transform .2s ease;
}
.lha-404 .lha-404-liens a:hover{color:var(--lha-primary-h)}
.lha-404 .lha-404-liens a:hover::after{transform:translateX(3px)}
.lha-404 .lha-404-tel{margin:28px 0 0;padding:0;font-size:16px;color:var(--lha-muted)}
.lha-404 a:focus-visible{outline:3px solid var(--lha-accent);outline-offset:2px;border-radius:4px}
.lha-404 .lha-404-tel a{color:var(--lha-accent);font-weight:600;text-underline-offset:3px}

/* ---------- WooCommerce : boutons, champs, messages ---------- */
body.lha-ancien #main-content :where(.button,button.button,a.button,input.button,.wc-block-components-button,.wp-element-button,.single_add_to_cart_button,.checkout-button){
  font:600 16px/1.2 var(--lha-sans)!important; letter-spacing:0!important; text-transform:none!important;
  min-height:48px; padding:14px 22px!important; border:0!important; border-radius:var(--lha-r-md)!important;
  background:var(--lha-accent)!important; color:#fff!important; box-shadow:none!important;
  display:inline-flex; align-items:center; justify-content:center; text-decoration:none!important;
  transition:background-color .15s ease!important;
}
body.lha-ancien #main-content :where(.button,a.button,input.button,.wc-block-components-button,.wp-element-button):hover{background:var(--lha-accent-h)!important;color:#fff!important}
body.lha-ancien #main-content :where(.button,a.button,.wc-block-components-button)::after,
body.lha-ancien #main-content :where(.button,a.button,.wc-block-components-button)::before{display:none!important}
body.lha-ancien #main-content :where(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],select,textarea){
  font:400 16px/1.4 var(--lha-sans); color:var(--lha-ink); background:#fff;
  border:1px solid var(--lha-border-strong)!important; border-radius:var(--lha-r-md)!important;
  min-height:48px; padding:10px 14px!important; box-sizing:border-box;
}
body.lha-ancien #main-content :where(input,select,textarea):focus{border-color:var(--lha-ink)!important;outline:3px solid var(--lha-accent);outline-offset:1px}
body.lha-ancien #main-content .woocommerce-form label,
body.lha-ancien #main-content .woocommerce form .form-row label{font:600 14px/1.4 var(--lha-sans);color:var(--lha-ink)}
body.lha-ancien #main-content :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner){
  background:var(--lha-raised)!important; color:var(--lha-ink)!important; border:1px solid var(--lha-border)!important;
  border-left:4px solid var(--lha-primary)!important; border-radius:var(--lha-r-md)!important; font-size:16px;
}
body.lha-ancien #main-content .woocommerce-error{border-left-color:#a33a2a!important}
body.lha-ancien #main-content :where(.woocommerce-message,.woocommerce-info)::before{color:var(--lha-primary)!important}
body.lha-ancien #main-content .woocommerce-breadcrumb{font-size:14px;color:var(--lha-muted);margin-bottom:16px}
body.lha-ancien #main-content .woocommerce-breadcrumb a{color:var(--lha-muted)}

/* mon compte : le formulaire de connexion dans une carte */
body.lha-ancien.woocommerce-account #main-content .entry-content > .woocommerce{max-width:560px}
body.lha-ancien #main-content .woocommerce-form-login,
body.lha-ancien #main-content .woocommerce-form-register{
  background:var(--lha-raised); border:1px solid var(--lha-border)!important; border-radius:var(--lha-r-lg)!important; padding:28px!important; margin:16px 0 0!important;
}
body.lha-ancien #main-content .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-wrap:wrap;gap:8px}
body.lha-ancien #main-content .woocommerce-MyAccount-navigation a{
  display:inline-flex; align-items:center; min-height:40px; padding:0 14px; border-radius:999px;
  background:var(--lha-raised); border:1px solid var(--lha-border); color:var(--lha-ink); text-decoration:none; font-size:15px;
}
body.lha-ancien #main-content .woocommerce-MyAccount-navigation .is-active a{background:var(--lha-forest900);border-color:var(--lha-forest900);color:#fff}

/* panier et commande (blocs WooCommerce) */
body.lha-ancien #main-content :where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout){font-family:var(--lha-sans);color:var(--lha-ink)}
body.lha-ancien #main-content :where(.wc-block-cart,.wc-block-checkout) :where(h2,.wc-block-components-title){font:600 22px/1.25 var(--lha-display)!important;letter-spacing:-.01em;text-transform:none!important}
body.lha-ancien #main-content .wc-block-components-sidebar :where(.wc-block-components-totals-wrapper,.wc-block-components-panel){border-color:var(--lha-border)!important}
body.lha-ancien #main-content .wc-block-components-sidebar{
  background:var(--lha-raised); border:1px solid var(--lha-border); border-radius:var(--lha-r-lg); padding:20px 24px!important;
}
body.lha-ancien #main-content .wc-block-components-product-name{font:600 18px/1.3 var(--lha-display)!important;color:var(--lha-ink)!important;text-decoration:none}
body.lha-ancien #main-content .wc-block-cart__empty-cart__title{font:600 clamp(24px,2.6vw,32px)/1.2 var(--lha-display)!important;color:var(--lha-ink)}
body.lha-ancien #main-content .wc-block-cart__empty-cart__title::before{display:none}
body.lha-ancien #main-content .wp-block-woocommerce-empty-cart-block :where(hr,.wp-block-separator){border-color:var(--lha-border)!important;opacity:1}
body.lha-ancien #main-content .wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title){font:600 13px/1.2 var(--lha-sans)!important;letter-spacing:.09em;text-transform:uppercase!important;color:var(--lha-muted)}
body.lha-ancien #main-content .wc-block-grid__products{gap:16px;margin:0}
body.lha-ancien #main-content .wc-block-grid__product{
  background:var(--lha-raised); border:1px solid var(--lha-border)!important; border-radius:var(--lha-r-lg); padding:16px!important; margin:0!important;
}
body.lha-ancien #main-content .wc-block-grid__product-title{font:600 18px/1.3 var(--lha-display);color:var(--lha-ink)}
body.lha-ancien #main-content .wc-block-grid__product-price{color:var(--lha-muted)}

/* boutique et chèques cadeaux (produits) */
body.lha-ancien #main-content ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:24px 0 0}
body.lha-ancien #main-content ul.products::before,
body.lha-ancien #main-content ul.products::after{display:none}
body.lha-ancien #main-content ul.products li.product{
  width:auto!important; margin:0!important; float:none!important; padding:16px!important;
  background:var(--lha-raised); border:1px solid var(--lha-border); border-radius:var(--lha-r-lg);
}
/* Divi impose une largeur en % aux produits associés (sélecteur plus précis que le nôtre) :
   « :not(#lha) » donne à cette règle la priorité, la grille décide seule de la largeur. */
body.lha-ancien #main-content:not(#lha) ul.products li.product{width:auto!important;margin:0!important;float:none!important}
body.lha-ancien #main-content ul.products li.product img{border-radius:var(--lha-r-md);margin-bottom:12px!important;box-shadow:none!important}
body.lha-ancien #main-content ul.products li.product :where(h2,h3,.woocommerce-loop-product__title){font:600 19px/1.3 var(--lha-display)!important;color:var(--lha-ink);padding:0 0 4px!important}
body.lha-ancien #main-content ul.products li.product .price{color:var(--lha-muted)!important;font:500 16px/1.4 var(--lha-sans)!important}
body.lha-ancien #main-content ul.products li.product .et_overlay{display:none!important}
body.lha-ancien #main-content .woocommerce-result-count{font-size:14px;color:var(--lha-muted)}
body.lha-ancien #main-content .et_pb_wc_price .price,
body.lha-ancien #main-content .summary .price{font:600 30px/1.2 var(--lha-display)!important;color:var(--lha-ink)!important}
body.lha-ancien #main-content .et_pb_wc_images img,
body.lha-ancien #main-content .woocommerce-product-gallery img{border-radius:var(--lha-r-lg)}
body.lha-ancien #main-content .quantity input.qty{min-width:72px;text-align:center}
body.lha-ancien #main-content input[type="checkbox"]{width:20px;height:20px;accent-color:var(--lha-primary);vertical-align:-4px}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 -1px!important;border:0!important;background:none!important}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs::before{border-color:var(--lha-border)!important}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li{
  background:transparent!important; border:0!important; border-bottom:2px solid transparent!important; border-radius:0!important; margin:0 16px 0 0!important; padding:0!important;
}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li::before,
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li::after{display:none!important}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li a{font:600 16px/1.2 var(--lha-sans)!important;color:var(--lha-muted)!important;padding:0!important;display:inline-flex;align-items:center;min-height:48px}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--lha-primary)!important}
body.lha-ancien #main-content .woocommerce-tabs ul.tabs li.active a{color:var(--lha-ink)!important}
body.lha-ancien #main-content .woocommerce-tabs .panel{
  background:var(--lha-raised)!important; border:1px solid var(--lha-border)!important; border-radius:var(--lha-r-lg)!important; padding:24px!important; margin:0!important;
}
body.lha-ancien #main-content .woocommerce-tabs .panel h2:first-child{display:none}
body.lha-ancien #main-content .et_pb_wc_related_products h2,
body.lha-ancien #main-content .related.products > h2{font:600 13px/1.2 var(--lha-sans)!important;letter-spacing:.09em;text-transform:uppercase;color:var(--lha-muted)!important;margin:40px 0 0}

/* ---------- tablette et mobile ---------- */
@media (max-width:980px){
  body.lha-ancien #main-content ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  body.lha-ancien #main-content .container{padding:36px 16px 72px}
  body.lha-ancien #main-content .et_pb_section:not(.lha){padding:36px 16px 56px}
  body.lha-ancien #main-content :where(.et_pb_text,.entry-content) :where(p,li){font-size:16px}
  body.lha-ancien #main-content .et_pb_text table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  body.lha-ancien #left-area article.et_pb_post .entry-featured-image-url{float:none;width:100%;margin:0 0 12px}
  body.lha-ancien #main-content .woocommerce-form-login,
  body.lha-ancien #main-content .woocommerce-form-register{padding:20px!important}
  body.lha-page #main-content.lha-404{padding:56px 16px 80px}
  .lha-404 .lha-404-liens{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.lha-404 .lha-404-liens a::after{transition:none}}
