
/* ==================================================================
   LORENTS — UNIVERS LOCATION EN BLANC  (feuille complete, v1.0)
   ------------------------------------------------------------------
   1. 67 regles produites par pose/generer_clair.py a partir de la
      feuille sombre du module lrs-lc (gabarit 351750, widget lrslocw1,
      identique au fichier servi lrs-lc-css-f01a19318e.css). Le theme
      sombre n emploie qu une encre, la creme #F6F1EC a alpha variable ;
      chaque emploi se retourne vers l encre #241A14 (rgba 38,26,19),
      les alphas de TEXTE releves, ceux des VOILES conserves. Les blocs
      poses sur une photo (heros, barre de recherche, etiquette de
      packshot, en-tete, pied, barre mobile) sont ecartes : ils restent
      la nuit.
   2. 10 regles du kit portees par #devis-formulaire, converties de la
      meme facon en gardant l identifiant : un identifiant bat n importe
      quel nombre de classes.
   3. Le cadre, ecrit a la main — jetons, fond de page, raccord du
      heros, cartes, et les regles dont le SENS s inverse. Il passe en
      dernier : a specificite egale, c est lui qui tranche.
   ================================================================== */

/* 67 regles generees */
body.lrs-blanc.lrs-blanc #grille-produits ul.products li.product{background:linear-gradient(180deg,rgba(38,26,19,.065),rgba(38,26,19,.022)) !important}
body.lrs-blanc.lrs-blanc #grille-produits ul.products li.product:hover{background:linear-gradient(180deg,rgba(38,26,19,.085),rgba(38,26,19,.035)) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire.e-con{background-image:linear-gradient(180deg,rgba(38,26,19,.07),rgba(38,26,19,.025)) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-fh{border-bottom:1px solid rgba(38,26,19,.1) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-fh__d{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lead{color:rgba(38,26,19,.84) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-b--g.lrs-b--g{border-color:rgba(38,26,19,.28) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-b--g.lrs-b--g:hover{background:rgba(38,26,19,.08) !important}
body.lrs-blanc.lrs-blanc .lrs-c{background:linear-gradient(180deg,rgba(38,26,19,.065),rgba(38,26,19,.022)) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-chips a{color:rgba(38,26,19,.92) !important;background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.16) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-chips a i{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-rea__c span{color:rgba(38,26,19,.76) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-univ__c{background:rgba(38,26,19,.043) !important;border:1px solid rgba(38,26,19,.13) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-univ__c:hover{background:rgba(38,26,19,.06) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-univ__d{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-univ__sub a{color:rgba(38,26,19,.78) !important;background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.1) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-batt{background:linear-gradient(100deg,rgba(224,122,74,.16),rgba(38,26,19,.03) 62%) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-batt__tx span{color:rgba(38,26,19,.8) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-step__c span{color:rgba(38,26,19,.78) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-step__ft{background:rgba(38,26,19,.035) !important;border:1px solid rgba(38,26,19,.11) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-step__ft p{color:rgba(38,26,19,.84) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-prod__cat{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-prod__ft{border-top:1px solid rgba(38,26,19,.1) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-prod__pr{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-prod__cta{border:1px solid rgba(38,26,19,.24) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pack__l li{color:rgba(38,26,19,.84) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pack__l li i{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pack__ft{border-top:1px solid rgba(38,26,19,.1) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pack__pr{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pack__pr i{color:rgba(38,26,19,.78) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__c p{color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__vil li{background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.11) !important;color:rgba(38,26,19,.8) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__note{color:rgba(38,26,19,.66) !important}
body.lrs-blanc.lrs-blanc .lrs-lm{border:1px solid rgba(38,26,19,.14) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__bar{border:1px solid rgba(38,26,19,.12) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__bar li{background:rgba(38,26,19,.03) !important;border-bottom:1px solid rgba(38,26,19,.08) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__bar li span{color:rgba(38,26,19,.86) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-liv__bar li b i{color:rgba(38,26,19,.66) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-cond__c span{color:rgba(38,26,19,.8) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-faq details{background:linear-gradient(180deg,rgba(38,26,19,.065),rgba(38,26,19,.022)) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-faq__a{color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pass{border:1px solid rgba(38,26,19,.14) !important;background:linear-gradient(115deg,rgba(224,122,74,.22),rgba(13,13,13,.4) 55%,rgba(124,58,237,.18)),
    rgba(38,26,19,.03) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-pass__l a{border:1px solid rgba(38,26,19,.14) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-seo__g{border-top:1px solid rgba(38,26,19,.1) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-seo p{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-seo a{color:rgba(38,26,19,.86) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__pts li{color:rgba(38,26,19,.86) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__f{background:linear-gradient(180deg,rgba(38,26,19,.07),rgba(38,26,19,.025)) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__fd label{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__fd :is(input,textarea,select){background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.16) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__fd ::placeholder{color:rgba(38,26,19,.38) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__fd .lrs-lc-dv__aide{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__sw label{color:rgba(38,26,19,.86) !important;background:rgba(38,26,19,.04) !important;border:1px solid rgba(38,26,19,.16) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__sw input{border:2px solid rgba(38,26,19,.4) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__sel{border:1px dashed rgba(38,26,19,.22) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__sel > b{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__list li{background:rgba(38,26,19,.05) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__list li button{border:1px solid rgba(38,26,19,.2) !important;color:rgba(38,26,19,.68) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__vide{color:rgba(38,26,19,.66) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__tot{border-top:1px solid rgba(38,26,19,.12) !important;color:rgba(38,26,19,.68) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__tot b em{color:rgba(38,26,19,.7) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__leg{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc .lrs-lc-dv__leg a{color:rgba(38,26,19,.76) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-chips a{color:rgba(38,26,19,.92) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-univ__sub a{color:rgba(38,26,19,.78) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-dv__fd.lrs-lc-dv__fd.lrs-lc-dv__fd :is(input,textarea,select){background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.16) !important}
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-dv__sw.lrs-lc-dv__sw.lrs-lc-dv__sw input{border:2px solid rgba(38,26,19,.4) !important}


body.lrs-blanc.lrs-blanc #devis-formulaire :is(input,textarea,select).elementor-field,body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-textual{background:rgba(38,26,19,.06) !important;border:1px solid rgba(38,26,19,.2) !important;color:#241A14 !important}
body.lrs-blanc.lrs-blanc #devis-formulaire ::placeholder{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire input:-webkit-autofill{-webkit-text-fill-color:#241A14 !important}
body.lrs-blanc.lrs-blanc #devis-formulaire :is(label,.elementor-field-label,.elementor-field-subgroup, .elementor-field-option,.elementor-field-type-acceptance, .elementor-field-type-acceptance label,.elementor-field-type-upload label, .elementor-field-type-upload .elementor-field-label){color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-type-acceptance span[style],body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-type-acceptance label span{color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire input[type="checkbox"],body.lrs-blanc.lrs-blanc #devis-formulaire input[type="radio"]{border:1px solid rgba(38,26,19,.4) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire button[type="submit"]:hover{background:#FFFFFF !important;border-color:#241A14 !important}
body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-type-upload input[type="file"],body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-type-upload{color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire input[type="file"]::file-selector-button{color:#241A14 !important;border:1px solid rgba(38,26,19,.28) !important}
body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-message{color:rgba(38,26,19,.9) !important}


/* ==================================================================
   LORENTS — UNIVERS LOCATION EN BLANC : LE CADRE
   ------------------------------------------------------------------
   Ce fichier tient ce qui ne se deduit pas de la feuille sombre : les
   jetons, le fond de page, l en-tete, le pied, et la poignee de regles
   dont le SENS s inverse (un survol qui peint en blanc sur du blanc,
   une pastille sombre posee sur une carte devenue claire).
   La conversion mecanique — 76 regles, la creme a alpha variable — est
   dans genere-module.css, produite par generer_clair.py.
   Portee : body.lrs-blanc.lrs-blanc, posee par le greffon sur les seules pages
   de l univers location. Rien ailleurs.
   ================================================================== */

/* ---- 1. LES JETONS ---------------------------------------------
   Le module lrs-lc lit --lrs-paper comme couleur de TEXTE : le jeton
   se retourne donc vers l encre, il ne devient pas du papier. Valeurs
   reprises de la palette .lrs-jour deja ecrite dans le kit (l.468) —
   #241A14, un brun encre, jamais du noir pur.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc{
  --lrs-ink:#FFFFFF;            /* la surface */
  --lrs-ink-2:#FAF8F5;          /* les surfaces d appui */
  --lrs-ink-t:255,255,255;
  --lrs-tint:38,26,19;          /* les voiles s inversent : encre sur papier */
  --lrs-paper:#241A14;          /* le texte */
  /* L orange de charte passe a sa valeur DE PAPIER sur tout l univers clair.
     C est le jeton qui porte tout : le kit peint le mot-cle des titres par
     var(--lrs-accent) dans une regle a CINQ classes redoublees (0,5,2) —
     inutile de lui courir apres a coups de specificite, il suffit de lui
     donner la bonne couleur. #E07A4A ne tient que 2,8:1 sur blanc.
     Le site a deja son orange de papier, #BA4C18 (lorents-boutons.php), mais
     il est calibre sur du BLANC PUR : 4,59. Sur les surfaces teintees de cette
     page — creme #FAF7F2, voiles de carte — il retombe a 4,17 et 4,30, sous le
     seuil. Mesure du miroir sur neuf textes. #BA4C18 tient 5,08 sur blanc,
     4,75 sur creme et 4,61 sur le voile le plus fonce : il passe partout.
     C est le seul endroit ou je m ecarte de la palette jour du site.
     Les zones restees la nuit reprennent #E07A4A plus bas. */
  --lrs-accent:#BA4C18;
  --lrs-accent-lit:#BA4C18;     /* l orange DU SITE sur papier : c est la valeur que
                                   lorents-boutons.php a deja calibree pour sa palette
                                   jour — 4,6:1 sur blanc. Ne pas en inventer une autre. */
  /* Le systeme de boutons du site est a jetons et possede DEJA sa palette jour
     (html body .lrs-jour dans lorents-boutons.php). On la recopie mot pour mot :
     sans elle, le bouton fantome « demander un devis » reste creme sur blanc —
     mesure du miroir, contraste 1,05:1. */
  --lb-accent:#BA4C18; --lb-accent-h:#BA4C18; --lb-on:#FFFFFF;
  --lb-ink:#12100E;
  --lb-surface:rgba(18,16,14,.045); --lb-surface-h:rgba(18,16,14,.085);
  --lb-line:rgba(18,16,14,.46); --lb-line-h:rgba(224,122,74,.85);
  --lb-ring:#E07A4A;
  --lb-eclat:rgba(255,255,255,.45); --lb-eclat-t:rgba(18,16,14,.10);
  --lrs-carte-fond:#FFFFFF;
  --lrs-carte-filet:rgba(38,26,19,.13);
  --lrs-carte-filet-actif:rgba(224,122,74,.85);
  /* le halo neon est calcule pour le noir : sur papier il fait une aureole sale.
     Une ombre portee courte + un filet orange disent la meme chose. */
  --lrs-neon:0 0 0 1px rgba(224,122,74,.55),0 10px 26px rgba(38,26,19,.10);
}

/* ---- 2. LE FOND DE PAGE ----------------------------------------
   Le champ « nuit profonde » est pose sur body dans le kit en
   !important a (0,3,1) — deux copies, regle principale et bloc LRS-AR.
   Un !important ne suffit donc pas : a importance egale, c est la
   specificite qui tranche, et html+body+2 classes ne fait que (0,2,2).
   Mesure faite dans le miroir : le kit gagnait. D ou les QUATRE classes,
   (0,4,2) — la regle maison du module redouble, ici on redouble deux fois. La couche fixe animee .lrs-bgfx, elle,
   s eteint par le greffon (elle n est meme pas imprimee).
   ---------------------------------------------------------------- */
html body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc{
  background:#FFFFFF !important;
  background-image:none !important;
  color:#241A14;
}
html body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc::before{content:none !important}
body.lrs-blanc.lrs-blanc .lrs-bgfx{display:none !important}

/* ---- 3. LE HEROS RESTE LA NUIT ---------------------------------
   Un catalogue entierement blanc n a pas d entree : la page commence
   sans qu on l ait vue commencer. Le heros garde donc son voile sombre
   sur la photo — c est aussi ce qui rend le blanc du catalogue voulu
   plutot que subi, et ce qui laisse lisibles la barre de recherche en
   verre fume et le logo blanc de l en-tete.
   Ce qui change : le raccord. Sous le heros, une page blanche contre un
   bloc presque noir fait une arete. On l adoucit sur 120 px.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .lrs-lc-hero{position:relative}
body.lrs-blanc.lrs-blanc .lrs-lc-hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:120px;
  z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 62%,#FFFFFF 100%);
}
body.lrs-blanc.lrs-blanc .lrs-lc-hero > *{position:relative;z-index:2}

/* ---- 4-5. CE QUI RESTE LA NUIT ---------------------------------
   PIEGE. L en-tete (lrs-hd) et le pied (lrs-ft) ne codent presque
   aucune couleur en dur : ils DERIVENT --pp de --lrs-paper et leur
   fond de --lrs-ink, dans une regle de leur propre portee. Retourner
   ces deux jetons sur body repeindrait donc le pied en blanc a texte
   blanc, et rendrait le menu illisible sur le heros. Le kit avait deja
   rencontre ce mur : son bloc « ce qui reste la nuit, meme en section
   jour » (l.514) repose les jetons de nuit sur ces memes modules. On
   reprend ce contrat, mot pour mot.

   Ce qui reste la nuit, et pourquoi :
   - l en-tete : son logo est un aplat blanc detoure, et sa barre posee
     est deja un aplat sombre (rgba(13,13,13,.95) pilote par --fd). Un
     bandeau sombre sur un catalogue blanc est la bonne convention : il
     tient la marque, on n y touche pas.
   - le pied : son texte est clair, l inverser le rendrait illisible.
   - le heros : voir 3.
   - la barre d action mobile : elle est POSEE sur le contenu, pas dedans.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .lrs-hd.lrs-hd,
body.lrs-blanc.lrs-blanc .lrs-hd__pan.lrs-hd__pan,
body.lrs-blanc.lrs-blanc .lrs-ft.lrs-ft,
body.lrs-blanc.lrs-blanc .lrs-lc-hero,
body.lrs-blanc.lrs-blanc .lrs-lc-bar{
  --lrs-ink:#12100E; --lrs-ink-2:#1B1613; --lrs-ink-t:18,16,14;
  --lrs-tint:246,241,236; --lrs-paper:#F6F1EC;
  --lrs-accent:#E07A4A; --lrs-accent-lit:#E07A4A;
  --pp:#F6F1EC; --nk:#12100E;
  color:var(--lrs-paper);
}

/* ---- 6. LES CARTES ---------------------------------------------
   Sur noir, une carte se dit par un voile clair a 4 %. Sur blanc, ce
   voile devient un gris sale : la carte se dit par un FILET et un
   blanc pur, c est la convention du catalogue. Ces regles passent
   APRES les 76 regles generees, qui avaient converti le voile a
   l identique — meme specificite, la derniere gagne.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .lrs-c,
body.lrs-blanc.lrs-blanc .lrs-lc-faq details,
body.lrs-blanc.lrs-blanc .lrs-lc-dv__f,
body.lrs-blanc.lrs-blanc .lrs-lc-univ__c,
body.lrs-blanc.lrs-blanc .lrs-lc-prod__c,
body.lrs-blanc.lrs-blanc #grille-produits ul.products li.product{
  background:#FFFFFF !important;
  border:1px solid rgba(38,26,19,.13) !important;
  box-shadow:0 1px 2px rgba(38,26,19,.04) !important;
}
body.lrs-blanc.lrs-blanc .lrs-c:hover,
body.lrs-blanc.lrs-blanc .lrs-lc-faq details:hover,
body.lrs-blanc.lrs-blanc .lrs-lc-univ__c:hover,
body.lrs-blanc.lrs-blanc #grille-produits ul.products li.product:hover{
  background:#FFFFFF !important;
  border-color:rgba(224,122,74,.85) !important;
  box-shadow:0 10px 26px rgba(38,26,19,.10) !important;
}
/* les sections d appui (etapes, questions, devis) sur un blanc casse :
   sans elles, quinze sections blanches a la file n ont plus de rythme. */
body.lrs-blanc.lrs-blanc .lrs-lc-step,
body.lrs-blanc.lrs-blanc .lrs-lc-faq,
body.lrs-blanc.lrs-blanc #devis-formulaire.e-con{background:#FAF8F5 !important}

/* ---- 7. LES REGLES DONT LE SENS S INVERSE ----------------------
   Un survol qui peint en --lrs-paper devenait blanc sur blanc ; une
   pastille sombre posee sur une carte devenue claire devenait un trou.
   Six cas, releves un par un dans la feuille sombre.
   ---------------------------------------------------------------- */
/* bouton plein : au survol il se vidait vers le papier. Sur blanc, il
   s eclaircit d un ton et garde sa terre. */
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-b.lrs-b:hover{
  background:#BA4C18 !important;color:#fff !important;border-color:#BA4C18 !important}
/* etiquette de filtre : texte blanc sur un fond orange a 10 % = illisible */
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-chips a:hover{
  background:#E07A4A !important;color:#fff !important;border-color:#E07A4A !important}
/* passerelle prestations : le survol peignait en noir a 60 % */
body.lrs-blanc.lrs-blanc .lrs-lc-pass__l a:hover{
  background:rgba(224,122,74,.08) !important;border-color:rgba(224,122,74,.6) !important}
/* mention « en option » : pastille sombre sur carte claire */
body.lrs-blanc.lrs-blanc .lrs-lc-batt__of{
  background:rgba(38,26,19,.05) !important;border:1px solid rgba(38,26,19,.12) !important}
/* cadre du packshot : blanc sur blanc, il lui faut un filet */
body.lrs-blanc.lrs-blanc .lrs-lc-prod__ph{border:1px solid rgba(38,26,19,.08) !important}

/* ---- 8. WOOCOMMERCE : LA GRILLE ET LA FICHE --------------------
   Le kit habille l archive et la fiche produit en creme (blocs ZONE
   LOCATION l.2025 et ZONE LOCATION v2 l.4295). On reprend les memes
   selecteurs, prefixes : la specificite monte d une classe, le sens
   s inverse.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc.post-type-archive-product h1,body.lrs-blanc.lrs-blanc.post-type-archive-product h2,
body.lrs-blanc.lrs-blanc.post-type-archive-product h3,body.lrs-blanc.lrs-blanc.post-type-archive-product h4,
body.lrs-blanc.lrs-blanc.tax-product_cat h1,body.lrs-blanc.lrs-blanc.tax-product_cat h2,
body.lrs-blanc.lrs-blanc.tax-product_cat h3,body.lrs-blanc.lrs-blanc.tax-product_cat h4,
body.lrs-blanc.lrs-blanc.single-product .product_title{color:#241A14 !important}
body.lrs-blanc.lrs-blanc.post-type-archive-product .elementor-widget-text-editor,
body.lrs-blanc.lrs-blanc.post-type-archive-product .elementor-widget-text-editor *,
body.lrs-blanc.lrs-blanc.post-type-archive-product .elementor-icon-list-text,
body.lrs-blanc.lrs-blanc.tax-product_cat .elementor-widget-text-editor,
body.lrs-blanc.lrs-blanc.tax-product_cat .elementor-widget-text-editor *,
body.lrs-blanc.lrs-blanc.tax-product_cat .elementor-icon-list-text{color:rgba(38,26,19,.8) !important}
/* cartes produits de la boutique et des archives de categorie */
body.lrs-blanc.lrs-blanc.post-type-archive-product ul.products li.product,
body.lrs-blanc.lrs-blanc.tax-product_cat ul.products li.product,
body.lrs-blanc.lrs-blanc.single-product :is(.up-sells,.related,.cross-sells) ul.products li.product{
  background:#FFFFFF !important;border:1px solid rgba(38,26,19,.13) !important;
  box-shadow:0 1px 2px rgba(38,26,19,.04) !important}
body.lrs-blanc.lrs-blanc.post-type-archive-product ul.products li.product:hover,
body.lrs-blanc.lrs-blanc.tax-product_cat ul.products li.product:hover,
body.lrs-blanc.lrs-blanc.single-product :is(.up-sells,.related,.cross-sells) ul.products li.product:hover{
  background:#FFFFFF !important;border-color:rgba(224,122,74,.85) !important;
  box-shadow:0 10px 26px rgba(38,26,19,.10) !important}
body.lrs-blanc.lrs-blanc.post-type-archive-product ul.products li.product img,
body.lrs-blanc.lrs-blanc.tax-product_cat ul.products li.product img,
body.lrs-blanc.lrs-blanc.single-product ul.products li.product img{
  background:#FFFFFF !important;border:0 !important}
body.lrs-blanc.lrs-blanc.post-type-archive-product .woocommerce-loop-product__title,
body.lrs-blanc.lrs-blanc.tax-product_cat .woocommerce-loop-product__title,
body.lrs-blanc.lrs-blanc.single-product .woocommerce-loop-product__title{color:#241A14 !important}
/* le prix garde la terre cuite, mais descendue d un ton : sur papier,
   #E07A4A ne tient que 2,8:1 — #BA4C18 tient 3,5:1. */
body.lrs-blanc.lrs-blanc ul.products li.product .price,
body.lrs-blanc.lrs-blanc ul.products li.product .price bdi,
body.lrs-blanc.lrs-blanc .elementor-widget-woocommerce-product-price .price,
body.lrs-blanc.lrs-blanc .elementor-widget-woocommerce-product-price .price bdi{color:#BA4C18 !important}
/* fiche produit : fil d Ariane, onglets, tableau de caracteristiques */
body.lrs-blanc.lrs-blanc.single-product .woocommerce-breadcrumb,
body.lrs-blanc.lrs-blanc.single-product .product_meta{color:rgba(38,26,19,.62) !important}
body.lrs-blanc.lrs-blanc.single-product .woocommerce-breadcrumb a{color:rgba(38,26,19,.78) !important}
body.lrs-blanc.lrs-blanc.single-product .woocommerce-Tabs-panel,
body.lrs-blanc.lrs-blanc.single-product .woocommerce-Tabs-panel *{color:rgba(38,26,19,.85) !important}
body.lrs-blanc.lrs-blanc.single-product .woocommerce-tabs ul.tabs li a{color:rgba(38,26,19,.68) !important}
body.lrs-blanc.lrs-blanc.single-product .woocommerce-tabs ul.tabs li.active a{color:#241A14 !important}
body.lrs-blanc.lrs-blanc.single-product .woocommerce-tabs ul.tabs::before{background:rgba(38,26,19,.12) !important}
body.lrs-blanc.lrs-blanc.single-product table.shop_attributes th{color:#241A14 !important}
body.lrs-blanc.lrs-blanc.single-product table.shop_attributes td{color:rgba(38,26,19,.8) !important}
body.lrs-blanc.lrs-blanc.single-product table.shop_attributes tr{border-bottom:1px solid rgba(38,26,19,.1)}

/* ---- 9. LES CHAMPS ---------------------------------------------
   Deux familles cohabitent : les champs du module (lrs-lc-dv__fd) et
   ceux du formulaire Elementor Pro (.elementor-field). Le bloc D du
   kit habille TOUS les input de la zone en (0,4,1) : mesure faite
   dans le miroir, une portee a trois classes perdait et le formulaire
   « vos coordonnees » sortait en champs invisibles, fond creme a 6 %
   sur blanc. D ou les quatre classes redoublees ici aussi.
   Et pas de :is(input[type=...]) : un input sans attribut type ne
   matche aucun selecteur d attribut. On prend input tout court et on
   retire les types qui ne sont pas des champs de saisie.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc :is(input,textarea,select):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
body.lrs-blanc.lrs-blanc .lrs-loc .lrs-lc-dv__fd.lrs-lc-dv__fd.lrs-lc-dv__fd :is(input,textarea,select){
  background:#FFFFFF !important;
  border:1px solid rgba(38,26,19,.22) !important;
  color:#241A14 !important;
}
body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc :is(input,textarea)::placeholder{color:rgba(38,26,19,.45) !important}
body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc :is(input,textarea,select):focus{
  border-color:#E07A4A !important;outline:2px solid rgba(224,122,74,.25);outline-offset:1px}
/* le champ de recherche du heros est sur la photo : il reste fume.
   ATTENTION AU COMPTE. La regle ci-dessus pese (0,9,1) et non (0,4,1) :
   chacun de ses cinq :not([type=...]) est un selecteur d attribut, donc
   une classe de plus. Mesure du miroir : les deux champs de date du heros
   sortaient blancs sur la photo. Il faut donc passer (0,9,1) ici aussi. */
body.lrs-blanc.lrs-blanc.lrs-blanc.lrs-blanc
  .lrs-lc-srch.lrs-lc-srch.lrs-lc-srch.lrs-lc-srch.lrs-lc-srch.lrs-lc-srch :is(input,select){
  background:transparent !important;border:0 !important;color:#F6F1EC !important;
  box-shadow:none !important}

/* tout ce que le formulaire Elementor Pro ecrit autour du champ :
   intitules, mention d acceptation, messages. */
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-field-label,
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-field-option label,
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-field-type-acceptance label,
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-message{color:rgba(38,26,19,.82) !important}
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-field-option a,
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-field-type-acceptance a{color:#BA4C18 !important}

/* ---- 10. LE RESTE DE LA PAGE -----------------------------------
   Les conteneurs Elementor de l archive avaient leur fond efface pour
   laisser voir le champ sombre ; ils restent transparents, le blanc du
   body passe a travers. Les titres du gabarit, eux, sont peints par
   Elementor en couleur globale : il faut les reprendre.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .elementor-heading-title,
body.lrs-blanc.lrs-blanc .elementor-widget-theme-post-title .elementor-heading-title{color:#241A14}
body.lrs-blanc.lrs-blanc .elementor-widget-heading .elementor-heading-title em,
body.lrs-blanc.lrs-blanc .elementor-widget-heading .elementor-heading-title strong{color:#BA4C18}
/* le fil d Ariane du greffon lorents-fil-ariane reste orange, son filet s inverse */
body.lrs-blanc.lrs-blanc .lrs-fa{border-bottom-color:rgba(38,26,19,.12) !important}

/* ---- 11. LA CREME ECRITE EN LIGNE ------------------------------
   Un paragraphe du widget lrslocw1b porte sa couleur dans son
   attribut style : aucune feuille ne le touche, et le corriger
   demanderait une ecriture en base. Une regle d attribut suffit et
   ne coute rien — un seul element du module est concerne, et c est
   bien une couleur de texte (releve fait sur les quatre widgets). */
body.lrs-blanc.lrs-blanc [style*="246,241,236"]{color:rgba(38,26,19,.7) !important}

/* ---- 12. LES DERNIERS APLATS SOMBRES ---------------------------
   Releves dans le miroir en balayant tout .lrs-loc a la recherche
   d un fond dont les trois canaux tombent sous 60. Trois restaient,
   et aucun n est pose sur une photo.
   ---------------------------------------------------------------- */
/* le pied : son fondu vers le transparent servait a rejoindre le champ
   sombre du site. Sur blanc il laisse passer 430 px de blanc dans le
   noir. Il redevient un aplat. Le kit tient ce fondu en (0,4,1) sur
   body:not(...):not(...) .lrs-ft — d ou html + trois classes ici. */
html body.lrs-blanc.lrs-blanc.lrs-blanc .lrs-ft.lrs-ft{
  background:#12100E !important;background-image:none !important}
/* la passerelle prestations : ses liens sont des aplats noirs a 35 %,
   soit des pavés gris sur du blanc. Ils deviennent des cartes. */
body.lrs-blanc.lrs-blanc .lrs-lc-pass__l a{
  background:#FFFFFF !important;border:1px solid rgba(38,26,19,.13) !important;
  color:#241A14 !important}
/* le cadre de la carte de livraison : un rectangle noir dans une carte
   blanche tant que la carte n est pas chargee (ou refusee au cookie). */
body.lrs-blanc.lrs-blanc .lrs-lm{background:#F1EDE8 !important}

/* ---- 13. LE FORMULAIRE DE DEVIS, A L IDENTIFIANT ---------------
   Le kit tient le formulaire par DIX regles portees par
   #devis-formulaire, en !important. Un identifiant bat n importe
   quel nombre de classes : la conversion de ces dix regles est
   produite par le generateur avec le meme identifiant (voir
   genere-devis.css). Restent trois choix qui ne se deduisent pas.
   ---------------------------------------------------------------- */
/* les champs en blanc PLEIN, pas en voile gris : c est le blanc qui
   dit « ici on ecrit ». Le voile a 6 % convenait au fond sombre. */
body.lrs-blanc.lrs-blanc #devis-formulaire :is(input,textarea,select).elementor-field,
body.lrs-blanc.lrs-blanc #devis-formulaire .elementor-field-textual{
  background:#FFFFFF !important;border:1px solid rgba(38,26,19,.22) !important}
/* le remplissage automatique de Chrome repeint le champ avec une ombre
   interne de 40 px : elle etait cuite en #17120F. */
body.lrs-blanc.lrs-blanc #devis-formulaire input:-webkit-autofill{
  -webkit-box-shadow:0 0 0 40px #FFFFFF inset !important}
/* le bouton d envoi se vidait vers la creme au survol : sur blanc il
   disparaitrait. Il fonce, comme les autres boutons pleins. */
body.lrs-blanc.lrs-blanc #devis-formulaire button[type="submit"]:hover{
  background:#A8431A !important;color:#FFFFFF !important;border-color:#A8431A !important}

/* ---- 14. LES COUCHES BLINDEES PAR UN IDENTIFIANT ---------------
   Deux greffons maison arment leurs regles d un identifiant factice
   pour survivre au kit : lorents-rail-autres (html:not(#lrs-rm)) et
   lorents-cartes (html:not(#lrs-c)). Un identifiant bat n importe
   quel nombre de classes — il faut donc reprendre le meme etage,
   exactement comme pour #devis-formulaire.
   Releve fait en lisant les feuilles servies, pas en devinant.
   ---------------------------------------------------------------- */
/* le rail de filtres des pages categorie : ses boutons sont en creme */
html:not(#lrs-rm) body.lrs-blanc.lrs-blanc.lrs-blanc .lrs-ecm button.lrs-ec__fb.lrs-ec__fb{
  background:#FFFFFF !important;border-color:rgba(38,26,19,.16) !important;color:#241A14 !important}
html:not(#lrs-rm) body.lrs-blanc.lrs-blanc.lrs-blanc .lrs-ecm button.lrs-ec__fb.lrs-ec__fb:hover{
  background:rgba(224,122,74,.08) !important;border-color:rgba(224,122,74,.6) !important;
  color:#BA4C18 !important}
/* les survols de cartes : un voile creme a 4 % ne se voit pas sur blanc.
   La carte ne bougeait plus au survol — pas cassee, morte. */
html:not(#lrs-c) body.lrs-blanc.lrs-blanc.lrs-blanc :is(.lrs-lc-univ__c.lrs-lc-univ__c:hover,
  #grille-produits ul.products li.product:hover,
  a.lrs-lo__c.lrs-lo__c:hover){
  background:#FFFFFF !important;box-shadow:0 10px 26px rgba(38,26,19,.10) !important}
html:not(#lrs-c) body.lrs-blanc.lrs-blanc.lrs-blanc.tax-product_cat ul.products li.product:hover,
html:not(#lrs-c) body.lrs-blanc.lrs-blanc.lrs-blanc.post-type-archive-product ul.products li.product:hover{
  background:#FFFFFF !important;box-shadow:0 10px 26px rgba(38,26,19,.10) !important}

/* ---- 15. FICHE PRODUIT, ARCHIVES ET TUNNEL : QUATRE JETONS -----
   Releve APRES la pose, sur /table-de-mixage-14-canaux/ : sept textes
   sortaient creme sur blanc, contraste 1,10:1. La cause n etait pas
   une regle oubliee mais une PALETTE que je n avais pas vue.

   Le kit declare quatre jetons sur :root — --lrs-wc-texte, -fond,
   -filet, -filet-actif — et les fait porter par onze regles en
   !important qui couvrent la fiche produit, les archives de categorie
   (body.tax-product_cat), le panier, la commande, le compte et les
   messages WooCommerce. Redeclarer ces quatre jetons retourne tout
   d un coup, sans courir apres chaque regle.

   C est le meme contrat que --lrs-paper pour le module : quand une
   couche du site est a jetons, on change le jeton, jamais la regle.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc{
  --lrs-wc-texte:rgba(38,26,19,.86);
  --lrs-wc-fond:#FFFFFF;
  --lrs-wc-filet:rgba(38,26,19,.13);
  --lrs-wc-filet-actif:rgba(224,122,74,.85);
}
/* les titres prennent l encre pleine plutot que le texte courant a .86 */
body.lrs-blanc.lrs-blanc.lrs-blanc.single-product :is(h1,h2,h3,h4,h5,h6,
  .product_title,.elementor-heading-title,.e-n-menu-title-text){color:#241A14 !important}
/* les liens de la fiche gardent la terre, mais celle du papier */
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-location-single a:not(.button):not(.lrs-b):not([class*="lrs-b--"]){
  color:#BA4C18}
body.lrs-blanc.lrs-blanc.lrs-blanc .elementor-location-single .elementor-icon-list-icon :is(i,svg){
  color:#BA4C18;fill:#BA4C18}

/* ---- 16. LES ICONES LOTTIE ------------------------------------
   Signale par le client le 20/09 : « il reste des lotties bicolores »,
   puis « elles sont toutes en noir » — la seconde remarque portait sur
   MA correction, qui etait fausse.

   Ce qui se passe vraiment. Au repos, l icone est un SVG de repli :
   un <use> en fill:none dont le TRAIT est peint en orange #BA4C18 par
   le module. Au survol, le lecteur Lottie le remplace par son propre
   SVG, aux couleurs cuites dans le fichier. D ou le saut de couleur.

   Ma premiere regle forcait fill ET stroke sur TOUT svg de .lrs-ico :
   elle attrapait aussi le repli, et un contour en fill:none rempli
   devient un aplat. Les icones sortaient en pave noir. Mesure :
   fill passait de « none » a rgb(36,26,20).

   Correctif en deux temps :
   - la couleur du span passe a l orange, pour que currentColor vaille
     la meme chose que le trait du repli — plus de saut ;
   - le remplissage n est force que sur le SVG DU LECTEUR, reconnaissable
     a l absence de <use>. Le repli garde son fill:none.
   Sur les boutons, le trait suffit : leur icone est deja monochrome.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .lrs-ico{color:#BA4C18}
/* CORRIGE une seconde fois : viser :not(:has(use)) etait faux, le SVG du
   lecteur contient lui aussi des <use> — jusqu a sept, imbriques. La regle
   l excluait donc et les icones repassaient bicolores.
   Ce qui separe vraiment les deux, mesure sur les dix-sept :
   - le repli a son <use> en ENFANT DIRECT ; le lecteur, jamais (0 sur 17) ;
   - le lecteur porte un style en ligne ; le repli, aucun (17 sur 17).
   On vise donc le lecteur POSITIVEMENT, avec les deux criteres. */
body.lrs-blanc.lrs-blanc .lrs-ico svg[style]:not(:has(> use)) *{
  stroke:currentColor !important;fill:currentColor !important}
body.lrs-blanc.lrs-blanc .lrs-b__i svg *{stroke:currentColor !important}

/* ---- 17. LE HEROS, SYMETRIQUE ----------------------------------
   Demande du client : egaliser le haut et le bas de chaque section.

   Mesure du 20/09 sur le miroir, en comptant les BORDS et les fonds
   comme de l encre et pas seulement le texte : les treize sections
   sont deja a 0 en haut comme en bas. Une seule ne l est pas, le
   heros — 96 px au-dessus de son surtitre, 72 sous sa derniere
   etiquette, parce que ses deux clamp ne sont pas les memes.
   On aligne le bas sur le haut.

   Les deux autres ecarts releves ne sont pas des defauts :
   la section SEO garde ses 120 px avant le pied (c est le rythme de
   sortie du site), et la FAQ sort a -161 parce que la sonde compte
   le contenu des <details> fermes — angle mort connu.
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .lrs-loc > section.lrs-lc-hero{
  padding-bottom:clamp(56px,7vw,96px) !important}

/* ---- 18. LE « TTC / JOURNEE » DES PRIX -------------------------
   Trouve en verifiant la version mobile : la mention qui suit chaque
   prix n est pas du texte mais le CONTENU d un ::after, peint en creme
   a 60 % par le kit. Sur blanc elle disparait — contraste 1,1.
   Ma conversion mecanique ne l avait pas vue : elle lit les regles du
   module et du formulaire, pas les pseudo-elements du kit.
   Releve fait sur tout le custom_css : c est le seul cas dans la zone
   catalogue (l autre pseudo creme est une pastille posee sur photo).
   ---------------------------------------------------------------- */
body.lrs-blanc.lrs-blanc .elementor-widget-woocommerce-product-price .price::after,
body.lrs-blanc.lrs-blanc ul.products li.product .price::after{
  color:rgba(38,26,19,.62) !important}

