/* assets/styles/pages/index.css */
:root{--black:#111313;--cream:#f2eee6;--white:#fbfaf7;--mist:#e7dfda;--stone:#a9a59d;--accent:#f36f21;--line:#d7d1c6;--serif:Georgia,"Times New Roman",serif;--sans:Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);background:var(--cream);font:16px/1.55 var(--sans)}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.tag{font-size:.68rem;letter-spacing:.16em;font-weight:800;text-transform:uppercase}.button{display:inline-flex;justify-content:center;align-items:center;padding:15px 22px;background:var(--black);border:1px solid var(--black);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:800;transition:.2s}.button:hover{background:var(--accent);border-color:var(--accent)}.outline{background:transparent;color:var(--black)}
    header{position:sticky;top:0;z-index:10;background:rgba(242,238,230,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(9px)}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative}.nav img{width:174px;max-height:58px;object-fit:contain;mix-blend-mode:multiply}.nav-links{display:flex;gap:24px}.nav-links a{text-decoration:none;text-transform:uppercase;font-size:.67rem;font-weight:800;letter-spacing:.1em}.nav-links a:hover{color:var(--accent)}.menu-toggle{display:none;border:0;background:transparent;padding:10px 0 10px 12px;color:var(--black);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.menu-toggle span{display:inline-block;width:22px;height:12px;margin-left:8px;vertical-align:middle;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
    .hero{padding:54px 0 28px}.hero-grid{min-height:620px;display:grid;grid-template-columns:.95fr 1.05fr;background:var(--black);color:#fff;overflow:hidden}.hero-copy{padding:82px clamp(28px,6vw,90px);display:flex;flex-direction:column;justify-content:space-between;position:relative}.hero-copy:before{content:"01";position:absolute;right:38px;top:25px;font:13rem/.75 var(--serif);color:rgba(255,255,255,.05)}.hero-copy .tag{color:var(--accent)}.hero h1{font:clamp(4rem,7vw,7.5rem)/.8 var(--serif);letter-spacing:-.09em;margin:25px 0}.hero h1 em{font-style:normal;color:var(--accent)}.hero p{font-size:1.02rem;max-width:390px;color:#d8d8d4;margin:0}.expert-line{display:flex;gap:10px;align-items:center;margin:20px 0 0;color:#d8d8d4;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.expert-line:before{content:"";width:34px;height:1px;background:var(--accent)}.hero .outline{color:#fff;border-color:#fff}.hero .outline:hover{background:var(--accent);border-color:var(--accent)}.hero-image{min-height:620px;background:#050505 url('/assets/javier.jpg') center/contain no-repeat;position:relative}.hero-image:after{content:"SCALP MICRO\A EFFET RASÉ";white-space:pre;position:absolute;left:25px;bottom:22px;color:#fff;font-size:.68rem;letter-spacing:.17em;font-weight:bold;line-height:1.5;text-shadow:0 2px 12px #000}.hero-foot{display:flex;justify-content:space-between;align-items:end;gap:15px;position:relative}.hero-foot small{color:#aaa;font-size:.72rem}
    .proof,.gallery,.about,.contact{padding:105px 0}.intro{max-width:700px}.intro h2,.method h2,.contact h2,.about h2{font:clamp(2.5rem,5vw,5rem)/.94 var(--serif);letter-spacing:-.06em;margin:13px 0 18px}.intro p{margin:0;font-size:1.06rem}.intro-note{max-width:590px;margin-top:24px!important;padding-top:20px;border-top:2px solid var(--accent);font-size:.92rem!important}.proof-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-top:54px}.result-photo{display:block;width:100%;height:570px;object-fit:contain;background:#090909}.result-text{padding-bottom:20px}.result-text h3{font:2.2rem/1 var(--serif);letter-spacing:-.05em;margin:22px 0 15px}.rule{height:1px;background:var(--line);margin:30px 0}.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.facts b{display:block;font:1.3rem var(--serif);margin-bottom:4px}.facts span{font-size:.83rem;color:#5b5b57}.whatsapp-main{margin-top:28px}.whatsapp-main small{display:block;margin-top:10px;color:#62625d;font-size:.72rem}
    .gallery{padding-top:0}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px}.gallery-head h2{font:clamp(2.3rem,4.2vw,4.5rem)/.94 var(--serif);letter-spacing:-.06em;margin:8px 0 0}.gallery-head p{max-width:385px;margin:0;font-size:.93rem}.gallery-track{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-card{min-width:0;margin:0;background:transparent;color:var(--black)}.gallery-card img,.gallery-card video{display:block;width:100%;height:auto;object-fit:contain;background:transparent}.gallery-card.gallery-video video{height:390px;background:#e4dfd5}.gallery-card figcaption{padding:12px 0 4px;font-size:.78rem}.gallery-card strong{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:.64rem;margin-bottom:3px;color:var(--accent)}.gallery-note{font-size:.73rem;color:#686761;margin:20px 0 0}
    .reviews{padding:82px 0;background:var(--white);border-top:1px solid var(--line)}.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.reviews h2{max-width:600px;font:clamp(2.25rem,4.4vw,4.5rem)/.94 var(--serif);letter-spacing:-.06em;margin:13px 0 0}.review-copy{max-width:470px}.review-copy p{margin:0 0 24px;font-size:1.05rem}.review-link{display:inline-flex;align-items:center;gap:11px;padding:14px 0;border-bottom:2px solid var(--accent);color:var(--black);font-size:.78rem;font-weight:bold;letter-spacing:.12em;text-transform:uppercase}.review-link:hover{color:var(--accent)}.review-note{display:block;margin-top:16px;color:#77706c;font-size:.76rem}.testimonial{padding:105px 0;background:var(--black);color:#fff}.testimonial-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:56px;align-items:center}.testimonial h2{font:clamp(2.4rem,4.7vw,4.8rem)/.94 var(--serif);letter-spacing:-.06em;margin:13px 0 18px}.testimonial p{color:#d9d8d3;max-width:380px}.youtube-player{width:100%;aspect-ratio:16/9;border:0;display:block;background:#000}.youtube-link{display:inline-block;margin-top:18px;color:#fff;font-size:.72rem;font-weight:bold;letter-spacing:.1em;text-transform:uppercase}.method{background:var(--mist);padding:105px 0}.method-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.method h2{margin-top:10px}.steps{border-top:1px solid #aebbb1}.step{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid #aebbb1}.step strong{font:2rem/1 var(--serif);color:var(--accent)}.step h3{font:1.35rem var(--serif);margin:0 0 5px}.step p{margin:0;font-size:.92rem}.quote{padding:130px 0;background:var(--accent);color:#fff}.quote blockquote{max-width:930px;margin:0;font:clamp(2.4rem,5vw,5rem)/1 var(--serif);letter-spacing:-.05em}.quote p{margin:25px 0 0;font-size:.75rem;font-weight:bold;letter-spacing:.12em;text-transform:uppercase}.about{background:var(--white)}.about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.about-photo{width:100%;aspect-ratio:1/1.05;display:block;object-fit:cover;object-position:center 12%;filter:saturate(.9)}.about p{max-width:610px}.about .tag{color:var(--accent)}
    .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact p{max-width:420px}.contact address{font-style:normal;margin-top:32px;font-size:.92rem}.form{background:var(--white);padding:35px;border:1px solid var(--line)}.form label{display:block;font-size:.68rem;font-weight:bold;letter-spacing:.1em;text-transform:uppercase;margin:0 0 7px}.form input,.form textarea{width:100%;border:0;border-bottom:1px solid var(--stone);background:transparent;padding:10px 0 13px;margin-bottom:23px;font:inherit}.form textarea{min-height:100px;resize:vertical}.form small{display:block;margin-top:16px;color:#666;font-size:.72rem}.chat-cta{position:fixed;z-index:20;right:22px;bottom:22px;display:flex;align-items:center;gap:10px;padding:12px 16px 12px 12px;background:#1f7a55;color:#fff;border:2px solid var(--cream);border-radius:999px;text-decoration:none;box-shadow:0 8px 28px rgba(0,0,0,.22);font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:0;transform:translateY(20px);animation:chat-in .45s ease 5s forwards}.chat-cta:before{content:"✦";display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#1f7a55;font-size:1rem}.chat-cta:hover{background:var(--black)}@keyframes chat-in{to{opacity:1;transform:translateY(0)}}.footer{background:var(--black);color:#dedbd3;padding:28px 0;font-size:.73rem}.footer .wrap{display:flex;justify-content:space-between;gap:20px}
    @media(max-width:760px){.nav{height:70px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;z-index:20;top:69px;left:-14px;right:-14px;padding:20px 28px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.08)}header.menu-open .nav-links{display:grid;gap:18px}.hero{padding:0}.wrap{width:min(100% - 28px,1180px)}.hero-grid{display:flex;flex-direction:column}.hero-copy{display:contents}.hero-copy:before{display:none}.hero-intro{order:1;padding:30px 28px 25px;background:var(--black)}.hero h1{font-size:4.15rem;margin:14px 0}.hero-image{order:2;min-height:480px;background-position:center top;background-size:contain}.hero-foot{order:3;padding:27px 28px 39px;background:var(--black);display:block}.hero-foot .button{width:100%;margin-top:20px}.hero-foot small{display:block;margin-top:14px}.proof-grid,.reviews-grid,.testimonial-grid,.method-grid,.contact-grid,.about-grid{grid-template-columns:1fr}.proof,.reviews,.testimonial,.method,.about,.contact{padding:74px 0}.gallery{padding:0 0 74px}.proof-grid,.reviews-grid,.testimonial-grid,.method-grid,.contact-grid,.about-grid{gap:34px}.result-photo{height:auto;max-height:none}.gallery-head{display:block;margin-bottom:22px}.gallery-head p{margin-top:16px}.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:86%;grid-template-columns:unset;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding:0 1px 13px}.gallery-card{scroll-snap-align:start}.gallery-card img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}.gallery-card.gallery-video video{height:320px;width:100%;object-fit:contain;background:#e4dfd5}.about-photo{aspect-ratio:1/1}.quote{padding:80px 0}.facts{grid-template-columns:1fr}.chat-cta{right:14px;bottom:14px}.footer .wrap{display:block}.footer .wrap>*+*{margin-top:8px}}
    /* Un peu plus d'espace autour de la signature, sans alourdir l'en-tête. */
    @media (max-width: 760px) {
      .nav { height: 78px; }
      .nav img { max-height: 64px; }
      .nav-links { top: 77px; }
    }
    /* Les vidéos prennent l'apparence de vignettes carrées avant lecture. */
    .gallery-card.gallery-video video {
      aspect-ratio: 1 / 1;
      height: auto;
      object-fit: contain;
      background: #e4dfd5;
    }
    /* Nouveau monogramme V3 : signature typographique directe et contemporaine. */
    .nav > a:first-child {
      width: 338px;
      height: 70px;
      display: block;
      background: url('/assets/logo-jm-micro-v3d.svg') left center / contain no-repeat;
    }
    .nav > a:first-child img { display: none; }
    @media (max-width: 760px) {
      .nav{gap:0}
      .nav > a:first-child{width:calc(100% - 64px);height:64px;flex:0 1 auto;background-color:#161216}
      .menu-toggle{width:64px;height:64px;flex:0 0 64px;padding:0;border-left:1px solid #514a4d;background:#161216;color:#f3efea;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:.56rem}
      .menu-toggle span{display:block;width:22px;height:8px;margin:0;border-top:1px solid currentColor;border-bottom:0;position:relative}
      .menu-toggle span:after{content:"";position:absolute;right:0;top:6px;width:13px;height:1px;background:currentColor}
    }
    /* Direction graphique V3 : un luxe éditorial, sans dorure ni codes clinquants. */
    :root {
      --black: #161216;
      --cream: #f3efea;
      --white: #fffdfa;
      --mist: #e6dfda;
      --stone: #9d9692;
      --accent: #f36f21;
      --line: #d9d2cd;
    }
    .hero-copy .tag,
    .hero h1 em,
    .expert-line:before { color: var(--accent); background-color: var(--accent); }
    .hero h1 em { background-color: transparent; }
    .tag { color: #f36f21; }
    .quote { background: #f36f21; }
    .quote blockquote,
    .quote p { color: #fff9fa; }
    .result-text .facts > div:first-child { background: #f36f21; }
    /* Correction discrète de la photo d'accroche : moins de rouge, plus de relief. */
    .proof-grid .result-photo {
      filter: saturate(.92) contrast(1.035);
    }
    /* Le portrait de résultat s'arrête au niveau du t-shirt : aucun fond inutile. */
    @media (max-width: 760px) {
      .hero-foot { padding-top: 16px; }
      .proof-grid .result-photo {
        height: 430px;
        object-fit: cover;
        object-position: center top;
      }
      .result-text .facts > div:first-child {
        padding: 15px 16px;
        background: var(--accent);
        color: #fff;
      }
      .result-text .facts > div:first-child b,
      .result-text .facts > div:first-child span { color: #fff; }
    }
    .faq{padding:105px 0;background:var(--cream);border-top:1px solid var(--line)}.faq-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:end}.faq h2{font:clamp(2.5rem,5vw,5rem)/.94 var(--serif);letter-spacing:-.06em;margin:13px 0 0}.faq-head p{max-width:470px;margin:0;font-size:1.03rem}.faq-list{margin-top:55px;border-top:1px solid var(--stone)}.faq-item{border-bottom:1px solid var(--stone)}.faq-item summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 0;cursor:pointer;list-style:none;font:1.35rem/1.12 var(--serif)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";flex:0 0 auto;color:var(--accent);font:2rem/1 var(--sans)}.faq-item[open] summary:after{content:"×"}.faq-item p{max-width:760px;margin:0 42px 24px 0;color:#514d49;font-size:.95rem}.faq-cta{margin-top:34px}.density{padding:105px 0;background:var(--white);border-top:1px solid var(--line)}.density-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.density h2{font:clamp(2.5rem,5vw,5rem)/.94 var(--serif);letter-spacing:-.06em;margin:13px 0 0}.density p{max-width:590px;margin:0 0 18px;font-size:1rem}.density .button{margin-top:12px}.shave-rule{padding:34px 0 40px;background:var(--black);color:#fff}.shave-rule .wrap{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.shave-rule span{color:#f36f21;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.13em}.shave-rule strong{font:clamp(1.55rem,3vw,2.3rem)/1 var(--serif);letter-spacing:-.04em}.shave-rule p{margin:0;color:#cfc9c6;font-size:.86rem}@media(max-width:760px){.faq,.density{padding:74px 0}.faq-head,.density-grid{grid-template-columns:1fr;gap:18px}.faq-list{margin-top:36px}.faq-item summary{padding:20px 0;font-size:1.2rem}.faq-item p{margin-right:0;font-size:.92rem}.shave-rule{padding:28px 0 32px}.shave-rule .wrap{display:block}.shave-rule strong{display:block;margin:8px 0}.shave-rule p{max-width:310px}}
    /* La galerie reste fluide même avec un portfolio important. */
    .gallery-card{content-visibility:auto;contain-intrinsic-size:420px}
    /* Tarifs : le protocole est compris avant que les montants apparaissent. */
    .pricing{padding:105px 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:80px}.pricing-opening{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:end;padding-bottom:34px;border-bottom:1px solid var(--line)}.pricing h2{max-width:720px;font:clamp(2.7rem,5vw,5.1rem)/.92 var(--serif);letter-spacing:-.065em;margin:13px 0 18px}.pricing-opening p{max-width:570px;margin:0;font-size:1rem}.session-count{display:flex;align-items:baseline;gap:12px;white-space:nowrap}.session-count b{font:clamp(5rem,9vw,8.2rem)/.75 var(--serif);letter-spacing:-.08em;color:#f36f21}.session-count span{font-size:.78rem;line-height:1.25;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.pricing-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:34px 0}.pricing-phase{padding-top:14px;border-top:3px solid #f36f21}.pricing-phase small{display:block;color:#f36f21;font-weight:800;letter-spacing:.12em}.pricing-phase h3{font:1.35rem/1.05 var(--serif);margin:8px 0 7px}.pricing-phase p{margin:0;color:#605b57;font-size:.88rem}.pricing-main{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:center;padding-top:12px}.pricing-diagram{min-height:330px;background:#f36f21;-webkit-mask:url('/assets/schema-zones-original.png') 42% 4%/170% auto no-repeat;mask:url('/assets/schema-zones-original.png') 42% 4%/170% auto no-repeat}.pricing-table-head{margin:0 0 17px}.pricing-table-head h3{font:2rem/1 var(--serif);letter-spacing:-.04em;margin:0 0 8px}.pricing-table-head p{margin:0;color:#68625e;font-size:.88rem}.price-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.price-row:first-of-type{border-top:1px solid var(--line)}.price-zone{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f36f21;color:#fff;font-weight:800}.price-scope{font-weight:800}.price-scope small{display:block;margin-top:2px;color:#716b67;font-weight:400}.price-amount{white-space:nowrap;font:1.35rem var(--serif)}.pricing-finish{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:start;margin-top:34px;padding:25px 27px;background:var(--black);color:#fff}.pricing-finish-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #f36f21;color:#f36f21;font-size:1.25rem}.pricing-finish strong,.pricing-finish span{display:block}.pricing-finish span{margin-top:5px;color:#d3ceca;font-size:.88rem}.pricing-maintenance{margin:16px 0 0;text-align:center;color:#6f6965;font-size:.76rem}
    @media(min-width:761px) and (max-width:980px){.nav img{width:225px}.nav-links{gap:11px}.nav-links a{font-size:.58rem;letter-spacing:.07em}}
    @media(max-width:760px){.pricing{padding:74px 0}.pricing-opening{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-bottom:27px}.session-count{order:-1}.session-count b{font-size:5.8rem}.pricing h2{font-size:3rem}.pricing-progress{grid-template-columns:1fr;gap:0;padding:26px 0}.pricing-phase{display:grid;grid-template-columns:42px 1fr;column-gap:13px;padding:15px 0;border-top:0;border-bottom:1px solid var(--line)}.pricing-phase small{grid-row:1/span 2}.pricing-phase h3{margin:0 0 5px}.pricing-phase p{grid-column:2}.pricing-main{grid-template-columns:1fr;gap:4px}.pricing-diagram{min-height:210px;-webkit-mask-size:155% auto;mask-size:155% auto;-webkit-mask-position:41% 4%;mask-position:41% 4%}.price-row{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:14px 0}.price-amount{grid-column:2;font-size:1.45rem}.pricing-finish{grid-template-columns:42px minmax(0,1fr);padding:22px 20px}.pricing-finish-mark{width:38px;height:38px}.pricing-maintenance{text-align:left}}
/* =========================================================
   VERSION MOBILE LOGO 05 — PALETTE VERT / PECHE / CREME
   Cette couche visuelle est volontairement isolée de la V3.
   ========================================================= */
:root{
  --black:#142427;
  --ink:#142427;
  --brand:#1f4a4d;
  --brand-deep:#102e31;
  --cream:#f4efe7;
  --white:#fbf8f2;
  --mist:#dde7e4;
  --stone:#748b88;
  --accent:#f36f21;
  --line:#b9cbc6;
  --sage:#afc5c0;
}

html{background:var(--brand)}
body{background:var(--cream);color:var(--black)}
header{
  background:var(--brand);
  border-bottom-color:rgba(245,238,232,.28);
  box-shadow:0 5px 18px rgba(23,33,29,.16);
}
.nav > a:first-child{
  background:var(--brand) url('/assets/bons-logos/logo-05-petrole-cuivre.svg') left center/contain no-repeat;
}
.menu-toggle{
  background:var(--brand-deep);
  color:var(--cream);
  border-left-color:rgba(245,238,232,.26);
}
.menu-toggle span{background:var(--accent)}
.nav-links{background:var(--cream)}
.nav-links a{color:var(--black)}
.nav-links a:hover{color:var(--brand)}

.tag,
.eyebrow,
.hero h1 em,
.session-count b,
.pricing-phase small,
.faq-item summary:after,
.shave-rule span,
.result-text .highlight{color:var(--accent)}
.hero-grid,
.hero-intro,
.hero-foot{background:var(--ink)}
.hero-rule{background:var(--accent)}
.hero-image{background:#101713}
.hero-foot{border-top-color:rgba(245,238,232,.16)}

.button,
.chat-cta{
  background:var(--brand);
  border-color:var(--brand);
  color:var(--cream);
}
.button:hover,
.button:focus-visible,
.chat-cta:hover,
.chat-cta:focus-visible{
  background:var(--accent);
  border-color:var(--accent);
  color:var(--ink);
}
.chat-cta:before{color:var(--brand)}

.quote{background:var(--brand);color:var(--cream)}
.quote .quote-mark,
.quote strong{color:var(--accent)}
.quote .quote-line{background:var(--accent)}
.method{background:var(--mist)}
.method-step,
.result-card,
.review-card,
.faq-item,
.pricing-card{border-color:var(--line)}
.method-index,
.price-zone,
.result-text .facts > div:first-child{background:var(--brand);color:var(--cream)}
.method-index em,
.price-zone strong{color:var(--accent)}

.pricing,
.reviews,
.about{background:var(--white)}
.pricing-diagram{background:var(--accent)}
.pricing-phase{border-color:var(--accent)}
.pricing-finish-mark{border-color:var(--accent);color:var(--accent)}
.pricing-card-featured{box-shadow:0 0 0 2px var(--accent) inset}
.pricing-note{background:var(--mist);border-color:var(--line)}

.gallery-shell,
.video-feature,
.result-visual{background:var(--ink)}
.gallery-dot[aria-current="true"]{background:var(--accent)}
.gallery-dot{border-color:var(--accent)}
.reviews-link,
.text-link{color:var(--brand)}
.reviews-link:hover,
.text-link:hover{color:var(--accent)}
.faq-item[open]{border-color:var(--accent)}
.footer{background:var(--brand);color:var(--cream)}
.footer a{color:var(--cream)}
.footer a:hover{color:var(--accent)}

@media(max-width:760px){
  body{background:var(--cream)}
  header .wrap{width:calc(100% - 24px)}
  .nav{height:72px}
  .nav > a:first-child{
    width:calc(100% - 64px);
    height:72px;
    background-position:left center;
  }
  .menu-toggle{
    width:64px;
    height:72px;
  }
  .hero{padding-top:18px}
  .hero-grid{border-radius:0}
  .hero-intro{
    padding:26px 14px 22px;
    text-align:left;
  }
  .hero-rule{
    width:100%;
    height:8px;
    margin:0 0 24px;
  }
  .hero h1{
    max-width:5.2em;
    margin:0 0 22px;
    font-size:clamp(4.15rem,21vw,5.5rem);
    line-height:.76;
    letter-spacing:-.065em;
  }
  .hero-sub{
    max-width:17em;
    margin:0;
    font-size:1.2rem;
    line-height:1.42;
  }
  .hero-image{
    min-height:0;
    aspect-ratio:1/1.32;
  }
  .hero-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center top;
  }
  .hero-foot{
    padding:20px 14px 30px;
  }
  .hero-foot p{max-width:24em}
}



    /* Test V11 mobile : la V10 est intacte hors header et hero. */
    header .nav > a:first-child{
      background:none!important;
      display:flex!important;
      align-items:center;
      overflow:hidden;
    }
    header .nav > a:first-child img{
      display:block!important;
      width:100%!important;
      height:68px!important;
      object-fit:contain!important;
      object-position:left center!important;
      mix-blend-mode:normal!important;
    }
    .hero-v11 .hero-keyword{
      margin:12px 0 18px!important;
      color:var(--cream);
      font:clamp(2.1rem,9.4vw,3rem)/.94 Georgia,"Times New Roman",serif!important;
      letter-spacing:-.06em!important;
    }
    .hero-v11 .hero-keyword em{display:block;color:var(--accent);font-style:normal}
    @media(max-width:760px){
      .hero-v11{display:flex!important;flex-direction:column}
      .hero-v11 .hero-image{order:1;aspect-ratio:1/1.26!important}
      .hero-v11 .hero-copy{display:contents}
      .hero-v11 .hero-intro{order:2;background:var(--ink);padding-top:25px!important}
      .hero-v11 .hero-foot{order:3;background:var(--ink)}
      .hero-v11 .hero-keyword{font-size:clamp(2.1rem,9.4vw,3rem)!important;line-height:.94!important;letter-spacing:-.055em!important}
    }

/* assets/styles/foundation.css */
/* Source preserved: mobile-v8.css */
/* JM.Micro â€” version mobile complÃ¨te, palette pÃ©trole et cuivre */
:root{
  --black:#142427;
  --ink:#142427;
  --brand:#1f4a4d;
  --brand-deep:#102e31;
  --cream:#f4efe7;
  --paper:#f4efe7;
  --white:#fbf8f2;
  --mist:#dde7e4;
  --stone:#748b88;
  --accent:#f36f21;
  --oxide:#f36f21;
  --orange:#f36f21;
  --line:#b9cbc6;
  --sage:#afc5c0;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
}

/* V8 final overrides â€” keep last in the cascade */
.smp-unit + .smp-unit{border-left:0!important}
.menu-toggle,.home-mobile .menu-toggle,.standalone-v6 .menu-toggle{border:0!important;box-shadow:none!important;background:var(--accent)!important}
.hero-intro,.hero-foot,.testimonial,.quote,.contact-whatsapp,.salon-media,.pricing-finish,.youtube-poster-local,.technique-mobile .hero,.technique-mobile .cta,.histoire-mobile .hero,.histoire-mobile .cta,.hygiene-mobile .hero,.hygiene-mobile .kit,.hygiene-mobile .certificate,.hygiene-mobile .cta,.standalone-v6 .hero,.standalone-v6 .cta,.footer{background:var(--brand)!important}
.about-photo{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;background:var(--white)!important}
.reviews-grid{grid-template-columns:minmax(0,1fr)!important;max-width:860px!important;gap:28px!important;text-align:center!important}
.reviews-heading h2{max-width:760px!important;margin:10px auto 0!important}
.review-copy{max-width:680px!important;margin-inline:auto!important}
.review-score{display:flex!important;justify-content:center!important;align-items:center!important;gap:18px!important;margin:0 auto 22px!important;padding:19px 0!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.review-score strong{font-size:clamp(3.2rem,8vw,5.4rem)!important}
.review-score span{max-width:260px!important;text-align:left!important;line-height:1.45!important}
.review-actions{justify-content:center!important}
.contact-heading{max-width:760px!important;margin:0 auto 34px!important;text-align:center!important}
.contact-heading h2{max-width:720px!important;margin:10px auto 15px!important;color:var(--cream)!important}
.contact-heading p{max-width:620px!important;margin:0 auto!important;color:#dce8e5!important}
.contact-options{display:grid!important;grid-template-columns:.82fr 1.18fr!important;gap:22px!important;align-items:start!important}
.contact-card{padding:30px!important;background:var(--cream)!important;border:0!important;color:var(--brand)!important}
.contact-card h3{margin:5px 0 12px!important;font:2rem/1 var(--serif)!important;color:var(--brand)!important}
.contact-card p{color:#3e5e60!important}
.contact-option-label{color:var(--accent)!important;font-size:.66rem!important;font-weight:900!important;letter-spacing:.14em!important;text-transform:uppercase}
.contact-card .button{min-height:54px!important;border:0!important;background:var(--accent)!important;color:var(--brand)!important;box-shadow:7px 7px 0 var(--brand)!important}
.contact-phone{margin:20px 0 0!important;text-align:center!important}
.contact-phone a{color:var(--brand)!important;font-weight:800!important}
.first-opinion-form label{display:block!important;margin:14px 0 6px!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase}
.first-opinion-form input:not([type="checkbox"]),.first-opinion-form textarea{width:100%!important;padding:13px 14px!important;border:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;color:var(--brand)!important;font:inherit!important}
.first-opinion-form input[type="file"]{padding:11px!important;background:#fff!important}
.first-opinion-form .photo-upload{position:relative!important;display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:14px!important;width:100%!important;min-height:64px!important;margin:14px 0 6px!important;padding:10px!important;border:2px solid var(--accent)!important;background:#fff!important;cursor:pointer!important;overflow:hidden!important;text-transform:none!important;letter-spacing:0!important}
.first-opinion-form .photo-upload:hover,.first-opinion-form .photo-upload:focus-within{box-shadow:0 0 0 3px rgba(241,123,42,.24)!important}
.first-opinion-form .photo-upload-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:10px 14px!important;background:var(--accent)!important;color:var(--brand-deep)!important;font-size:.72rem!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
.first-opinion-form .photo-upload-selection{color:var(--brand)!important;font-size:.84rem!important;font-weight:600!important}
.first-opinion-form .photo-upload input[type="file"]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;opacity:0!important;cursor:pointer!important}
.first-opinion-form .photo-upload-help{display:block!important;margin:0 0 18px!important;color:#d8e4df!important;font-size:.74rem!important;line-height:1.5!important}
@media(max-width:600px){.first-opinion-form .photo-upload{grid-template-columns:1fr!important;gap:8px!important}.first-opinion-form .photo-upload-action{width:100%!important}.first-opinion-form .photo-upload-selection{text-align:center!important}}
.first-opinion-form .consent{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:15px 0 18px!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
.first-opinion-form .consent input{margin-top:4px!important}
.first-opinion-form .button{width:100%!important}
.form-preview-note{display:block!important;margin-top:14px!important;color:#607779!important;font-size:.68rem!important;line-height:1.45!important}
.contact-signature{text-align:center!important}
.technique-mobile .cta h2,.technique-mobile .cta p,.histoire-mobile .cta h2,.histoire-mobile .cta p,.hygiene-mobile .cta h2,.hygiene-mobile .cta p,.standalone-v6 .cta h2,.standalone-v6 .cta p{color:var(--cream)!important}
.technique-mobile .cta .button,.histoire-mobile .cta .button,.hygiene-mobile .cta .button,.standalone-v6 .cta .button{border:0!important;background:var(--accent)!important;color:var(--brand)!important;box-shadow:7px 7px 0 var(--cream)!important}
.hygiene-mobile .certificate img{background:var(--brand)!important}
@media(max-width:760px){
  .review-score{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:14px!important;text-align:left!important}
  .review-score strong{font-size:3.55rem!important}
  .review-score span{font-size:.62rem!important}
  .review-actions{align-items:stretch!important}
  .contact-options{grid-template-columns:1fr!important}
  .contact-card{padding:24px 20px!important}
}

/* Identité V12 : même logo et même fond sur toutes les pages. */
header{background:#1f4a4d!important;border-bottom-color:rgba(242,238,230,.22)!important}
header .nav > a:first-child,
header .brand{
  display:block!important;
  width:338px!important;
  height:70px!important;
  background:#1f4a4d url('/assets/logo-jm-micro-05-petrol-444.webp') left center/contain no-repeat!important;
  mix-blend-mode:normal!important;
}
header .nav > a:first-child img{display:none!important}
.video-note{font-size:.86rem;color:#d9d8d3}
.gesture-film{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:36px;
  align-items:center;
  margin-top:0;
  margin-bottom:70px;
  padding:30px;
  background:#1f4a4d;
  color:#f2eee6;
}
.gesture-film-copy h2{margin:10px 0 12px;font:clamp(2.1rem,4vw,3.5rem)/.96 var(--serif)}
.gesture-film-copy p{margin:0;color:#d9d8d3}
.gesture-film video{display:block;width:100%;max-height:560px;background:#000;object-fit:contain}

@media(max-width:760px){
  header .nav > a:first-child,
  header .brand{width:calc(100% - 64px)!important;height:64px!important;flex:0 1 auto!important}
  .gesture-film{grid-template-columns:1fr;gap:22px;margin-bottom:44px;padding:20px}
  .gesture-film video{max-height:520px}
  .technique-mobile .hero h1{font-size:clamp(2.8rem,13vw,4rem)!important;line-height:.94!important}
}

/* Base commune aux nouvelles pages autonomes V6. */
.standalone-v6,
.standalone-v6 *{box-sizing:border-box}
.standalone-v6{margin:0;background:var(--cream);color:var(--black);font-family:var(--sans);line-height:1.5}
.standalone-v6 .wrap{width:min(100% - 40px,1180px);margin-inline:auto}
.standalone-v6 a{color:inherit}
.standalone-v6 header{position:sticky;top:0;z-index:20;background:var(--brand);border-bottom:1px solid rgba(244,239,231,.22)}
.standalone-v6 .nav{min-height:80px;display:flex;align-items:center;gap:22px;position:relative}
.standalone-v6 .brand{display:block;width:310px;height:64px;flex:0 0 310px;background:var(--brand) url('/assets/bons-logos/logo-05-petrole-cuivre.svg') left center/contain no-repeat}
.standalone-v6 .nav-links{display:flex;align-items:center;justify-content:flex-end;gap:19px;margin-left:auto;background:transparent}
.standalone-v6 .nav-links a{color:var(--cream);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.standalone-v6 .nav-links a:hover,
.standalone-v6 .nav-links a.active{color:var(--accent)}
.standalone-v6 .menu-toggle{display:none}
.standalone-v6 .tag{color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.standalone-v6 .button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:13px 20px;border:1px solid var(--black);background:var(--black);color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.standalone-v6 .button:hover{background:var(--accent);border-color:var(--accent);color:var(--black)}
.standalone-v6 .footer{padding:27px 0;background:var(--brand-deep);color:var(--cream);font-size:.72rem}
.standalone-v6 .footer .wrap{display:flex;justify-content:space-between;gap:22px}
.standalone-v6 .chat-cta{position:fixed;right:18px;bottom:18px;z-index:18;padding:13px 17px;background:var(--accent);color:var(--brand-deep);box-shadow:0 8px 25px rgba(0,0,0,.24);font-size:.66rem;font-weight:900;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}

@media(max-width:760px){
  .standalone-v6 .wrap{width:min(100% - 28px,1180px)}
  .standalone-v6 .nav{min-height:72px;gap:0}
  .standalone-v6 .brand{width:calc(100% - 68px);height:64px;flex:0 1 auto}
  .standalone-v6 .menu-toggle{display:flex;width:68px;height:64px;flex:0 0 68px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:0;background:var(--accent)!important;color:var(--brand-deep)!important;font-size:.54rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
  .standalone-v6 .menu-toggle span{display:block;width:23px;height:2px;background:var(--brand-deep)!important;position:relative}
  .standalone-v6 .menu-toggle span:before,
  .standalone-v6 .menu-toggle span:after{content:"";position:absolute;right:0;height:2px;background:var(--brand-deep)!important}
  .standalone-v6 .menu-toggle span:before{top:-6px;width:23px}
  .standalone-v6 .menu-toggle span:after{top:6px;width:14px}
  .standalone-v6 .nav-links{display:none;position:absolute;top:71px;left:-14px;right:-14px;margin:0;padding:22px 28px 26px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 12px 22px rgba(0,0,0,.12)}
  .standalone-v6 header.menu-open .nav-links{display:grid;gap:17px}
  .standalone-v6 .nav-links a{color:var(--black)}
  .standalone-v6 .footer .wrap{display:block}
  .standalone-v6 .footer .wrap>*+*{display:block;margin-top:4px}
  .standalone-v6 .chat-cta{right:12px;bottom:12px;padding:11px 14px}
}

/* V8 â€” harmonisation pÃ©trole, lisibilitÃ© mobile et conversion */
:root{
  --black:#1f4a4d;
  --ink:#1f4a4d;
  --brand-deep:#1f4a4d;
}

html,
body{background:var(--brand)}

header,
.home-mobile header,
.standalone-v6 header{background:var(--brand)!important}

.menu-toggle,
.home-mobile .menu-toggle,
.standalone-v6 .menu-toggle{
  border:0!important;
  outline:0;
  box-shadow:none!important;
  background:var(--accent)!important;
}

.menu-toggle span,
.menu-toggle span::before,
.menu-toggle span::after{background:var(--brand)!important}

/* Le titre SMP reste graphique, sans sÃ©parateurs blancs. */
.smp-unit + .smp-unit{border-left:0!important}

/* Les fonds sombres reprennent exactement le pÃ©trole du header. */
.hero-intro,
.hero-foot,
.testimonial,
.quote,
.contact-whatsapp,
.salon-media,
.pricing-finish,
.youtube-poster-local,
.technique-mobile .hero,
.technique-mobile .cta,
.histoire-mobile .hero,
.histoire-mobile .cta,
.hygiene-mobile .hero,
.hygiene-mobile .kit,
.hygiene-mobile .certificate,
.hygiene-mobile .cta,
.standalone-v6 .hero,
.standalone-v6 .cta,
.footer{background:var(--brand)!important}

.about-photo{
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  background:var(--white);
}

/* Avis Google : une lecture compacte et centrÃ©e. */
.reviews-grid{
  grid-template-columns:minmax(0,1fr)!important;
  max-width:860px;
  gap:28px!important;
  text-align:center;
}
.reviews-heading h2{max-width:760px;margin:10px auto 0}
.review-copy{max-width:680px!important;margin-inline:auto}
.review-score{
  justify-content:center;
  align-items:center!important;
  gap:18px!important;
  margin:0 auto 22px!important;
  padding:19px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.review-score strong{font-size:clamp(3.2rem,8vw,5.4rem)!important}
.review-score span{max-width:260px!important;text-align:left;line-height:1.45}
.review-actions{justify-content:center}

/* Contact : WhatsApp prioritaire, formulaire clairement proposÃ© en second. */
.contact-heading{max-width:760px;margin:0 auto 34px;text-align:center}
.contact-heading h2{max-width:720px;margin:10px auto 15px;color:var(--cream)}
.contact-heading p{max-width:620px;margin:0 auto;color:#dce8e5}
.contact-options{display:grid;grid-template-columns:.82fr 1.18fr;gap:22px;align-items:start}
.contact-card{
  padding:30px!important;
  background:var(--cream)!important;
  border:0!important;
  color:var(--brand)!important;
}
.contact-card h3{margin:5px 0 12px;font:2rem/1 var(--serif);color:var(--brand)}
.contact-card p{color:#3e5e60!important}
.contact-option-label{color:var(--accent);font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.contact-card .button{
  min-height:54px;
  border:0!important;
  background:var(--accent)!important;
  color:var(--brand)!important;
  box-shadow:7px 7px 0 var(--brand);
}
.contact-card .button:hover{transform:translate(2px,2px);box-shadow:4px 4px 0 var(--brand)}
.contact-phone{margin:20px 0 0!important;text-align:center}
.contact-phone a{color:var(--brand)!important;font-weight:800}
.first-opinion-form label{display:block;margin:14px 0 6px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.first-opinion-form input:not([type="checkbox"]),
.first-opinion-form textarea{
  width:100%;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:0;
  background:#fff;
  color:var(--brand);
  font:inherit;
}
.first-opinion-form input[type="file"]{padding:11px!important;background:#fff}
.first-opinion-form .consent{display:flex;align-items:flex-start;gap:10px;margin:15px 0 18px;text-transform:none;letter-spacing:0;font-weight:400}
.first-opinion-form .consent input{margin-top:4px}
.first-opinion-form .button{width:100%}
.form-preview-note{display:block;margin-top:14px;color:#607779;font-size:.68rem;line-height:1.45}
.contact-signature{text-align:center}

/* CTA des pages secondaires : contraste franc et bouton identifiable. */
.technique-mobile .cta h2,
.technique-mobile .cta p,
.histoire-mobile .cta h2,
.histoire-mobile .cta p,
.hygiene-mobile .cta h2,
.hygiene-mobile .cta p,
.standalone-v6 .cta h2,
.standalone-v6 .cta p{color:var(--cream)!important}
.technique-mobile .cta .button,
.histoire-mobile .cta .button,
.hygiene-mobile .cta .button,
.standalone-v6 .cta .button{
  border:0!important;
  background:var(--accent)!important;
  color:var(--brand)!important;
  box-shadow:7px 7px 0 var(--cream);
}
.hygiene-mobile .certificate img{background:var(--brand)!important}

@media(max-width:760px){
  .about-photo{width:100%;max-height:none}
  .reviews-grid{gap:21px!important}
  .reviews-heading h2{font-size:clamp(2.65rem,13vw,4.2rem)}
  .review-score{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:14px!important;text-align:left}
  .review-score strong{font-size:3.55rem!important}
  .review-score span{font-size:.62rem!important}
  .review-actions{align-items:stretch!important}
  .review-actions a{text-align:center}
  .contact-options{grid-template-columns:1fr}
  .contact-card{padding:24px 20px!important}
  .contact-heading{margin-bottom:24px}
  .contact-card .button{width:100%}
}

/* V5 â€” hiÃ©rarchie, confiance, salon et rythme mobile */
.effect-title{
  display:grid;
  width:max-content;
  margin:12px 0 24px;
  font-family:Georgia,"Times New Roman",serif;
  letter-spacing:-.075em;
}
.effect-title span{
  font-size:clamp(3rem,7vw,5rem);
  line-height:.8;
  color:var(--cream);
}
.effect-title strong{
  margin-left:.48em;
  font-size:clamp(5.2rem,12vw,8.2rem);
  font-weight:400;
  line-height:.76;
  color:var(--accent);
}

.review-score{
  display:flex;
  align-items:flex-end;
  gap:16px;
  margin:0 0 22px;
  padding-bottom:19px;
  border-bottom:1px solid var(--line);
}
.review-score strong{
  font:clamp(3rem,6vw,5.6rem)/.78 Georgia,"Times New Roman",serif;
  letter-spacing:-.07em;
  color:var(--accent);
}
.review-score span{
  max-width:180px;
  font-size:.76rem;
  font-weight:800;
  line-height:1.35;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.review-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 24px;
}
.review-bio-link{
  color:var(--black);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-decoration:underline;
  text-decoration-color:var(--accent);
  text-decoration-thickness:2px;
  text-underline-offset:5px;
  text-transform:uppercase;
}

.salon{
  padding:84px 0;
  background:var(--mist);
  border-top:1px solid var(--line);
  scroll-margin-top:80px;
}
.salon-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:64px;
  align-items:center;
}
.salon-media{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:430px;
  overflow:hidden;
  padding:28px;
  background:
    linear-gradient(150deg,transparent 48%,rgba(255,255,255,.07) 48% 50%,transparent 50%),
    var(--black);
  color:#fff;
  border-bottom:7px solid var(--accent);
}
.salon-media:before{
  content:"";
  position:absolute;
  width:160px;
  height:160px;
  top:42px;
  right:38px;
  border:1px solid color-mix(in srgb,var(--accent) 65%,transparent);
  transform:rotate(15deg);
}
.salon-media span,
.salon-media strong{position:relative;z-index:1}
.salon-media span{
  margin-bottom:8px;
  color:var(--accent);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.salon-media strong{
  max-width:280px;
  font:2.2rem/.95 Georgia,"Times New Roman",serif;
}
.salon-copy h2{
  max-width:600px;
  margin:12px 0 22px;
  font:clamp(2.5rem,4.8vw,4.7rem)/.94 Georgia,"Times New Roman",serif;
  letter-spacing:-.06em;
}
.salon-copy p{max-width:610px}
.salon-copy address{
  margin:24px 0 18px;
  padding-left:18px;
  border-left:3px solid var(--accent);
  font-style:normal;
}
.salon-facts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 24px;
}
.salon-facts span{
  padding:7px 10px;
  background:var(--white);
  border:1px solid var(--line);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.salon-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px 22px;
}
.parking-link{
  color:var(--black);
  font-size:.76rem;
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:var(--accent);
  text-decoration-thickness:2px;
  text-underline-offset:5px;
  text-transform:uppercase;
}

.technique-mobile .quote .wrap{
  display:flex;
  justify-content:center;
  text-align:center;
}
.technique-mobile .quote p{
  max-width:760px;
  margin:0;
}

@media(max-width:760px){
  .effect-title{
    margin:10px 0 19px;
  }
  .effect-title span{
    font-size:clamp(2.7rem,14vw,3.7rem);
  }
  .effect-title strong{
    margin-left:.24em;
    font-size:clamp(5.3rem,27vw,7rem);
  }
  .hero-intro{padding-top:25px!important;padding-bottom:21px!important}
  .hero-foot{padding-top:21px!important;padding-bottom:31px!important}

  .testimonial,
  .reviews,
  .method,
  .pricing,
  .quote,
  .about,
  .salon,
  .contact,
  .faq,
  .density{padding-top:52px!important;padding-bottom:52px!important}
  .testimonial-grid,
  .reviews-grid,
  .method-grid,
  .about-grid,
  .salon-grid,
  .contact-grid{gap:27px!important}

  .testimonial-grid>div:first-child,
  .reviews-grid>div:first-child,
  .review-copy{text-align:center}
  .testimonial-grid p,
  .review-copy p{margin-inline:auto}
  .review-score{
    justify-content:center;
    align-items:center;
    gap:11px;
    text-align:left;
  }
  .review-score strong{font-size:3.9rem}
  .review-score span{max-width:145px;font-size:.65rem}
  .review-actions{
    justify-content:center;
  }

  .pricing-main{
    gap:8px!important;
  }
  .pricing-diagram{
    width:min(100%,410px);
    min-height:270px!important;
    margin:0 auto 4px;
    -webkit-mask-size:178% auto!important;
    mask-size:178% auto!important;
    -webkit-mask-position:41% 4%!important;
    mask-position:41% 4%!important;
  }
  .pricing-table-head{text-align:center}

  .salon-grid{grid-template-columns:1fr}
  .salon-media{
    min-height:300px;
    padding:22px;
  }
  .salon-copy{text-align:center}
  .salon-copy p{margin-inline:auto}
  .salon-copy address{
    display:inline-block;
    text-align:left;
  }
  .salon-facts,
  .salon-actions{justify-content:center}
  .salon-actions .button{width:100%}

  .about-grid>div,
  .method-grid>div:first-child,
  .faq-head{text-align:center}
  .about p{margin-inline:auto}
  .technique-mobile .content{padding-top:48px!important;padding-bottom:48px!important}
  .technique-mobile .blocks{gap:18px!important}
  .technique-mobile .block{padding:24px 0!important}
  .technique-mobile .schema{margin-top:42px!important;padding-top:36px!important}
  .technique-mobile .quote{padding:34px 0!important}
  .histoire-mobile main section,
  .hygiene-mobile main section{padding-top:52px!important;padding-bottom:52px!important}
}

/* Le raccourci WhatsApp s'efface au niveau du vrai bloc contact. */
.chat-cta{
  transition:opacity .22s ease,transform .22s ease,background-color .22s ease;
}
.chat-cta.is-suppressed{
  animation:none!important;
  opacity:0!important;
  pointer-events:none;
  transform:translateY(18px)!important;
}

/* V8 — photo réelle du salon et formulaire de premier avis */
.salon-media.salon-photo{
  display:block;
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  background:var(--brand)!important;
  border-bottom:7px solid var(--accent);
}
.salon-media.salon-photo:before{display:none}
.salon-photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:var(--brand);
}
.salon-photo figcaption{
  padding:12px 16px 13px;
  color:var(--white);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.first-opinion-form .form-preview-note a{
  color:inherit;
  font-weight:800;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

/* V8 â€” verrouillage visuel final */
.smp-unit + .smp-unit{
  border-left:0!important;
}
.menu-toggle,
.home-mobile .menu-toggle,
.standalone-v6 .menu-toggle{
  border:0!important;
  border-top:0!important;
  box-shadow:none!important;
}
.hero-image{
  background:var(--brand)!important;
}

/* V5.1 â€” titre SMP mieux rythmÃ© et tarifs clarifiÃ©s */
.hero .smp-title{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;
  gap:clamp(1.5rem,5vw,4rem)!important;
  width:min(100%,690px);
  margin:12px 0 25px!important;
  font:clamp(5.7rem,12vw,8.7rem)/.72 Georgia,"Times New Roman",serif!important;
  letter-spacing:0!important;
}
.hero .smp-title span{
  position:relative;
  display:block;
  min-width:0!important;
  padding:0 0 22px!important;
  line-height:.72;
  text-align:left;
  color:var(--cream);
}
.hero .smp-title span:nth-child(2){color:var(--accent)}
.hero .smp-title span::after{
  content:attr(data-word);
  position:absolute;
  left:0!important;
  right:auto!important;
  bottom:0;
  font:700 .55rem/1 var(--sans);
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--sage);
  white-space:nowrap;
}
.pricing-finish{
  display:block!important;
  margin-top:34px;
  padding:25px 27px 25px 31px!important;
  border-left:4px solid var(--accent);
}
.pricing-finish::before{
  content:"FINITION INCLUSE SI UTILE";
  display:block;
  margin-bottom:10px;
  color:var(--accent);
  font:800 .62rem/1 var(--sans);
  letter-spacing:.13em;
}
.pricing-special{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:34px;
  align-items:start;
  margin-top:18px;
  padding:28px;
  background:var(--mist);
  border-top:1px solid var(--line);
}
.pricing-special-heading > span{
  display:block;
  margin-bottom:9px;
  color:var(--accent);
  font:800 .66rem/1 var(--sans);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.pricing-special h3{
  margin:0;
  font:1.7rem/1 var(--serif);
  letter-spacing:-.035em;
}
.pricing-special-copy p{
  margin:0 0 10px;
  color:#5f5a56;
  font-size:.9rem;
}
.pricing-special .button{margin-top:7px}

@media(max-width:760px){
  .hero .smp-title{
    gap:clamp(1rem,5vw,1.8rem)!important;
    width:100%;
    margin:7px 0 23px!important;
    font-size:clamp(5.2rem,26vw,6.8rem)!important;
  }
  .hero .smp-title span{padding-bottom:20px!important}
  .hero .smp-title span::after{
    font-size:clamp(.42rem,2vw,.52rem);
    letter-spacing:.07em;
  }
  .pricing-finish{
    margin-top:24px!important;
    padding:20px 18px 20px 21px!important;
  }
  .pricing-special{
    grid-template-columns:1fr;
    gap:15px;
    padding:22px 18px;
  }
  .pricing-special h3{font-size:1.5rem}
  .price-scope small{font-size:.73rem;line-height:1.25}
}

html{background:var(--brand)}
body{
  background:var(--cream);
  color:var(--black);
  line-height:1.5;
}
header{
  background:var(--brand);
  border-bottom-color:rgba(245,238,232,.28);
  box-shadow:0 5px 18px rgba(23,33,29,.16);
}
.nav > a:first-child,
.brand{
  background:var(--brand) url('/assets/bons-logos/logo-05-petrole-cuivre.png') left center/contain no-repeat;
}
.nav > a:first-child img{display:none}
.menu-toggle{
  background:var(--accent);
  color:var(--brand-deep);
  border:0!important;
  border-left-color:transparent;
}
.menu-toggle span,
.menu-toggle span:after{background:var(--brand-deep)}
.menu-toggle span{border:0!important}
.nav-links{background:var(--cream)}
.nav-links a{color:var(--black)}
.nav-links a:hover,
.nav-links a.active{color:var(--brand)}

.tag,
.eyebrow,
.hero h1 em,
.number,
.era-year,
.session-count b,
.pricing-phase small,
.faq-item summary:after,
.shave-rule span,
.kit-note,
.framework-list b,
.certificate strong{color:var(--accent)}
.hero,
.hero-grid,
.hero-intro,
.hero-foot,
.testimonial,
.kit,
.pricing-finish,
.shave-rule{background:var(--ink)}
.hero-rule,
.quote,
.cta{background:var(--brand)}
.hero-rule{background:var(--accent)}
.hero p,
.hero-sub{color:var(--sage)}

.button,
.chat-cta,
.chat{
  background:var(--brand);
  border-color:var(--brand);
  color:var(--cream);
}
.button:hover,
.button:focus-visible,
.chat-cta:hover,
.chat-cta:focus-visible,
.chat:hover,
.chat:focus-visible{
  background:var(--accent);
  border-color:var(--accent);
  color:var(--ink);
}
.quote{color:var(--cream)}
.quote strong,
.quote .quote-mark{color:var(--accent)}
.method,
.modern,
.certificates{background:var(--mist)}
.reviews,
.about,
.pricing,
.density,
.pillar,
.principle,
.note{background:var(--white)}
.price-zone,
.method-index,
.result-text .facts > div:first-child{background:var(--brand);color:var(--cream)}
.pricing-diagram{background:var(--accent)}
.pricing-phase{border-color:var(--accent)}
.pricing-finish-mark{border-color:var(--accent);color:var(--accent)}
.pricing-note{background:var(--mist);border-color:var(--line)}
.faq-item[open]{border-color:var(--accent)}
.text-link,
.review-link,
.reviews-link,
.note a{color:var(--brand)}
.footer{background:var(--brand);color:var(--cream)}
.footer a{color:var(--cream)}

.hero-montage{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:#050706;
}
.hero-montage:after{display:none}
.hero-montage figure{margin:0}
.hero-montage .hero-after{
  position:absolute;
  inset:0;
  display:block;
  background:#050706;
}
.hero-montage .hero-after img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center top;
}
.hero-montage .hero-before{
  position:absolute;
  z-index:2;
  left:18px;
  bottom:18px;
  width:32%;
  max-width:215px;
  overflow:hidden;
  background:#050706;
  border:2px solid var(--accent);
  box-shadow:0 12px 30px rgba(0,0,0,.42);
}
.hero-montage .hero-before img{
  display:block;
  width:100%;
  height:auto;
}
.hero-montage figcaption{
  position:absolute;
  z-index:3;
  padding:7px 9px;
  background:rgba(16,46,49,.92);
  color:var(--cream);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
}
.hero-montage .hero-after figcaption{
  right:16px;
  bottom:16px;
  border-left:3px solid var(--accent);
}
.hero-montage .hero-before figcaption{
  left:0;
  top:0;
  background:var(--accent);
  color:var(--ink);
}
.gesture-film{
  display:grid;
  grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);
  gap:34px;
  align-items:end;
  margin:0 0 70px;
  padding:28px;
  background:var(--ink);
  color:var(--cream);
}
.gesture-film-copy h2{
  margin:10px 0 14px;
  font:clamp(2.3rem,4vw,4rem)/.92 Georgia,"Times New Roman",serif;
  letter-spacing:-.055em;
}
.gesture-film-copy p{
  margin:0;
  color:var(--sage);
  font-size:.92rem;
}
.gesture-film video{
  display:block;
  width:100%;
  height:auto;
  max-height:650px;
  object-fit:contain;
  background:#000;
  border-bottom:5px solid var(--accent);
}

@media(max-width:760px){
  .wrap{
    width:min(100% - 24px,1100px);
  }

  /* Header compact et continu */
  header .wrap{width:calc(100% - 24px)}
  .nav{
    height:70px;
    gap:0;
  }
  .nav > a:first-child,
  .brand{
    width:calc(100% - 62px);
    height:70px;
    flex:0 1 auto;
    background-position:left center;
  }
  .menu-toggle{
    width:62px;
    height:70px;
    flex:0 0 62px;
    padding:0;
    border:0;
    border-left:1px solid rgba(245,238,232,.25);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    font-size:.52rem;
  }
  .nav-links{
    top:69px;
    left:-12px;
    right:-12px;
    padding:16px 22px 18px;
    gap:14px!important;
  }

  /* Rythme vertical gÃ©nÃ©ral */
  .proof,
  .reviews,
  .testimonial,
  .method,
  .pricing,
  .about,
  .contact,
  .faq,
  .density,
  .content,
  .timeline,
  .modern,
  .kit,
  .certificates,
  .framework,
  .cta{
    padding:50px 0!important;
  }
  .gallery{padding:0 0 50px!important}
  .quote{padding:50px 0!important}
  .footer{padding:20px 0}

  h2{margin-top:8px!important;margin-bottom:14px!important}
  p{margin-top:0}
  .tag{line-height:1.25}

  /* Accueil */
  .hero{padding:12px 0 0!important}
  .hero-grid{border-radius:0}
  .hero-intro{
    padding:22px 14px 18px!important;
  }
  .hero-rule{
    height:7px;
    margin:0 0 20px;
  }
  .hero h1{
    margin:0 0 18px!important;
    font-size:clamp(3.95rem,20vw,5.2rem)!important;
    line-height:.77!important;
  }
  .hero-sub,
  .hero-intro > p{
    max-width:18em;
    margin:0;
    font-size:1.08rem!important;
    line-height:1.4;
  }
  .hero-image{
    min-height:0!important;
    aspect-ratio:1/1.26;
  }
  .hero-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center top;
  }
  .hero-montage .hero-before{
    left:12px;
    bottom:12px;
    width:34%;
    border-width:2px;
  }
  .hero-montage .hero-after figcaption{
    right:12px;
    bottom:12px;
  }
  .gesture-film{
    grid-template-columns:1fr;
    gap:18px;
    margin:0 0 42px;
    padding:18px 14px 14px;
  }
  .gesture-film-copy h2{
    margin:8px 0 10px!important;
    font-size:2.45rem!important;
    line-height:.92!important;
  }
  .gesture-film video{
    width:100%;
    max-height:none;
  }
  .hero-foot{
    padding:17px 14px 24px!important;
  }
  .hero-foot .button{margin-top:14px}
  .hero-foot small{margin-top:10px}

  .intro{max-width:none}
  .intro h2{
    font-size:clamp(2.45rem,12vw,3.25rem)!important;
    line-height:.94!important;
  }
  .intro-note{margin-top:14px}
  .proof-grid,
  .reviews-grid,
  .testimonial-grid,
  .method-grid,
  .about-grid,
  .contact-grid,
  .density-grid{
    gap:22px!important;
  }
  .proof-grid{margin-top:28px!important}
  .result-text h3{margin:8px 0 12px}
  .result-text p{margin-bottom:14px}
  .rule{margin:18px 0}
  .facts{gap:1px}
  .facts > div{padding:18px}
  .whatsapp-main{margin-top:22px}
  .whatsapp-main .button,
  .about .button,
  .contact .button,
  .cta .button{width:100%}

  .reviews h2,
  .testimonial h2,
  .gallery h2,
  .method h2,
  .about h2,
  .contact h2,
  .faq h2,
  .density h2,
  .pricing h2{
    font-size:clamp(2.35rem,11vw,3.15rem)!important;
    line-height:.94!important;
  }
  .review-copy p{margin-bottom:12px}
  .review-note{margin-top:9px}
  .testimonial-grid p{margin-bottom:13px}
  .youtube-player{min-height:0;aspect-ratio:16/9}

  .gallery-head{margin-bottom:16px!important}
  .gallery-head p{margin-top:10px!important}
  .gallery-track{
    grid-auto-columns:88%!important;
    gap:12px!important;
    padding-bottom:8px!important;
  }
  .gallery-card figcaption{padding:12px 2px 0}
  .gallery-card.gallery-video video{height:285px!important}
  .gallery-note{margin:12px 0 0}

  .steps{margin-top:2px}
  .step{
    gap:13px;
    padding:18px 0!important;
  }
  .step h3{margin:0 0 6px}
  .step p{margin:0}

  .pricing-opening{
    gap:12px!important;
    padding-bottom:20px!important;
  }
  .session-count b{font-size:5rem!important}
  .pricing-progress{padding:18px 0!important}
  .pricing-phase{padding:12px 0!important}
  .pricing-main{gap:2px!important}
  .pricing-diagram{min-height:188px!important}
  .pricing-table-head{margin-bottom:10px}
  .price-row{padding:11px 0!important}
  .price-amount{font-size:1.28rem!important}
  .pricing-finish{
    margin-top:24px!important;
    padding:18px 16px!important;
  }
  .pricing-maintenance{margin-top:12px!important}

  .about-photo{margin-bottom:0}
  .about-grid p{margin-bottom:12px}
  .contact-grid address{margin-top:20px}
  .form{padding:20px!important}
  .form label{margin-top:10px}
  .form input,
  .form textarea{padding:12px}
  .form textarea{min-height:120px}
  .faq-head{gap:12px!important}
  .faq-list{margin-top:24px!important}
  .faq-item summary{padding:16px 0!important}
  .faq-item p{margin-bottom:16px!important}
  .faq-cta{margin-top:22px!important}
  .shave-rule{padding:22px 0!important}

  /* Pages Le geste et Origines */
  .technique-mobile > main > .hero,
  .histoire-mobile > main > .hero,
  .hygiene-mobile > main > .hero{
    padding:42px 0 36px!important;
  }
  .technique-mobile > main > .hero h1,
  .histoire-mobile > main > .hero h1,
  .hygiene-mobile > main > .hero h1{
    margin:10px 0 14px!important;
    font-size:clamp(3.7rem,18vw,4.8rem)!important;
  }
  .technique-mobile > main > .hero p,
  .histoire-mobile > main > .hero p,
  .hygiene-mobile > main > .hero p{
    margin:0;
    font-size:1rem!important;
    line-height:1.45;
  }
  .lead{
    margin:0 0 30px!important;
    font-size:1.03rem!important;
  }
  .blocks{gap:0!important}
  .block{
    padding:18px 0!important;
  }
  .block h2{
    margin:7px 0 9px!important;
    font-size:1.75rem!important;
  }
  .schema{
    margin:30px 0 0!important;
    padding:14px!important;
    gap:18px!important;
  }
  .schema h2{font-size:2.35rem!important}
  .schema p{margin-bottom:11px}
  .timeline-intro{
    margin:0 0 28px!important;
    font-size:1.03rem!important;
  }
  .era{
    gap:7px!important;
    padding:20px 0!important;
  }
  .era h2{
    margin:0 0 9px!important;
    font-size:2rem!important;
  }
  .pillars{
    gap:12px!important;
    margin-top:22px!important;
  }
  .pillar{padding:19px!important}

  /* Page HygiÃ¨ne */
  .hygiene-mobile .hero-grid{gap:20px!important}
  .hygiene-mobile .seal{
    width:120px!important;
    margin-top:2px;
  }
  .hygiene-mobile .seal strong{font-size:2rem!important}
  .hygiene-mobile .seal span{font-size:.44rem!important}
  .hygiene-mobile .intro{
    padding:44px 0 28px!important;
    gap:14px!important;
  }
  .hygiene-mobile .intro p{font-size:1rem!important}
  .hygiene-mobile .principles{gap:1px}
  .hygiene-mobile .principle{padding:20px!important}
  .hygiene-mobile .principle h3{margin:10px 0 6px!important}
  .hygiene-mobile .kit-grid,
  .hygiene-mobile .framework-grid{gap:18px!important}
  .hygiene-mobile .kit-copy{
    padding:18px 0!important;
  }
  .hygiene-mobile .kit-list{
    gap:7px!important;
    margin-top:16px!important;
  }
  .hygiene-mobile .kit-note{margin-top:13px!important}
  .hygiene-mobile .certificates-head{margin-bottom:20px!important}
  .hygiene-mobile .certificates-head p{margin-top:10px!important}
  .hygiene-mobile .certificate-grid{gap:12px!important}
  .hygiene-mobile .certificate{padding:10px!important}
  .hygiene-mobile .certificate figcaption{padding:10px 2px 2px!important}
  .hygiene-mobile .framework-list{margin-top:20px!important}
  .hygiene-mobile .framework-list article{
    grid-template-columns:38px 1fr!important;
    gap:10px!important;
    padding:16px 0!important;
  }
  .hygiene-mobile .note{
    margin-top:22px!important;
    padding:16px!important;
  }
  .cta p{margin-bottom:20px!important}
  .footer .wrap>*+*{margin-top:4px!important}

  .chat,
  .chat-cta{
    right:12px!important;
    bottom:12px!important;
    padding:11px 14px!important;
  }
}

/* V6 â€” parcours plus court, titre SMP 05 et conversion WhatsApp */
.smp-05{margin:26px 0 22px!important;max-width:650px}
.smp-word{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:8px solid var(--accent)}
.smp-unit{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:16px 12px 0}
.smp-unit+ .smp-unit{border-left:1px solid rgba(255,255,255,.2)}
.smp-unit strong{font:clamp(4.6rem,8vw,8rem)/.76 var(--serif);letter-spacing:-.09em;color:#fff}
.smp-unit span{margin-top:12px;font-size:.6rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}
.youtube-poster{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}
.youtube-poster img{width:100%;height:100%;display:block;object-fit:cover;opacity:.82}
.youtube-poster span{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:var(--accent);color:#fff;font-size:1.35rem;box-shadow:0 8px 30px rgba(0,0,0,.3)}
.youtube-poster-local{display:grid;place-content:center;text-align:center;color:#fff;background:linear-gradient(145deg,var(--brand-deep),#050807);text-decoration:none}
.youtube-poster-local:before{content:"";position:absolute;inset:18px;border:1px solid rgba(201,111,74,.45)}
.youtube-poster-local strong{font:clamp(2rem,5vw,4rem)/.95 var(--serif);letter-spacing:-.045em}
.youtube-poster-local small{margin-top:10px;color:#cfc9c2;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.youtube-poster-local span{top:auto;bottom:24px}
.gallery-card{content-visibility:visible!important;contain-intrinsic-size:auto!important}
.reviews-grid{align-items:start!important}
.reviews .tag{margin:0 0 8px;line-height:1}
.review-score{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.review-score strong{font:2.35rem/1 var(--serif);color:var(--accent)}
.review-score span{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.review-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.review-bio-link,.text-link{display:inline-block;color:inherit;font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.pricing-teaser,.faq-teaser{padding:86px 0;background:var(--white);border-top:1px solid var(--line)}
.pricing-teaser-grid,.faq-teaser-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end}
.pricing-teaser h2,.faq-teaser h2{font:clamp(2.4rem,4.7vw,4.7rem)/.94 var(--serif);letter-spacing:-.055em;margin:12px 0 0}
.pricing-teaser p,.faq-teaser p{margin:0 0 24px;max-width:520px}
.faq-teaser{background:var(--mist)}
.contact-whatsapp{background:var(--black);color:#fff}
.contact-whatsapp h2{color:#fff}
.contact-whatsapp p{color:#d7d1cc}
.contact-signature{margin-top:22px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.contact-card{padding:34px;background:#211d20;border:1px solid #4b4247}
.contact-card .button{width:100%;background:var(--accent);border-color:var(--accent)}
.contact-card .button:hover{background:#fff;color:var(--black);border-color:#fff}
.contact-card address{margin-top:25px;color:#cfc7c3}
.contact-card a:not(.button){color:#fff}
/* Le contenu complet existe dÃ©sormais sur des pages dÃ©diÃ©es. */
.faq,.density,.shave-rule{display:none}

@media(max-width:760px){
  .smp-word{border-top-width:6px}
  .smp-unit{padding:14px 7px 0}
  .smp-unit strong{font-size:4.75rem}
  .smp-unit span{font-size:.51rem;letter-spacing:.08em}
  .pricing-teaser,.faq-teaser{padding:58px 0}
  .pricing-teaser-grid,.faq-teaser-grid{grid-template-columns:1fr;gap:22px}
  .pricing-teaser h2,.faq-teaser h2{font-size:2.75rem}
  .youtube-poster span{width:54px;height:54px}
  .review-actions{align-items:flex-start;flex-direction:column;gap:14px}
  .contact-card{padding:24px 20px}
}

/* V4 â€” finition mobile : header franc, nouveau titre et rythme resserrÃ© */
.menu-toggle{
  background:var(--accent)!important;
  border:0!important;
  color:var(--ink)!important;
}
.menu-toggle span{
  width:23px!important;
  height:2px!important;
  margin:4px 0 0!important;
  border:0!important;
  background:var(--ink)!important;
  position:relative;
}
.menu-toggle span:before,
.menu-toggle span:after{
  content:"";
  position:absolute;
  right:0;
  height:2px!important;
  background:var(--ink)!important;
}
.menu-toggle span:before{top:-6px;width:23px}
.menu-toggle span:after{top:6px!important;width:14px!important}

.smp-title{
  display:flex;
  align-items:flex-end;
  gap:.08em;
  margin:7px 0 26px;
  font:clamp(5.6rem,12vw,8.6rem)/.72 Georgia,"Times New Roman",serif;
  letter-spacing:-.08em;
}
.smp-title span{
  position:relative;
  display:inline-block;
  min-width:.62em;
  padding-bottom:19px;
  color:var(--cream);
}
.smp-title span:nth-child(2){color:var(--accent)}
.smp-title span:after{
  content:attr(data-word);
  position:absolute;
  left:.12em;
  bottom:0;
  font:800 .55rem/1 Arial,sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--sage);
}
.smp-title span:last-child:after{left:auto;right:-.05em}

.results-gallery{padding-bottom:78px}
.results-gallery .gallery-head{
  margin-top:44px;
  padding-top:34px;
  border-top:1px solid var(--line);
}
.results-gallery .gallery-head h3{
  margin:8px 0 10px;
  font:clamp(2.5rem,5vw,4.4rem)/.94 Georgia,"Times New Roman",serif;
  letter-spacing:-.055em;
}
.results-gallery .gallery-head p{max-width:620px}
.gallery-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 18px;
  margin-top:20px;
}
.gallery-actions p{margin:0;color:var(--stone);font-size:.86rem}
.gallery-actions a{
  color:var(--brand);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.09em;
  text-decoration-color:var(--accent);
  text-decoration-thickness:2px;
  text-transform:uppercase;
  text-underline-offset:5px;
}

.technique-mobile .quote{padding:44px 0!important}
.technique-mobile .cta{padding:48px 0 72px!important}
.technique-mobile .cta .button{
  width:min(100%,420px);
  background:var(--accent)!important;
  border:2px solid var(--ink)!important;
  box-shadow:5px 5px 0 var(--ink);
  color:var(--ink)!important;
}
.hygiene-mobile .seal{
  justify-self:center!important;
  margin-inline:auto!important;
}

@media(max-width:760px){
  .smp-title{
    gap:.03em;
    margin:5px 0 22px;
    font-size:clamp(5.4rem,28vw,7rem);
  }
  .smp-title span{
    min-width:.59em;
    padding-bottom:18px;
  }
  .smp-title span:after{
    left:.06em;
    font-size:.46rem;
    letter-spacing:.08em;
  }
  .smp-title span:last-child:after{right:-.18em}
  .results-gallery{padding:46px 0 50px!important}
  .results-gallery .proof-grid{margin-top:22px!important}
  .results-gallery .gallery-head{
    margin-top:32px!important;
    padding-top:26px;
  }
  .results-gallery .gallery-head h3{
    font-size:clamp(2.35rem,12vw,3.2rem);
  }
  .gallery-actions{
    display:block;
    margin-top:17px;
  }
  .gallery-actions p{margin-bottom:9px}
  .technique-mobile .quote{padding:36px 0!important}
  .technique-mobile .cta{padding:42px 0 62px!important}
  .hygiene-mobile .hero-grid{text-align:center}
}

/* V5 final overrides â€” placÃ©s aprÃ¨s les rÃ¨gles historiques */
@media(max-width:760px){
  .hero-intro{padding-top:25px!important;padding-bottom:21px!important}
  .hero-foot{padding-top:21px!important;padding-bottom:31px!important}
  .testimonial,
  .reviews,
  .method,
  .pricing,
  .quote,
  .about,
  .salon,
  .contact,
  .faq,
  .density{padding-top:52px!important;padding-bottom:52px!important}
  .testimonial-grid,
  .reviews-grid,
  .method-grid,
  .about-grid,
  .salon-grid,
  .contact-grid{gap:27px!important}
  .pricing-main{gap:8px!important}
  .pricing-diagram{
    width:min(100%,410px);
    min-height:270px!important;
    margin:0 auto 4px;
    -webkit-mask-size:178% auto!important;
    mask-size:178% auto!important;
    -webkit-mask-position:41% 4%!important;
    mask-position:41% 4%!important;
  }
  .pricing-table-head{text-align:center}
  .technique-mobile .content{padding-top:48px!important;padding-bottom:48px!important}
  .technique-mobile .blocks{gap:18px!important}
  .technique-mobile .block{padding:24px 0!important}
  .technique-mobile .schema{margin-top:42px!important;padding-top:36px!important}
  .technique-mobile .quote{padding:34px 0!important}
  .histoire-mobile main section,
  .hygiene-mobile main section{padding-top:52px!important;padding-bottom:52px!important}
}


/* Source preserved: assets/site-v12-v3.css */
/* JM.Micro — V12 v3 test
   Couche commune et volontairement prioritaire pour stabiliser l'identité,
   le responsive, les ancres et les composants partagés de la V12. */

:root {
  --site-brand: #1f4a4d;
  --site-brand-deep: #163c3f;
  --site-cream: #f4efe7;
  --site-white: #fbf8f2;
  --site-mist: #dde7e4;
  --site-accent: #f36f21;
  --site-accent-readable: #f36f21;
  --site-accent-on-dark: #f36f21;
  --site-line: #b9cbc6;
  --site-text: #173f42;
  --site-muted: #536f70;
  --site-header-height: 108px;
}

html {
  scroll-padding-top: calc(var(--site-header-height) + 18px);
}

body.v12-v3 {
  overflow-x: clip;
  background: var(--site-cream);
  color: var(--site-text);
}

.v12-v3 [id] {
  /* Le décalage commun est déjà porté par scroll-padding-top sur html.
     Le dupliquer ici plaçait certaines ancres mobiles trop bas. */
  scroll-margin-top: 0;
}

.v12-v3 img,
.v12-v3 video,
.v12-v3 iframe {
  max-width: 100%;
}

.v12-v3 .skip-link {
  position: fixed;
  z-index: 9999;
  top: 8px;
  left: 8px;
  padding: 11px 15px;
  background: var(--site-cream);
  color: var(--site-brand);
  font-weight: 800;
  text-decoration: none;
  transform: translateY(-160%);
}

.v12-v3 .skip-link:focus {
  transform: translateY(0);
}

.v12-v3 :focus-visible {
  outline: 3px solid var(--site-accent) !important;
  outline-offset: 4px;
}

/* En-tête commun : logo plus lisible, aucun rectangle autour du menu. */
.v12-v3 #site-header {
  position: sticky;
  z-index: 1000;
  top: 0;
  min-height: var(--site-header-height);
  background: var(--site-brand) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(244, 239, 231, .2) !important;
  box-shadow: 0 5px 18px rgba(20, 45, 47, .15);
  backdrop-filter: none !important;
}

.v12-v3 #site-header .wrap {
  width: min(1280px, calc(100% - 40px)) !important;
}

.v12-v3 #site-header .nav {
  min-height: var(--site-header-height) !important;
  height: var(--site-header-height) !important;
  display: flex;
  align-items: center;
  gap: clamp(24px, 3vw, 48px);
}

.v12-v3 #site-header .brand,
.v12-v3 #site-header .nav > a:first-child {
  display: flex !important;
  align-items: center;
  width: clamp(300px, 25vw, 365px) !important;
  height: 98px !important;
  flex: 0 0 clamp(300px, 25vw, 365px) !important;
  background: none !important;
  mix-blend-mode: normal !important;
}

.v12-v3 #site-header .brand img,
.v12-v3 #site-header .nav > a:first-child img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 98px !important;
  object-fit: contain;
  object-position: left center;
  mix-blend-mode: normal !important;
}

.v12-v3 #site-navigation,
.v12-v3 #site-header .nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(14px, 1.55vw, 24px);
  margin-left: auto;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.v12-v3 #site-navigation a {
  padding: 10px 0;
  color: var(--site-cream) !important;
  font-size: clamp(.61rem, .66vw, .69rem) !important;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.v12-v3 #site-navigation a:hover,
.v12-v3 #site-navigation a.active,
.v12-v3 #site-navigation a[aria-current="page"] {
  color: var(--site-accent-on-dark) !important;
}

.v12-v3 .hero .tag,
.v12-v3 .hero h1 em,
.v12-v3 .testimonial .tag,
.v12-v3 .contact .tag,
.v12-v3 .gesture-film .tag,
.v12-v3 .cta .tag {
  color: var(--site-accent-on-dark) !important;
}

.v12-v3 .menu-toggle {
  display: none !important;
}

/* Rythme commun plus compact. */
.v12-v3.home-mobile .proof,
.v12-v3.home-mobile .reviews,
.v12-v3.home-mobile .method,
.v12-v3.home-mobile .about,
.v12-v3.home-mobile .salon,
.v12-v3.home-mobile .testimonial,
.v12-v3.home-mobile .faq-teaser,
.v12-v3.home-mobile .contact {
  padding-top: clamp(62px, 6.5vw, 84px) !important;
  padding-bottom: clamp(62px, 6.5vw, 84px) !important;
}

.v12-v3 .hero-montage .hero-after img,
.v12-v3 .hero-montage .hero-before img {
  display: block;
}

/* Accueil : un parcours court, orienté preuve puis prise de contact. */
.v12-v3.home-mobile .hero-cta {
  border-color: var(--site-accent-readable) !important;
  background: var(--site-accent-readable) !important;
  color: var(--site-brand-deep) !important;
}

.v12-v3.home-mobile .hero-cta:hover,
.v12-v3.home-mobile .hero-cta:focus-visible {
  border-color: var(--site-cream) !important;
  background: var(--site-cream) !important;
}

.v12-v3 .results-gallery .intro {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(340px, 1.05fr);
  gap: 24px clamp(42px, 6vw, 86px);
  max-width: none;
  align-items: start;
}

.v12-v3 .results-gallery .intro h2 {
  grid-row: 1 / span 2;
  margin-top: 0;
}

.v12-v3 .results-gallery .intro > p {
  max-width: 590px;
  padding-top: 10px;
}

.v12-v3 .proof-signals {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin: 2px 0 0;
  padding: 0;
  border-top: 1px solid var(--site-line);
  list-style: none;
}

.v12-v3 .proof-signals li {
  display: grid;
  grid-template-columns: minmax(118px, .42fr) 1fr;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--site-line);
}

.v12-v3 .proof-signals strong {
  color: var(--site-accent);
  font-size: .68rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.v12-v3 .proof-signals span {
  color: var(--site-muted);
  font-size: .84rem;
}

/* Galerie : visionneuse horizontale sur tous les écrans. */
.v12-v3 .gallery-viewer {
  position: relative;
  margin-top: 10px;
}

.v12-v3 .results-gallery .gallery-track {
  display: flex !important;
  grid-template-columns: none !important;
  grid-auto-flow: initial !important;
  gap: clamp(18px, 2.2vw, 30px) !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 3px max(1px, calc((100% - min(850px, 82vw)) / 2)) 18px !important;
}

.v12-v3 .results-gallery .gallery-track::-webkit-scrollbar {
  display: none;
}

.v12-v3 .results-gallery .gallery-card {
  flex: 0 0 min(850px, 82vw) !important;
  width: min(850px, 82vw) !important;
  content-visibility: visible !important;
  contain-intrinsic-size: none !important;
  scroll-snap-align: center;
  scroll-snap-stop: always;
}

.v12-v3 .results-gallery .gallery-card img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: min(68vh, 720px);
  margin: 0 auto;
  object-fit: contain !important;
  background: var(--site-white);
  cursor: zoom-in;
}

.v12-v3 .results-gallery .gallery-card figcaption {
  max-width: 760px;
  padding: 15px 2px 2px !important;
  color: var(--site-text);
  font-size: .86rem !important;
}

.v12-v3 .gallery-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 6px;
}

.v12-v3 .gallery-control {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid var(--site-brand);
  border-radius: 50%;
  background: transparent;
  color: var(--site-brand);
  cursor: pointer;
  font-size: 1.35rem;
}

.v12-v3 .gallery-control:hover {
  background: var(--site-brand);
  color: var(--site-cream);
}

.v12-v3 .gallery-status {
  min-width: 64px;
  color: var(--site-muted);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-align: center;
}

.v12-v3 .gallery-lightbox {
  width: min(1100px, calc(100% - 32px));
  max-width: 1100px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--site-cream);
}

.v12-v3 .gallery-lightbox::backdrop {
  background: rgba(8, 24, 25, .93);
}

.v12-v3 .lightbox-inner {
  position: relative;
  padding: 52px 14px 20px;
}

.v12-v3 .lightbox-inner img {
  display: block;
  width: 100%;
  max-height: calc(100vh - 150px);
  object-fit: contain;
}

.v12-v3 .lightbox-caption {
  max-width: 780px;
  margin: 14px auto 0;
  text-align: center;
}

.v12-v3 .lightbox-close {
  position: absolute;
  top: 0;
  right: 8px;
  width: 44px;
  height: 44px;
  border: 1px solid var(--site-cream);
  border-radius: 50%;
  background: var(--site-brand);
  color: var(--site-cream);
  cursor: pointer;
  font-size: 1.35rem;
}

/* Témoignage : une vraie vignette, puis chargement de YouTube au clic. */
.v12-v3 .testimonial-grid {
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr) !important;
  gap: clamp(36px, 5vw, 72px) !important;
}

.v12-v3 .testimonial-cta {
  display: inline-block;
  margin-top: 10px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--site-accent);
  color: var(--site-cream);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}

.v12-v3 .youtube-consent {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  width: 100%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(244, 239, 231, .38);
  background: #071617;
  color: var(--site-cream);
  cursor: pointer;
  text-align: left;
}

.v12-v3 .youtube-consent::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(7, 22, 23, .62), rgba(7, 22, 23, .05) 62%), linear-gradient(0deg, rgba(7, 22, 23, .72), transparent 55%);
}

.v12-v3 .youtube-consent img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease, filter .25s ease;
}

.v12-v3 .youtube-consent:hover img {
  filter: saturate(1.05) contrast(1.04);
  transform: scale(1.015);
}

.v12-v3 .youtube-play {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  margin: 0;
  border: 2px solid var(--site-accent);
  border-radius: 50%;
  background: rgba(22, 60, 63, .9);
  color: var(--site-accent);
  font-size: 1.8rem;
  transform: translate(-50%, -50%);
}

.v12-v3 .youtube-label {
  position: absolute;
  z-index: 2;
  right: 22px;
  bottom: 20px;
  left: 22px;
}

.v12-v3 .youtube-label strong,
.v12-v3 .youtube-label small {
  display: block;
}

.v12-v3 .youtube-label strong {
  font: 1.5rem/1.2 var(--serif);
}

.v12-v3 .youtube-label small {
  margin-top: 4px;
  color: #d7dfdb;
  font-size: .7rem;
}

.v12-v3 .youtube-player {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
}

/* Page Le geste. */
.v12-v3.technique-mobile .hero h1 {
  max-width: none !important;
  font-size: clamp(4.2rem, 9vw, 8rem) !important;
  line-height: .92 !important;
  letter-spacing: -.075em !important;
}

.v12-v3.technique-mobile .content {
  padding-bottom: 58px !important;
}

.v12-v3.technique-mobile .schema {
  margin-bottom: 0 !important;
}

.v12-v3 .gesture-film {
  grid-template-columns: minmax(300px, 1fr) minmax(260px, .62fr) !important;
  align-items: center !important;
  gap: clamp(34px, 5vw, 76px) !important;
  width: min(1000px, calc(100% - 40px)) !important;
  max-width: 1000px !important;
  margin: 0 auto clamp(64px, 6vw, 92px) !important;
  padding: clamp(28px, 4vw, 56px) !important;
}

.v12-v3 .gesture-film-copy {
  max-width: 470px;
}

.v12-v3 .gesture-film video {
  justify-self: center;
  width: min(100%, 310px) !important;
  height: auto !important;
  max-height: 550px !important;
  aspect-ratio: 406 / 720;
  border: 1px solid rgba(244, 239, 231, .22) !important;
  border-bottom: 5px solid var(--site-accent) !important;
  background: #050606;
  box-shadow: 0 20px 45px rgba(7, 22, 23, .22);
  object-fit: contain !important;
}

/* Tarifs : schéma réellement affiché et mieux équilibré. */
.v12-v3 .rates-grid {
  grid-template-columns: minmax(430px, .95fr) minmax(0, 1.05fr) !important;
  align-items: start !important;
  gap: clamp(45px, 6vw, 90px) !important;
}

.v12-v3 .zones-figure {
  display: block !important;
  min-height: 440px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--site-accent) !important;
  -webkit-mask: url('/assets/schema-zones-original.png') 50% 3% / 230% auto no-repeat !important;
  mask: url('/assets/schema-zones-original.png') 50% 3% / 230% auto no-repeat !important;
}

.v12-v3 .zones-figure img {
  display: none !important;
}

.v12-v3 .maintenance {
  padding: 70px 0 !important;
}

.v12-v3 .maintenance .wrap {
  max-width: 820px;
}

.v12-v3 .maintenance p {
  max-width: 780px !important;
  font-size: 1rem;
}

.v12-v3 .maintenance p + p {
  margin-top: 14px !important;
}

/* FAQ : interligne suffisamment ample pour les hampes et jambages. */
.v12-v3 .faq-page-hero h1 {
  max-width: 1120px !important;
  line-height: 1.01 !important;
  letter-spacing: -.065em !important;
}

/* Contact et page Merci. */
.v12-v3 .contact-main h2 {
  max-width: 760px;
  font-size: clamp(2.8rem, 5vw, 4.8rem) !important;
  line-height: 1 !important;
}

.v12-v3 .contact-layout > *,
.v12-v3 .contact-card {
  min-width: 0;
}

.v12-v3 .contact-card a,
.v12-v3 .footer-address a {
  overflow-wrap: anywhere;
}

.v12-v3 .first-opinion-form input,
.v12-v3 .first-opinion-form textarea,
.v12-v3 .first-opinion-form button {
  min-height: 48px;
}

.v12-v3 .first-opinion-form .privacy-inline {
  color: var(--site-brand) !important;
  font-weight: 800;
}

.v12-v3 .first-opinion-form .form-preview-note a {
  color: var(--site-brand) !important;
  font-weight: 800;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.v12-v3 .first-opinion-form button[type="submit"] {
  border-color: var(--site-accent-readable) !important;
  background: var(--site-accent-readable) !important;
  color: var(--site-brand-deep) !important;
}

.v12-v3 .first-opinion-form button[type="submit"]:hover,
.v12-v3 .first-opinion-form button[type="submit"]:focus-visible {
  border-color: var(--site-brand-deep) !important;
  background: var(--site-brand-deep) !important;
  color: var(--site-cream) !important;
}

.v12-v3 .whatsapp-main.button,
.v12-v3 .whatsapp-button.button {
  border-color: #25d366 !important;
  background: #25d366 !important;
  color: var(--site-brand-deep) !important;
}

.v12-v3 .whatsapp-main.button:hover,
.v12-v3 .whatsapp-main.button:focus-visible,
.v12-v3 .whatsapp-button.button:hover,
.v12-v3 .whatsapp-button.button:focus-visible {
  border-color: #128c7e !important;
  background: #128c7e !important;
  color: #fff !important;
}

.v12-v3 .thank-you-hero h1 {
  color: var(--site-cream) !important;
}

.v12-v3 .map-placeholder {
  display: grid;
  min-height: 360px;
  place-items: center;
  padding: 30px;
  border: 1px solid var(--site-line);
  background: var(--site-mist);
  text-align: center;
}

.v12-v3 .map-placeholder p {
  max-width: 520px;
}

.v12-v3 .map-placeholder > div {
  display: grid;
  justify-items: center;
  gap: 13px;
}

.v12-v3 .map-placeholder strong {
  font: 1.45rem/1.2 var(--serif);
}

.v12-v3 .map-placeholder span {
  color: var(--site-muted);
}

.v12-v3 .map-placeholder .button {
  margin-top: 8px;
}

/* CTA flottants : plus compacts et respect de la zone sûre mobile. */
.v12-v3 .chat-cta,
.v12-v3 .chat {
  z-index: 900 !important;
  right: 18px !important;
  bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  max-width: 220px;
  min-height: 48px;
  border-color: #25d366 !important;
  background: #25d366 !important;
  color: var(--site-brand-deep) !important;
}

.v12-v3 .chat-cta::before,
.v12-v3 .chat::before {
  content: "" !important;
  width: 19px !important;
  height: 19px !important;
  border: 2px solid currentColor !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: inset -4px -4px 0 -3px currentColor;
}

.v12-v3 .chat-cta:hover,
.v12-v3 .chat-cta:focus-visible,
.v12-v3 .chat:hover,
.v12-v3 .chat:focus-visible {
  border-color: #128c7e !important;
  background: #128c7e !important;
  color: #fff !important;
}

.v12-v3 .chat-cta.is-suppressed,
.v12-v3 .chat.is-suppressed {
  opacity: 0 !important;
  visibility: hidden;
  pointer-events: none;
}

/* Pied de page commun, utile et lisible. */
.v12-v3 .site-footer,
.v12-v3 .footer.site-footer {
  padding: 58px 0 24px !important;
  background: var(--site-brand) !important;
  color: var(--site-cream) !important;
}

.v12-v3 .site-footer .footer-grid {
  display: grid !important;
  grid-template-columns: 1.05fr 1fr 1fr;
  gap: clamp(34px, 5vw, 76px);
  align-items: start;
}

.v12-v3 .footer-identity strong {
  display: block;
  width: min(230px, 100%);
  aspect-ratio: 645 / 145;
  margin-bottom: 10px;
  overflow: hidden;
  background: url('/assets/jm-micro-wordmark.png') left center / contain no-repeat;
  color: transparent;
  font-size: 0;
  line-height: 0;
}

.v12-v3 .footer-identity span,
.v12-v3 .footer-address,
.v12-v3 .footer-links a {
  color: #e5e7df !important;
  font-size: .82rem;
  line-height: 1.65;
}

.v12-v3 .footer-address {
  margin: 0;
  font-style: normal;
}

.v12-v3 .footer-address a {
  display: block;
}

.v12-v3 .footer-address a,
.v12-v3 .footer-links a {
  text-decoration-color: rgba(244, 239, 231, .45);
  text-underline-offset: 4px;
}

.v12-v3 .footer-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 20px;
}

.v12-v3 .footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 42px;
  padding-top: 18px;
  border-top: 1px solid rgba(244, 239, 231, .22);
  color: #cfdad5;
  font-size: .7rem;
}

/* Page de confidentialité, volontairement sobre et lisible. */
.v12-v3 .privacy-hero {
  padding: clamp(70px, 8vw, 110px) 0;
  background: var(--site-brand-deep);
  color: var(--site-cream);
}

.v12-v3 .privacy-hero h1 {
  margin: 12px 0 16px;
  font: clamp(3.8rem, 8vw, 7rem)/.92 var(--serif);
  letter-spacing: -.07em;
}

.v12-v3 .privacy-content {
  padding: clamp(60px, 7vw, 92px) 0;
}

.v12-v3 .privacy-copy {
  max-width: 820px;
}

.v12-v3 .privacy-copy h2 {
  margin: 34px 0 8px;
  font: 1.75rem/1.15 var(--serif);
}

.v12-v3 .privacy-copy h2:first-child {
  margin-top: 0;
}

.v12-v3 .privacy-note {
  margin-top: 38px;
  padding: 20px 22px;
  border-left: 5px solid var(--site-accent);
  background: var(--site-white);
}

@media (max-width: 1080px) {
  :root { --site-header-height: 88px; }

  .v12-v3 #site-header .wrap {
    width: calc(100% - 24px) !important;
  }

  .v12-v3 #site-header .nav {
    min-height: var(--site-header-height) !important;
    height: var(--site-header-height) !important;
    gap: 0 !important;
  }

  .v12-v3 #site-header .brand,
  .v12-v3 #site-header .nav > a:first-child {
    width: calc(100% - 78px) !important;
    height: 82px !important;
    flex: 0 1 auto !important;
  }

  .v12-v3 #site-header .brand img,
  .v12-v3 #site-header .nav > a:first-child img {
    width: min(100%, 360px) !important;
    max-height: 82px !important;
  }

  .v12-v3 .menu-toggle {
    display: flex !important;
    width: 78px !important;
    height: 78px !important;
    flex: 0 0 78px !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 !important;
    border: 0 !important;
    background: var(--site-accent) !important;
    color: var(--site-brand-deep) !important;
    cursor: pointer;
    font-size: .56rem !important;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
  }

  .v12-v3 .menu-toggle span {
    display: block;
    position: relative;
    width: 25px !important;
    height: 2px !important;
    margin: 0 !important;
    border: 0 !important;
    background: var(--site-brand-deep) !important;
  }

  .v12-v3 .menu-toggle span::before,
  .v12-v3 .menu-toggle span::after {
    content: "";
    position: absolute;
    left: 0;
    height: 2px;
    background: var(--site-brand-deep) !important;
  }

  .v12-v3 .menu-toggle span::before { top: -7px; width: 25px; }
  .v12-v3 .menu-toggle span::after { top: 7px !important; width: 17px !important; }

  .v12-v3 #site-navigation,
  .v12-v3 #site-header .nav-links {
    display: none;
    position: absolute;
    z-index: 1001;
    top: calc(var(--site-header-height) - 1px);
    right: -12px;
    left: -12px;
    margin: 0;
    padding: 22px 26px 26px !important;
    background: var(--site-cream) !important;
    border-bottom: 1px solid var(--site-line) !important;
    box-shadow: 0 15px 25px rgba(14, 48, 50, .18) !important;
  }

  .v12-v3 #site-header.menu-open #site-navigation,
  .v12-v3 #site-header.menu-open .nav-links {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 3px 24px !important;
  }

  .v12-v3 #site-navigation a {
    min-height: 44px;
    padding: 13px 0;
    color: var(--site-brand) !important;
    font-size: .7rem !important;
  }

  .v12-v3 #site-navigation a:hover,
  .v12-v3 #site-navigation a.active,
  .v12-v3 #site-navigation a[aria-current="page"] {
    color: var(--site-brand-deep) !important;
    text-decoration: underline;
    text-decoration-color: var(--site-accent);
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
  }

  .v12-v3 .rates-grid {
    grid-template-columns: minmax(330px, .85fr) minmax(0, 1.15fr) !important;
    gap: 34px !important;
  }

  .v12-v3 .zones-figure {
    min-height: 380px !important;
    -webkit-mask-size: 220% auto !important;
    mask-size: 220% auto !important;
  }

  .v12-v3 .site-footer .footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .v12-v3 .footer-links {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, auto);
  }
}

@media (max-width: 760px) {
  .v12-v3 .wrap {
    width: min(100% - 28px, 1100px) !important;
  }

  .v12-v3 .results-gallery .intro,
  .v12-v3 .testimonial-grid {
    grid-template-columns: 1fr !important;
  }

  .v12-v3 .results-gallery .intro h2 {
    grid-row: auto;
  }

  .v12-v3 .results-gallery .intro > p {
    padding-top: 0;
  }

  .v12-v3 .proof-signals li {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .v12-v3 .testimonial-grid {
    gap: 28px !important;
  }

  .v12-v3 .youtube-play {
    width: 62px;
    height: 62px;
    font-size: 1.5rem;
  }

  .v12-v3 .youtube-label {
    right: 16px;
    bottom: 14px;
    left: 16px;
  }

  .v12-v3 .youtube-label strong {
    font-size: 1.22rem;
  }

  .v12-v3.home-mobile .proof,
  .v12-v3.home-mobile .reviews,
  .v12-v3.home-mobile .method,
  .v12-v3.home-mobile .about,
  .v12-v3.home-mobile .salon,
  .v12-v3.home-mobile .testimonial,
  .v12-v3.home-mobile .faq-teaser,
  .v12-v3.home-mobile .contact {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .v12-v3 .results-gallery .gallery-track {
    gap: 16px !important;
    padding: 2px 0 14px !important;
    scroll-padding-inline: 0;
  }

  .v12-v3 .results-gallery .gallery-card {
    flex-basis: 100% !important;
    width: 100% !important;
    scroll-snap-align: start;
  }

  .v12-v3 .gallery-controls {
    justify-content: space-between;
  }

  .v12-v3 .gesture-film {
    grid-template-columns: 1fr !important;
  }

  .v12-v3 .gesture-film {
    width: min(100% - 28px, 520px) !important;
    gap: 24px !important;
    margin: 0 auto 44px !important;
    padding: 24px 20px 20px !important;
  }

  .v12-v3 .gesture-film video {
    width: min(100%, 275px) !important;
    max-height: 490px !important;
  }

  .v12-v3.technique-mobile .hero h1 {
    font-size: clamp(3.7rem, 20vw, 5.2rem) !important;
    line-height: .92 !important;
  }

  .v12-v3 .rates-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 26px !important;
  }

  .v12-v3 .zones-figure {
    width: 100% !important;
    min-height: 270px !important;
    padding: 0 !important;
    -webkit-mask-position: 50% 2% !important;
    mask-position: 50% 2% !important;
    -webkit-mask-size: 215% auto !important;
    mask-size: 215% auto !important;
  }

  .v12-v3 .rates h2 {
    max-width: 100%;
    font-size: clamp(2.75rem, 14vw, 4rem) !important;
    line-height: .94 !important;
  }

  .v12-v3 .faq-page-hero h1 {
    font-size: clamp(3.35rem, 15vw, 4.8rem) !important;
    line-height: 1.03 !important;
  }

  .v12-v3 .contact-main h2 {
    font-size: clamp(2.55rem, 13vw, 3.6rem) !important;
    line-height: 1 !important;
  }

  .v12-v3 .contact-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .v12-v3 .privacy-hero h1 {
    font-size: clamp(2.8rem, 14vw, 3.2rem);
  }

  .v12-v3 .map-placeholder {
    min-height: 260px;
  }

  .v12-v3 .chat-cta,
  .v12-v3 .chat {
    right: 10px !important;
    bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    max-width: 175px;
    min-height: 48px;
    padding: 11px 14px !important;
    font-size: .61rem !important;
  }

  .v12-v3 .site-footer,
  .v12-v3 .footer.site-footer {
    padding: 44px 0 20px !important;
  }

  .v12-v3 .site-footer .footer-grid {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .v12-v3 .footer-links {
    grid-column: auto;
    grid-template-columns: 1fr 1fr;
  }

  .v12-v3 .footer-bottom {
    display: grid;
    gap: 5px;
    margin-top: 32px;
  }
}

@media (max-width: 420px) {
  :root { --site-header-height: 82px; }

  .v12-v3 #site-header .brand,
  .v12-v3 #site-header .nav > a:first-child {
    width: calc(100% - 70px) !important;
    height: 76px !important;
  }

  .v12-v3 #site-header .brand img,
  .v12-v3 #site-header .nav > a:first-child img {
    max-height: 74px !important;
  }

  .v12-v3 .menu-toggle {
    width: 70px !important;
    height: 72px !important;
    flex-basis: 70px !important;
  }

  .v12-v3 #site-header.menu-open #site-navigation,
  .v12-v3 #site-header.menu-open .nav-links {
    grid-template-columns: 1fr;
  }

  .v12-v3 .results-gallery .gallery-card {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .v12-v3 .price-row {
    grid-template-columns: 36px minmax(0, 1fr) !important;
  }

  .v12-v3 .price-amount {
    grid-column: 2 !important;
  }

  .v12-v3 .zones-figure {
    min-height: 240px !important;
    -webkit-mask-size: 230% auto !important;
    mask-size: 230% auto !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .v12-v3 *,
  .v12-v3 *::before,
  .v12-v3 *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* assets/styles/home.css */
/* JM.Micro — accueil V12 V4
   Mise en page propre à la landing allégée. Les composants communs et les
   pages secondaires restent gérés par site-v12-v3.css. */

.v12-v4 .results-compact {
  padding: clamp(64px, 7vw, 92px) 0 72px;
}

.v12-v4 .results-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  gap: 18px clamp(42px, 6vw, 86px);
  align-items: start;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--site-text) !important;
}

.v12-v4 .results-intro > .tag {
  grid-column: 1 / -1;
}

.v12-v4 .results-lead h2 {
  max-width: 760px;
  margin: 0;
  font: clamp(2.8rem, 5.4vw, 5.5rem)/.93 var(--serif);
  letter-spacing: -.06em;
  color: var(--site-text) !important;
}

.v12-v4 .results-lead p {
  max-width: 660px;
  margin: 22px 0 0;
  font-size: 1.02rem;
  color: var(--site-text) !important;
}

.v12-v4 .proof-signals {
  align-self: end;
  margin-top: 0;
}

.v12-v4 .gallery-viewer {
  margin-top: 34px;
}

.v12-v4 .results-gallery .gallery-track {
  gap: clamp(16px, 2vw, 26px) !important;
  padding: 3px max(1px, calc((100% - min(760px, 76vw)) / 2)) 14px !important;
}

.v12-v4 .results-gallery .gallery-card {
  display: flex;
  flex: 0 0 min(760px, 76vw) !important;
  flex-direction: column;
  align-items: center;
  width: min(760px, 76vw) !important;
}

.v12-v4 .results-gallery .gallery-card img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: min(66vh, 680px) !important;
  background: transparent !important;
}

.v12-v4 .results-gallery .gallery-card figcaption {
  width: min(100%, 680px);
}

.v12-v4 .gallery-actions {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  margin-top: 16px;
  padding-top: 18px;
  border-top: 1px solid var(--site-line);
}

.v12-v4 .gallery-actions p {
  max-width: 560px;
  margin: 0;
}

.v12-v4 .trust-section {
  padding: clamp(72px, 8vw, 104px) 0;
  background: var(--site-brand-deep);
}

.v12-v4 .trust-grid {
  display: grid;
  grid-template-columns: minmax(280px, .76fr) minmax(0, 1.24fr);
  gap: clamp(38px, 6vw, 82px);
  align-items: center;
}

.v12-v4 .trust-copy h2 {
  max-width: 590px;
  margin: 13px 0 20px;
  font: clamp(2.65rem, 4.9vw, 4.85rem)/.94 var(--serif);
  letter-spacing: -.06em;
}

.v12-v4 .trust-copy > p {
  max-width: 520px;
}

.v12-v4 .trust-review {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 30px 0 14px;
  padding: 20px 0;
  border-block: 1px solid rgba(244, 239, 231, .3);
}

.v12-v4 .trust-review strong {
  color: var(--site-accent-on-dark);
  font: clamp(2.5rem, 4.5vw, 4.2rem)/.9 var(--serif);
  letter-spacing: -.04em;
}

.v12-v4 .trust-review span {
  color: #d9e1de;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.v12-v4 .trust-review-copy {
  margin-bottom: 14px;
  font-size: .88rem;
}

.v12-v4 .trust-video {
  min-width: 0;
}

.v12-v4 .trust-video .youtube-player {
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(244, 239, 231, .45);
  background: #071617;
}

.v12-v4 .trust-video p {
  max-width: none;
  margin: 10px 0 0;
  color: #c9d4d0;
  font-size: .73rem;
}

.v12-v4 .method {
  padding: clamp(68px, 7vw, 86px) 0;
}

.v12-v4 .method-grid {
  gap: clamp(42px, 6vw, 74px);
}

.v12-v4 .step {
  padding-block: 19px;
}

.v12-v4 .faq-essentials {
  padding: clamp(70px, 7vw, 92px) 0;
  background: var(--site-cream);
}

.v12-v4 .faq-essentials-grid {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
  gap: clamp(42px, 7vw, 92px);
  align-items: start;
}

.v12-v4 .faq-essentials h2 {
  max-width: 600px;
  margin: 13px 0 18px;
  font: clamp(2.55rem, 4.8vw, 4.7rem)/.94 var(--serif);
  letter-spacing: -.06em;
}

.v12-v4 .faq-essentials-heading > p {
  max-width: 440px;
  margin: 0 0 20px;
}

.v12-v4 .faq-essentials-list {
  border-top: 1px solid var(--site-line);
}

.v12-v4 .faq-essentials-list details {
  border-bottom: 1px solid var(--site-line);
}

.v12-v4 .faq-essentials-list summary {
  position: relative;
  padding: 22px 42px 22px 0;
  color: var(--site-text);
  cursor: pointer;
  font: clamp(1.2rem, 2vw, 1.55rem)/1.2 var(--serif);
  list-style: none;
}

.v12-v4 .faq-essentials-list summary::-webkit-details-marker {
  display: none;
}

.v12-v4 .faq-essentials-list summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 4px;
  color: var(--site-accent);
  font: 1.65rem/1 Arial, sans-serif;
  transform: translateY(-50%);
}

.v12-v4 .faq-essentials-list details[open] summary::after {
  content: "−";
}

.v12-v4 .faq-essentials-list p {
  max-width: 660px;
  margin: -4px 0 22px;
  color: var(--site-muted);
}

.v12-v4 .about-compact {
  padding: clamp(66px, 7vw, 88px) 0;
}

.v12-v4 .about-compact .about-grid {
  grid-template-columns: minmax(260px, .62fr) minmax(0, 1.38fr);
  gap: clamp(40px, 6vw, 76px);
}

.v12-v4 .about-compact .about-photo {
  width: min(100%, 430px);
  aspect-ratio: 1 / 1;
  justify-self: center;
}

.v12-v4 .about-compact h2 {
  max-width: 760px;
}

.v12-v4 .about-compact p {
  max-width: 720px;
  font-size: 1.02rem;
}

.v12-v4 .about-compact .text-link {
  display: inline-block;
  margin-top: 10px;
}

.v12-v4 .final-contact {
  padding: clamp(74px, 8vw, 104px) 0;
}

.v12-v4 .salon-inline {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(330px, .92fr);
  gap: clamp(38px, 6vw, 78px);
  align-items: center;
  margin-bottom: clamp(70px, 8vw, 105px);
  padding-bottom: clamp(70px, 8vw, 105px);
  border-bottom: 1px solid rgba(244, 239, 231, .3);
}

.v12-v4 .salon-inline .salon-media {
  margin: 0;
}

.v12-v4 .salon-inline .salon-media img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.v12-v4 .salon-inline .salon-media figcaption {
  margin-top: 8px;
  color: #c9d4d0;
  font-size: .72rem;
}

.v12-v4 .salon-inline h2 {
  max-width: 680px;
  margin: 13px 0 18px;
  font: clamp(2.5rem, 4.5vw, 4.5rem)/.94 var(--serif);
  letter-spacing: -.06em;
}

.v12-v4 .salon-inline p,
.v12-v4 .salon-inline address {
  max-width: 590px;
}

.v12-v4 .salon-inline address {
  margin: 22px 0;
  font-style: normal;
}

.v12-v4 .salon-inline .salon-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.v12-v4 .salon-inline .salon-facts span {
  padding: 8px 11px;
  border: 1px solid rgba(244, 239, 231, .34);
  font-size: .72rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.v12-v4 .salon-inline .text-link {
  color: var(--site-cream);
}

.v12-v4 .final-contact .contact-heading {
  max-width: 780px;
  margin-bottom: 38px;
}

@media (max-width: 900px) {
  .v12-v4 .results-intro,
  .v12-v4 .trust-grid,
  .v12-v4 .faq-essentials-grid,
  .v12-v4 .about-compact .about-grid,
  .v12-v4 .salon-inline {
    grid-template-columns: 1fr;
  }

  .v12-v4 .proof-signals {
    margin-top: 8px;
  }

  .v12-v4 .trust-grid,
  .v12-v4 .faq-essentials-grid,
  .v12-v4 .about-compact .about-grid,
  .v12-v4 .salon-inline {
    gap: 34px;
  }

  .v12-v4 .about-compact .about-photo {
    width: min(100%, 520px);
  }
}

@media (max-width: 760px) {
  .v12-v4 .results-compact,
  .v12-v4 .trust-section,
  .v12-v4 .method,
  .v12-v4 .faq-essentials,
  .v12-v4 .about-compact,
  .v12-v4 .final-contact {
    padding-block: 62px;
  }

  .v12-v4 .results-lead h2,
  .v12-v4 .trust-copy h2,
  .v12-v4 .faq-essentials h2,
  .v12-v4 .salon-inline h2 {
    font-size: clamp(2.55rem, 12vw, 4rem);
  }

  .v12-v4 .results-gallery .gallery-track {
    padding-inline: 1px !important;
  }

  .v12-v4 .results-gallery .gallery-card {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .v12-v4 .results-gallery .gallery-card img {
    max-height: none !important;
  }

  .v12-v4 .gallery-actions {
    display: block;
  }

  .v12-v4 .gallery-actions .instagram-link {
    display: inline-block;
    margin-top: 14px;
  }

  .v12-v4 .trust-review {
    margin-top: 24px;
  }

  .v12-v4 .faq-essentials-list summary {
    padding-block: 19px;
  }

  .v12-v4 .salon-inline {
    margin-bottom: 60px;
    padding-bottom: 60px;
  }
}

@media (max-width: 380px) {
  .v12-v4 .trust-review {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* assets/styles/layout.css */
/* Source preserved: assets/site-v12-v5.css */
:root{--jm-orange:#f36f21;--accent:var(--jm-orange);--orange:var(--jm-orange)}
.v12-v3 .nav-links{gap:clamp(10px,1.35vw,22px)}.v12-v3 .nav-links a{font-size:clamp(.58rem,.62vw,.66rem)}
.v12-v3 .site-footer,.v12-v3 .footer.site-footer{background:#0b2524}
.v12-v4 .method .text-link{display:inline-flex;margin-top:24px}
.v12-v4 .salon-preview{padding:72px 0;background:var(--mist,#e4ece8)}
.v12-v4 .salon-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:54px;align-items:end}
.v12-v4 .salon-preview h2{margin:10px 0 16px;font:clamp(2.35rem,4.5vw,4.8rem)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.055em}
.v12-v4 .salon-preview p{max-width:610px;margin:0}.v12-v4 .salon-preview .text-link{justify-self:end}
.v12-v4 #contact{scroll-margin-top:96px;padding-top:82px}.v12-v4 .final-contact::before{display:none}.v12-v4 .contact-signature{display:none}.v12-v4 .final-contact>.wrap{padding-top:0}
@media(min-width:761px){.v12-v4 .results-gallery .gallery-track{gap:12px}.v12-v4 .results-gallery .gallery-card{flex-basis:min(430px,43vw)}}
.v12-v5 .maintenance{text-align:left;padding:64px 0}.v12-v5 .maintenance .wrap{max-width:820px}.v12-v5 .maintenance h2{margin:8px 0 20px;font:clamp(2.7rem,5vw,5rem)/.94 Georgia,"Times New Roman",serif;letter-spacing:-.06em}.v12-v5 .maintenance p{margin:10px 0 0}
.v12-v5 .gesture-film{padding-block:64px;min-height:0}.v12-v5 .gesture-film video{width:250px;max-width:100%;justify-self:center}
.v12-v5 .quote{background:var(--jm-orange);color:#f2eee6;padding:58px 0}.v12-v5 .quote p{color:#f2eee6}.v12-v5 .quote+.cta{background:#123634;color:#f2eee6;padding:72px 0}.v12-v5 .quote+.cta .tag{color:var(--jm-orange)}
.v12-v5 .hero h1 em{color:var(--jm-orange)!important}.v12-v5 .kit-list{display:grid;gap:0;margin-top:26px;counter-reset:kit}.v12-v5 .kit-list span{counter-increment:kit;padding:14px 0;border:0;border-bottom:1px solid rgba(242,238,230,.28);font-size:.78rem}.v12-v5 .kit-list span::before{content:"0" counter(kit) " · ";color:var(--jm-orange);font-weight:800}
.v12-v5.histoire-mobile .cta{padding-bottom:70px}
.salon-page .salon-hero{padding:92px 0 76px;background:#123634;color:#f2eee6}.salon-page .salon-hero h1{max-width:820px;margin:14px 0 18px;font:clamp(3.4rem,8vw,7rem)/.88 Georgia,"Times New Roman",serif;letter-spacing:-.07em}.salon-page .salon-hero p{max-width:650px;color:#d9dfda;font-size:1.08rem}
.salon-page .salon-content{padding:92px 0}.salon-page .salon-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}.salon-page .salon-photo{margin:0}.salon-page .salon-photo img{display:block;width:100%;height:auto}.salon-page .salon-copy h2{margin:10px 0 18px;font:clamp(2.5rem,5vw,5rem)/.94 Georgia,"Times New Roman",serif;letter-spacing:-.06em}.salon-page .salon-copy address{margin:24px 0;font-style:normal}.salon-page .salon-facts{display:grid;gap:8px;margin:24px 0;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.salon-page .salon-facts span{padding:10px 0;border-bottom:1px solid #d7d1c6}.salon-page .salon-actions{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;margin-top:28px}
@media(max-width:760px){.v12-v4 .salon-preview{padding:58px 0}.v12-v4 .salon-preview-grid,.salon-page .salon-grid{grid-template-columns:1fr;gap:30px}.v12-v4 .salon-preview .text-link{justify-self:start}.v12-v4 #contact{scroll-margin-top:82px;padding-top:64px}.v12-v4 .method .steps .step:first-child{border-top:0!important;padding-top:0!important}.v12-v5 .rates-grid{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:18px;align-items:start}.v12-v5 .rates-grid>div{display:contents}.v12-v5 .rates-grid>div>.tag,.v12-v5 .rates-grid>div>h2{grid-column:1}.v12-v5 .rates-grid>.zones-figure{grid-column:2;grid-row:1/span 2;min-height:190px}.v12-v5 .rates-grid>div>.rates-intro,.v12-v5 .rates-grid>div>.price-row,.v12-v5 .rates-grid>div>.finish{grid-column:1/-1}.v12-v5 .rates-grid>div>.rates-intro{margin-top:14px}.v12-v5 .gesture-film{padding-block:52px}.v12-v5 .gesture-film video{width:225px}.v12-v5 .quote{padding:48px 0}.v12-v5 .quote+.cta{padding:58px 0}.v12-v5.histoire-mobile .cta{padding-bottom:54px}.salon-page .salon-hero{padding:62px 0 54px}.salon-page .salon-content{padding:64px 0}}


/* Source preserved: assets/site-v13.css */
:root {
  --v13-petrol: #075467;
  --v13-orange: #f36f21;
  --v13-cream: #f2eee6;
  --v13-mist: #e8efec;
}

body.v13 .nav-links {
  gap: clamp(15px, 1.7vw, 24px);
}

body.v13 .nav-links a {
  white-space: nowrap;
}

.semantic-bridge {
  padding: 44px 0;
  background: var(--v13-mist);
}

.semantic-bridge-grid {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 64px;
  align-items: start;
}

.semantic-bridge h2 {
  margin: 12px 0 18px;
  max-width: 620px;
  color: var(--v13-petrol);
  font: clamp(2.6rem, 5vw, 4.8rem)/.94 var(--serif);
  letter-spacing: -.06em;
}

.semantic-bridge-copy {
  max-width: 660px;
  font-size: 1.04rem;
}

.semantic-bridge-copy p:first-child {
  margin-top: 0;
}

.semantic-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 20px;
}

.semantic-point {
  padding-top: 11px;
  border-top: 2px solid var(--v13-orange);
}

.semantic-point strong {
  display: block;
  margin-bottom: 5px;
  color: var(--v13-petrol);
  font: 1.2rem/1.05 var(--serif);
}

.semantic-point span {
  color: #555f5d;
  font-size: .82rem;
}

.home-results-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.home-results-link p {
  max-width: 620px;
  margin: 0;
}

.about-salon-link {
  display: inline-block;
  margin-top: 16px;
}

body.v13 .about-compact,
body.v13 .salon-preview {
  padding-top: 68px;
  padding-bottom: 68px;
}

.results-page-hero {
  padding: 82px 0 62px;
  background: var(--brand);
  color: var(--cream);
}

.results-page-hero h1 {
  max-width: 930px;
  margin: 14px 0 20px;
  font: clamp(3.6rem, 7vw, 7rem)/.88 var(--serif);
  letter-spacing: -.07em;
}

.results-page-hero p {
  max-width: 720px;
  margin: 0;
  color: #ddd6d0;
  font-size: 1.08rem;
}

.results-page-intro {
  padding: 74px 0 40px;
}

.results-page-intro-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 56px;
}

.results-page-intro h2 {
  margin: 10px 0 0;
  color: var(--v13-petrol);
  font: clamp(2.7rem, 5vw, 4.8rem)/.94 var(--serif);
  letter-spacing: -.055em;
}

.results-page-intro p {
  margin-top: 0;
  font-size: 1.04rem;
}

.results-grid-section {
  padding: 36px 0 90px;
}

.results-grid-v13 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px 30px;
}

.result-case-v13 {
  margin: 0;
}

.result-case-v13 img {
  display: block;
  width: 100%;
  height: auto;
  background: #0b0c0c;
}

.result-case-v13 figcaption {
  padding: 18px 0 0;
}

.result-case-v13 figcaption strong {
  display: block;
  margin-bottom: 5px;
  color: var(--v13-petrol);
  font: 1.5rem/1.08 var(--serif);
}

.result-state {
  display: inline-block;
  margin-bottom: 10px;
  color: var(--v13-orange);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.results-honesty {
  padding: 70px 0;
  background: var(--v13-mist);
}

.results-honesty-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 55px;
}

.results-honesty h2 {
  margin: 10px 0;
  color: var(--v13-petrol);
  font: clamp(2.5rem, 4.5vw, 4.4rem)/.94 var(--serif);
  letter-spacing: -.055em;
}

.results-cta {
  padding: 76px 0;
  text-align: center;
  background: var(--brand);
  color: var(--cream);
}

.results-cta h2 {
  max-width: 760px;
  margin: 10px auto 18px;
  font: clamp(2.6rem, 5vw, 4.8rem)/.94 var(--serif);
  letter-spacing: -.055em;
}

.results-cta p {
  max-width: 620px;
  margin: 0 auto 24px;
  color: #ddd6d0;
}

.answer-block {
  margin: 52px 0 0;
  padding: 30px;
  background: var(--v13-mist);
  border-left: 4px solid var(--v13-orange);
}

.answer-block h2 {
  margin: 8px 0 12px;
  color: var(--v13-petrol);
  font: clamp(2rem, 4vw, 3.2rem)/1 var(--serif);
  letter-spacing: -.04em;
}

.answer-block p:last-child {
  margin-bottom: 0;
}

@media (max-width: 760px) {
  .semantic-bridge {
    padding: 40px 0;
  }

  .semantic-bridge-grid,
  .results-page-intro-grid,
  .results-honesty-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .semantic-points {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .home-results-link {
    display: block;
  }

  .home-results-link .text-link {
    display: inline-block;
    margin-top: 16px;
  }

  body.v13 .about-compact,
  body.v13 .salon-preview {
    padding-top: 54px;
    padding-bottom: 54px;
  }

  .results-page-hero {
    padding: 54px 0 44px;
  }

  .results-page-hero h1 {
    font-size: 3.55rem;
  }

  .results-page-intro {
    padding: 54px 0 28px;
  }

  .results-grid-section {
    padding: 24px 0 62px;
  }

  .results-grid-v13 {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .results-honesty,
  .results-cta {
    padding: 56px 0;
  }

  .answer-block {
    margin-top: 36px;
    padding: 23px 20px;
  }
}


/* Source preserved: assets/v13-mix-02.css */
/* JM.Micro — V13 Mix 02
   Corrections limitées : rythme, navigation, galerie et page Salon.
   Le hero et son montage ne sont volontairement pas redéfinis ici. */

:root {
  --mix02-green: #123634;
  --mix02-green-deep: #0b2524;
  --mix02-cream: #f2eee6;
  --mix02-orange: #f36f21;
  --mix02-light-line: rgba(242, 238, 230, .2);
}

/* Contact — retour assumé à la composition V12 validée. */
body.standalone-v6 .contact-hero{padding:58px 0 44px!important;background:var(--brand)!important;color:var(--cream)!important}
body.standalone-v6 .contact-hero h1{max-width:860px;margin:12px 0 18px;font:clamp(3.5rem,7vw,7rem)/.88 var(--serif)!important;letter-spacing:-.065em;color:var(--cream)!important}
body.standalone-v6 .contact-hero p{max-width:650px;color:#ddd6d0!important;font-size:1.05rem}
body.standalone-v6 .contact-main{padding:58px 0!important;background:var(--cream)!important;color:var(--ink)!important}
body.standalone-v6 .contact-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:58px;align-items:start}
body.standalone-v6 .contact-question{font:clamp(2.6rem,5vw,4.8rem)/.94 var(--serif)!important;letter-spacing:-.055em;margin:12px 0 18px}
body.standalone-v6 .contact-card{padding:34px;background:var(--white)!important;border-top:6px solid var(--accent);box-shadow:none!important;color:var(--ink)!important}
body.standalone-v6 .contact-card h2{font:clamp(2.3rem,4.5vw,4.2rem)/.94 var(--serif)!important;letter-spacing:-.05em}
body.standalone-v6 .contact-card p{color:#5c5753!important}
body.standalone-v6 .location{padding:58px 0!important;background:var(--white)!important;color:var(--ink)!important}
@media(max-width:760px){
  body.standalone-v6 .contact-hero{padding:42px 0 34px!important}
  body.standalone-v6 .contact-hero h1{font-size:3.5rem!important}
  body.standalone-v6 .contact-main,body.standalone-v6 .location{padding:42px 0!important}
  body.standalone-v6 .contact-layout{grid-template-columns:1fr;gap:28px}
  body.standalone-v6 .contact-card{padding:25px}
}

/* Préfinale 06 — corrections validées le 27 août. */
.chat,.chat-cta{
  opacity:1;
  transform:translateY(0);
  transition:opacity .35s ease,transform .35s ease;
}
.chat.is-pending,.chat-cta.is-pending{
  opacity:0!important;
  transform:translateY(10px);
  pointer-events:none!important;
}
.cta .button,.results-cta .button,.orange-finale .button,.hygiene-finale .button{
  background:var(--brand,#1f4a4d)!important;
  color:#f2eee6!important;
  border:0!important;
  box-shadow:none!important;
}
.cta .button:hover,.results-cta .button:hover,.orange-finale .button:hover,.hygiene-finale .button:hover{
  background:#123634!important;
  color:#fff!important;
}
.home-mobile .hero-keyword span,.home-mobile .hero-keyword em{display:block}
.home-mobile .hero-foot small{display:block;text-align:center}
.home-mobile .results-lead h2{max-width:850px}
.home-mobile .semantic-gesture-link{display:inline-block;margin-top:22px}
.home-mobile .about h2{max-width:760px}
.results-honesty{padding-bottom:0!important;background:var(--cream,#f2eee6)}
.honesty-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(42px,6vw,88px);align-items:start}
.honesty-heading h2{font:clamp(3rem,5vw,5rem)/.92 var(--serif);letter-spacing:-.055em;margin:12px 0 0}
.honesty-content .healing-grid{margin-top:0}
.healing-grid article span{display:block;color:var(--jm-orange);font:1.35rem var(--serif);margin-bottom:8px}
.healing-grid article strong{font:1.65rem var(--serif)}
.honesty-statement{margin-top:48px;padding:clamp(42px,6vw,72px) max(20px,calc((100vw - 1040px)/2));background:var(--jm-orange);color:var(--brand);font:clamp(2.6rem,5vw,5.2rem)/.92 var(--serif);letter-spacing:-.055em;text-align:center}
.hygiene-mobile .framework{padding-bottom:42px!important}
.hygiene-mobile .note{background:transparent!important;padding:20px 0 0!important;border-top:1px solid var(--line)}
.hygiene-mobile .hygiene-finale{margin-top:0}

@media(min-width:761px){
  #site-header .nav-links{gap:clamp(12px,1.25vw,22px)}
  #site-header .nav-links a{font-size:clamp(.56rem,.61vw,.66rem)}
}

@media(max-width:760px){
  .home-mobile .hero-v11 .hero-keyword{font-size:clamp(2.55rem,10.8vw,3.2rem)!important;line-height:.88!important;letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:normal!important}
  .home-mobile .hero-v11 .hero-intro p{margin-bottom:12px!important}
  .home-mobile .hero-v11 .hero-foot{gap:12px!important;padding-top:12px!important}
  .home-mobile .hero-v11 .expert-line{margin-bottom:2px!important}
  .home-mobile .hero-foot small{width:100%;margin:0 auto!important;text-align:center!important}
  .home-mobile .results-lead h2{font-size:clamp(2.8rem,12vw,3.7rem)!important;line-height:.9!important;max-width:none!important}
  .home-mobile .home-results-link{padding-bottom:4px!important}
  .home-mobile .home-results-link+.semantic-bridge{margin-top:0!important}
  .home-mobile .semantic-bridge{padding-top:28px!important}
  .home-mobile .semantic-gesture-link{margin-top:18px}
  .home-mobile .trust-review-copy{display:none!important}
  .home-mobile .trust-review{margin-bottom:0!important}
  .home-mobile .testimonial-cta{margin-top:0!important}
  .home-mobile .about h2{font-size:clamp(2.75rem,12vw,3.7rem)!important;line-height:.9!important}
  .home-mobile .final-contact h2{font-size:clamp(2.8rem,12vw,3.8rem)!important;line-height:.9!important}
  .technique-mobile .hero h1{font-size:clamp(3rem,13vw,4.1rem)!important;line-height:.88!important}
  .technique-mobile .hero h1 small{font-family:var(--serif)!important;font-size:.52em!important;line-height:1!important;letter-spacing:-.035em!important;text-transform:none!important;margin-top:10px!important}
  .honesty-layout{grid-template-columns:1fr;gap:24px}
  .honesty-heading h2{font-size:clamp(2.8rem,12vw,3.8rem)}
  .honesty-content .healing-grid{grid-template-columns:1fr;gap:20px}
  .honesty-statement{margin-top:32px;padding:42px 24px;font-size:clamp(2.55rem,11vw,3.5rem)}
  .hygiene-mobile .framework{padding-bottom:28px!important}
  .hygiene-mobile .hygiene-finale{padding:48px 20px!important}
  .hygiene-mobile .hygiene-finale h2{font-size:clamp(2.7rem,12vw,3.7rem)!important;line-height:.9!important}
}

/* Préfinale 05 — correctifs mobiles et SEO visuel, sans bourrage de mots-clés. */
@media(max-width:760px){
  .home-mobile .hero-v11 .hero-keyword{
    max-width:100%!important;
    font-size:clamp(2.15rem,9.7vw,2.9rem)!important;
    line-height:.92!important;
    letter-spacing:-.065em!important;
    overflow-wrap:normal;
    word-break:normal;
  }
  .home-mobile .hero-v11 .hero-keyword em{margin-top:3px}

  body.standalone-v6 .rates-grid{display:flex!important;flex-direction:column!important;gap:0!important}
  body.standalone-v6 .rates-grid>div{display:contents}
  body.standalone-v6 .rates-grid .tag{order:1}
  body.standalone-v6 .rates-grid h2{order:2;margin-bottom:8px!important}
  body.standalone-v6 .rates-grid .rates-intro{order:3;margin-bottom:14px!important}
  body.standalone-v6 .zones-figure{
    order:4;
    width:calc(100% + 28px)!important;
    margin:4px -14px 22px!important;
    min-height:260px!important;
    background:var(--accent)!important;
    -webkit-mask:url('/assets/schema-zones-original.png') center 8%/132% auto no-repeat!important;
    mask:url('/assets/schema-zones-original.png') center 8%/132% auto no-repeat!important;
  }
  body.standalone-v6 .zones-figure img{display:none!important}
  body.standalone-v6 .price-row{order:5;width:100%}
  body.standalone-v6 .finish{order:6;width:100%}
}

/* V13 Remix 03 — passe de validation de Julien, compacte et mobile-first. */
:root {
  --jm-green: var(--brand, #1d5151);
  --jm-ink: var(--ink, #123f42);
  --jm-paper: var(--paper, #f4efe7);
  --jm-mist: var(--mist, #e7efed);
  --jm-orange: var(--accent, #e66d25);
}

.v13 main section:not(.hero) { padding-block: clamp(38px, 4.5vw, 64px); }
.v13 main section + section { scroll-margin-top: 100px; }
.v13 main h2 { margin-block: .25em .35em; }
.v13 main p { margin-block: .45em; }
.method-redundant { display: none !important; }

/* Accueil : rythme resserré, montage strictement intact. */
.home-mobile .results-gallery { padding-bottom: 36px !important; }
.home-mobile .gallery-controls { margin-block: 12px !important; }
.home-mobile .gallery-note-row { margin-top: 14px !important; padding-top: 16px !important; }
.home-mobile .semantic-bridge { padding-block: clamp(42px, 5vw, 66px) !important; }
.home-mobile .semantic-bridge-grid { gap: clamp(28px, 4vw, 56px) !important; }
.home-mobile .semantic-points { margin-top: 22px !important; }

/* Résultats : introduction unique, galerie rapprochée, lecture frais/cicatrisé claire. */
.results-hero-merged { padding-block: clamp(46px, 6vw, 78px) !important; }
.results-hero-merged .results-page-intro-grid { align-items: end; gap: clamp(28px, 5vw, 72px); }
.results-hero-merged h1 { margin-bottom: 0 !important; }
.results-page-intro { display: none !important; }
.results-grid-section { padding-top: 22px !important; }
.results-grid-v13 { row-gap: 30px !important; }
.result-markers { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.result-markers span { border-top:2px solid var(--jm-orange); padding:8px 14px 0 0; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.results-honesty { padding-block: clamp(38px, 4vw, 58px) !important; }
.results-honesty > .wrap { max-width: 1120px; }
.healing-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:20px; }
.healing-grid article { border-top:2px solid var(--jm-orange); padding:16px 18px 4px 0; }
.healing-grid strong { font:1.5rem/1.1 Georgia,serif; color:var(--jm-ink); }
.media-promise { margin-top:18px !important; font-size:.82rem; font-weight:700; }
.results-cta { background:var(--jm-orange) !important; color:var(--jm-ink) !important; padding-block:clamp(52px,6vw,80px) !important; }
.results-cta p { color:var(--jm-ink) !important; }

/* Le geste : démarrage en deux colonnes, aucune vidéo, finale orange. */
.technique-mobile .hero .wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(30px,6vw,90px); align-items:end; }
.technique-mobile .hero .tag,.technique-mobile .hero h1 { grid-column:1; }
.technique-mobile .hero p { grid-column:2; grid-row:1 / span 2; }
.technique-mobile .content { padding-top:42px !important; }
.technique-mobile .lead { max-width:900px; margin-bottom:32px !important; }
.gesture-film { display:none !important; }
.orange-finale,.technique-mobile .cta { background:var(--jm-orange) !important; color:var(--jm-ink) !important; }
.technique-mobile .cta p,.technique-mobile .cta .tag { color:var(--jm-ink) !important; }

/* Contact : aucun texte clair sur fond sombre, hiérarchie simple. */
.contact-hero,.contact-main,.location { background:var(--jm-paper) !important; color:var(--jm-ink) !important; }
.contact-hero { padding-block:clamp(46px,6vw,72px) 34px !important; }
.contact-hero h1 { max-width:800px; color:var(--jm-ink) !important; }
.contact-hero p,.contact-main p,.location p { color:var(--jm-ink) !important; }
.contact-main { padding-block:34px 50px !important; }
.contact-layout { gap:clamp(28px,5vw,68px) !important; align-items:start; }
.contact-card { background:var(--jm-mist) !important; color:var(--jm-ink) !important; box-shadow:12px 12px 0 var(--jm-orange); }
.contact-card p,.contact-card a,.contact-card address { color:var(--jm-ink) !important; }
.location { padding-top:48px !important; }

/* Salon : couleur canonique du site, composition plus nette. */
body.salon-page,.salon-page main,.salon-page .salon-hero,.salon-page .salon-content { background:var(--jm-green) !important; }
.salon-page .salon-hero { padding-bottom:30px !important; }
.salon-page .salon-grid { align-items:center !important; }
.salon-page .salon-photo { background:var(--jm-ink) !important; box-shadow:14px 14px 0 var(--jm-orange) !important; }

/* Tarifs : le vrai schéma reste visible, y compris sur Safari/Chrome mobile. */
@media (max-width:760px) {
  .v13 main section:not(.hero) { padding-block:38px; }
  .home-mobile .hero-v11 .hero-keyword { font-size:clamp(2.55rem,11.2vw,3.35rem)!important; line-height:.9!important; }
  .home-mobile .gallery-note-row { display:grid!important; gap:12px!important; }
  .results-hero-merged .results-page-intro-grid,.healing-grid { grid-template-columns:1fr; }
  .results-grid-section { padding-top:10px!important; }
  .technique-mobile .hero .wrap { display:block; }
  .technique-mobile .hero p { margin-top:14px; }
  .technique-mobile .content { padding-top:28px!important; }
  .v12-v5 .zones-figure { min-height:0!important; background:none!important; -webkit-mask:none!important; mask:none!important; }
  .v12-v5 .zones-figure img { display:block!important; width:100%!important; height:auto!important; object-fit:contain; }
  .contact-hero { padding-bottom:24px!important; }
  .contact-main { padding-top:24px!important; }
  .contact-card { box-shadow:7px 7px 0 var(--jm-orange); }
}

/* Un rythme plus compact sans toucher au hero. */
.v13 main section:not(.hero):not(.salon-hero):not(.salon-content) {
  padding-top: clamp(54px, 6vw, 78px);
  padding-bottom: clamp(54px, 6vw, 78px);
}

.v13 main p {
  margin-top: .65em;
  margin-bottom: .65em;
}

.v13 main h1,
.v13 main h2,
.v13 main h3 {
  text-wrap: balance;
}

@media (min-width: 761px) {
  .home-mobile .hero-v11 .hero-keyword {
    max-width: 650px;
    font-size: clamp(3.8rem, 5.6vw, 5.35rem) !important;
    line-height: .88 !important;
  }
}

/* La galerie utilise la largeur de ses photos au lieu de grandes cartes vides. */
.v12-v4 .results-gallery .gallery-track {
  gap: 6px !important;
  padding: 3px 0 11px !important;
  scroll-padding-inline: 0;
}

.v12-v4 .results-gallery .gallery-card {
  flex: 0 0 min(520px, 40vw) !important;
  width: min(520px, 40vw) !important;
  align-items: stretch !important;
  scroll-snap-align: start;
}

.v12-v4 .results-gallery .gallery-card img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.v12-v4 .results-gallery .gallery-card figcaption {
  width: 100%;
}

/* Salon : même univers vert que le reste du site, dans une composition courte. */
body.salon-page,
.salon-page main,
.salon-page .salon-hero,
.salon-page .salon-content {
  background: var(--mix02-green);
  color: var(--mix02-cream);
}

.salon-page .salon-hero {
  padding: clamp(44px, 4.5vw, 60px) 0 22px;
}

.salon-page .salon-hero h1 {
  max-width: 760px;
  margin: 12px 0 12px;
  font-size: clamp(3.6rem, 6.2vw, 5.4rem);
}

.salon-page .salon-hero p,
.salon-page .salon-copy p {
  color: rgba(242, 238, 230, .78);
}

.salon-page .salon-content {
  padding: 0 0 clamp(54px, 5vw, 68px);
}

.salon-page .salon-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: clamp(34px, 4.5vw, 58px);
  align-items: start;
}

.salon-page .salon-photo {
  padding: 11px;
  border: 1px solid var(--mix02-light-line);
  background: var(--mix02-green-deep);
  box-shadow: 18px 18px 0 rgba(5, 17, 17, .18);
}

.salon-page .salon-copy h2 {
  margin-top: 8px;
  font-size: clamp(2.55rem, 4.5vw, 4.5rem);
}

.salon-page .salon-copy address {
  padding: 17px 0;
  border-top: 1px solid var(--mix02-light-line);
  border-bottom: 1px solid var(--mix02-light-line);
}

.salon-page .salon-facts {
  grid-template-columns: 1fr 1fr;
  gap: 0;
  color: var(--mix02-cream);
}

.salon-page .salon-facts span {
  padding-right: 14px;
  border-color: var(--mix02-light-line);
}

.salon-page .salon-actions .button {
  background: var(--mix02-orange);
  color: var(--mix02-green-deep);
}

.salon-page .salon-actions .text-link {
  color: var(--mix02-cream);
}

@media (min-width: 761px) {
  #site-header .nav {
    width: min(1180px, calc(100% - 40px));
  }

  #site-header .nav-links {
    gap: clamp(10px, 1.12vw, 18px);
  }

  #site-header .nav-links a {
    white-space: nowrap;
    font-size: .61rem;
    letter-spacing: .075em;
  }
}

@media (max-width: 760px) {
  .v13 main section:not(.hero):not(.salon-hero):not(.salon-content) {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .v12-v4 .results-gallery .gallery-track {
    gap: 6px !important;
  }

  .v12-v4 .results-gallery .gallery-card {
    flex-basis: 84% !important;
    width: 84% !important;
  }

  .salon-page .salon-hero {
    padding: 48px 0 24px;
  }

  .salon-page .salon-content {
    padding: 8px 0 54px;
  }

  .salon-page .salon-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .salon-page .salon-photo {
    box-shadow: 10px 10px 0 rgba(5, 17, 17, .18);
  }
}

/* Les règles finales de Remix 03 priment sur l'ancienne couche Mix 02. */
.v13 main section:not(.hero):not(.salon-hero):not(.salon-content) {
  padding-block: clamp(38px, 4.5vw, 64px);
}
.home-mobile .results-gallery { padding-bottom:36px!important; }
.home-mobile .gallery-note-row { margin-top:14px!important; padding-top:16px!important; }
.results-page-intro,.home-mobile #methode,.method-redundant,.gesture-film { display:none!important; }
.results-grid-section { padding-top:22px!important; }
body.salon-page,.salon-page main,.salon-page .salon-hero,.salon-page .salon-content { background:var(--jm-green)!important; }
.salon-page .salon-photo { background:var(--jm-ink)!important; box-shadow:14px 14px 0 var(--jm-orange)!important; }
.salon-page .salon-hero{padding:clamp(38px,4vw,54px) 0 22px!important}
.salon-page .salon-hero h1{max-width:820px;margin:8px 0 10px;font-size:clamp(3.3rem,5.2vw,4.8rem);line-height:.9}
.salon-page .salon-hero p{max-width:760px}
.salon-page .salon-content{padding:0 0 clamp(48px,5vw,66px)!important}
.salon-page .salon-grid{align-items:start!important;gap:clamp(30px,4vw,52px)!important}
.salon-page .salon-copy{padding-top:6px}
.salon-page .salon-copy h2{font-size:clamp(2.7rem,4vw,4rem);line-height:.92}
.standalone-v6 .cta,.history-mobile .cta,.hygiene-mobile .cta { background:var(--jm-orange)!important; color:var(--jm-ink)!important; }
.standalone-v6 .cta p,.history-mobile .cta p,.hygiene-mobile .cta p { color:var(--jm-ink)!important; }
@media(max-width:760px){
  .v13 main section:not(.hero):not(.salon-hero):not(.salon-content){padding-block:38px}
  .v12-v5 .zones-figure{min-height:0!important;background:none!important;-webkit-mask:none!important;mask:none!important}
  .v12-v5 .zones-figure img{display:block!important;width:100%!important;height:auto!important;object-fit:contain}
  .salon-page .salon-photo{box-shadow:8px 8px 0 var(--jm-orange)!important}
  .salon-page .salon-hero{padding:34px 0 18px!important}
  .salon-page .salon-hero h1{font-size:clamp(2.8rem,13vw,3.7rem)}
  .salon-page .salon-content{padding:0 0 44px!important}
  .salon-page .salon-grid{gap:26px!important}
  .salon-page .salon-photo{order:1}
  .salon-page .salon-copy{order:2;padding-top:0}
}

/* Contact V12 : bloc final afin de neutraliser les essais Remix précédents. */
body.standalone-v6 .contact-hero{padding:58px 0 44px!important;background:var(--brand)!important;color:var(--cream)!important}
body.standalone-v6 .contact-hero h1{max-width:860px;margin:12px 0 18px;font:clamp(3.5rem,7vw,7rem)/.88 var(--serif)!important;letter-spacing:-.065em;color:var(--cream)!important}
body.standalone-v6 .contact-hero p{max-width:650px;color:#ddd6d0!important;font-size:1.05rem}
body.standalone-v6 .contact-main{padding:58px 0!important;background:var(--cream)!important;color:var(--ink)!important}
body.standalone-v6 .contact-layout{grid-template-columns:.86fr 1.14fr;gap:58px;align-items:start}
body.standalone-v6 .contact-question{font:clamp(2.6rem,5vw,4.8rem)/.94 var(--serif)!important;letter-spacing:-.055em;margin:12px 0 18px}
body.standalone-v6 .contact-card{padding:34px;background:var(--white)!important;border-top:6px solid var(--accent);box-shadow:none!important;color:var(--ink)!important}
body.standalone-v6 .contact-card h2{font:clamp(2.3rem,4.5vw,4.2rem)/.94 var(--serif)!important;letter-spacing:-.05em}
body.standalone-v6 .contact-card p{color:#5c5753!important}
body.standalone-v6 .location{padding:58px 0!important;background:var(--white)!important;color:var(--ink)!important}
@media(max-width:760px){body.standalone-v6 .contact-hero{padding:42px 0 34px!important}body.standalone-v6 .contact-hero h1{font-size:3.5rem!important}body.standalone-v6 .contact-main,body.standalone-v6 .location{padding:42px 0!important}body.standalone-v6 .contact-layout{grid-template-columns:1fr;gap:28px}body.standalone-v6 .contact-card{padding:25px}}

/* Le geste — retour à l'équilibre V12, texte V13 conservé. */
.technique-mobile .hero{padding:clamp(58px,7vw,92px) 0 clamp(48px,6vw,74px)!important}
.technique-mobile .hero .wrap{display:block!important}
.technique-mobile .hero h1{max-width:980px;margin:14px 0 20px;font:clamp(3.7rem,7vw,7rem)/.86 var(--serif)!important;letter-spacing:-.07em}
.technique-mobile .hero p{max-width:700px;margin:0!important;color:#d9d9d4!important;font-size:1.08rem}
.technique-mobile .quote{display:none!important}
.technique-mobile .orange-finale{padding:clamp(58px,7vw,88px) 0!important;background:var(--accent)!important;color:var(--brand)!important;text-align:center}
.technique-mobile .orange-finale .tag,.technique-mobile .orange-finale p{color:var(--brand)!important}
.technique-mobile .orange-finale h2{max-width:820px;margin:10px auto 16px;font:clamp(3rem,5vw,5.2rem)/.9 var(--serif)!important;letter-spacing:-.06em}
.technique-mobile .orange-finale p{max-width:620px;margin:0 auto 24px!important;font-size:1rem}
.technique-mobile .orange-finale .button{background:var(--brand)!important;color:var(--cream)!important;border-color:var(--brand)!important}
@media(max-width:760px){.technique-mobile .hero{padding:44px 0 40px!important}.technique-mobile .hero h1{font-size:clamp(3.2rem,14.5vw,4.6rem)!important;line-height:.86!important}.technique-mobile .orange-finale{padding:52px 18px!important}.technique-mobile .orange-finale h2{font-size:clamp(2.7rem,12vw,3.8rem)!important}}

/* Passe finale — V12 dirige la composition, V13 enrichit le fond. */
.chat,.chat-cta{position:fixed!important;z-index:40!important;right:18px!important;bottom:18px!important}
.chat.is-suppressed,.chat-cta.is-suppressed{opacity:0!important;pointer-events:none!important}

/* Aucun encadrement décoratif autour d'un simple texte. */
.proof-signals li,.semantic-point,.access div,.pillar,.principle,.finish,.note{box-shadow:none!important}
.proof-signals li,.semantic-point,.access div{background:transparent!important}

/* Accueil : transitions courtes et témoignage dans le bon ordre sur mobile. */
.home-mobile .results-gallery{padding-bottom:24px!important}
.home-mobile .home-results-link{margin-top:12px!important;padding-top:14px!important;padding-bottom:0!important}
.home-mobile .semantic-bridge{padding-block:44px!important}
.home-mobile .semantic-bridge-grid{align-items:start!important}
.home-mobile .semantic-bridge-copy>p{margin-top:0!important}

/* Résultats : titre lisible, paragraphe aligné, galerie rapprochée. */
.results-hero-merged{padding:54px 0 48px!important}
.results-hero-merged .results-page-intro-grid{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;align-items:center!important;gap:clamp(42px,6vw,86px)!important}
.results-hero-merged h1{max-width:780px;font-size:clamp(4.1rem,6.3vw,6.7rem)!important;line-height:.86!important}
.results-hero-merged p{margin:0!important}
.results-grid-section{padding-top:26px!important}
.result-markers{display:none!important}

/* Le geste : une échelle harmonisée, une fin orange parfaitement contrastée. */
.technique-mobile .hero h1{max-width:1080px;font-size:clamp(3.9rem,6vw,6.2rem)!important}
.technique-mobile .hero h1 small{font:inherit;font-size:.72em;letter-spacing:inherit}
.technique-mobile .orange-finale,.technique-mobile .orange-finale *{color:var(--brand)!important}
.technique-mobile .orange-finale .button{color:var(--cream)!important}

/* Tarifs : restitution de l'équilibre V12, sans cartes ajoutées. */
body.standalone-v6 .price-hero{padding:58px 0 46px!important}
body.standalone-v6 .protocol{padding:38px 0!important}
body.standalone-v6 .rates{padding:58px 0!important}
body.standalone-v6 .rates-grid{grid-template-columns:.82fr 1.18fr!important;gap:60px!important;align-items:center!important}
body.standalone-v6 .special{padding:54px 0!important}
body.standalone-v6 .maintenance{padding:38px 0!important}
body.standalone-v6 .finish{background:transparent!important;color:var(--brand)!important;border:0!important;border-top:1px solid var(--line)!important;padding:20px 0 0!important}
body.standalone-v6 .finish span{color:#5e5955!important}

/* Contact + salon réunis. */
.contact-salon-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(36px,5vw,70px);align-items:center}
.contact-salon figure{margin:0}
.contact-salon figure img{display:block;width:100%;height:auto}
.contact-salon address{font-style:normal;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}

/* Les finales orange restent réservées aux pages où elles donnent du relief. */
.history-mobile .cta,.hygiene-mobile .cta{background:var(--accent)!important;color:var(--brand)!important;text-align:center;padding:70px 0!important}
.history-mobile .cta .tag,.history-mobile .cta p,.hygiene-mobile .cta .tag,.hygiene-mobile .cta p{color:var(--brand)!important}
.history-mobile .cta .button,.hygiene-mobile .cta .button{background:var(--brand)!important;color:var(--cream)!important;border:0!important}

@media(max-width:760px){
  .home-mobile .hero-v11 .hero-intro{padding-bottom:18px!important}
  .home-mobile .hero-v11 .hero-keyword{font-size:clamp(2.75rem,11.5vw,3.45rem)!important;line-height:.9!important}
  .home-mobile .hero-v11 .hero-foot{padding:20px 28px 28px!important}
  .home-mobile .hero-v11 .expert-line{margin-top:0!important}
  .home-mobile .results-gallery{padding-bottom:16px!important}
  .home-mobile .gallery-controls{margin:8px 0!important}
  .home-mobile .home-results-link{margin-top:8px!important;padding-top:12px!important}
  .home-mobile .home-results-link p{margin-bottom:14px!important}
  .home-mobile .semantic-bridge{padding:34px 0!important}
  .home-mobile .semantic-bridge h2{margin-bottom:14px!important}
  .home-mobile .semantic-bridge-copy{margin-top:22px!important}
  .home-mobile .trust-grid{display:flex!important;flex-direction:column;gap:18px!important}
  .home-mobile .trust-copy{display:contents}
  .home-mobile .trust-copy>.tag{order:1}
  .home-mobile .trust-copy>h2{order:2;margin-bottom:0!important}
  .home-mobile .trust-copy>p:first-of-type{order:3;margin-top:0!important}
  .home-mobile .trust-video{order:4;margin:0!important}
  .home-mobile .trust-review{order:5;margin-top:4px!important}
  .home-mobile .trust-review-copy{order:6}
  .home-mobile .testimonial-cta{order:7}
  .results-hero-merged{padding:38px 0 34px!important}
  .results-hero-merged .results-page-intro-grid{grid-template-columns:1fr!important;gap:18px!important}
  .results-hero-merged h1{font-size:clamp(3.35rem,14vw,4.4rem)!important;line-height:.88!important;margin:8px 0 10px!important}
  .results-grid-section{padding-top:14px!important}
  .technique-mobile .hero h1{font-size:clamp(3.4rem,15vw,4.5rem)!important;line-height:.84!important;margin-bottom:16px!important}
  .technique-mobile .hero h1 span{display:block}
  .technique-mobile .hero h1 small{display:block;margin-top:14px;font-family:var(--sans)!important;font-size:.29em!important;line-height:1.15!important;letter-spacing:.13em!important;text-transform:uppercase}
  body.standalone-v6 .price-hero{padding:42px 0 34px!important}
  body.standalone-v6 .protocol{padding:28px 0!important}
  body.standalone-v6 .rates{padding:38px 0!important}
  body.standalone-v6 .rates-grid{grid-template-columns:1fr!important;gap:22px!important}
  body.standalone-v6 .special{padding:38px 0!important}
  body.standalone-v6 .maintenance{padding:30px 0!important}
  .contact-salon-grid{grid-template-columns:1fr;gap:26px}
  .chat,.chat-cta{right:12px!important;bottom:12px!important;max-width:calc(100vw - 24px);padding:11px 14px!important;font-size:.66rem!important}
}


/* Source preserved: assets/prefinale-06.css */
/* Préfinale 06 — couche finale. */
.chat,.chat-cta{opacity:1;transform:translateY(0);transition:opacity .35s ease,transform .35s ease}
.chat.is-pending,.chat-cta.is-pending{opacity:0!important;transform:translateY(10px);pointer-events:none!important}
.cta .button,.results-cta .button,.orange-finale .button,.hygiene-finale .button{background:var(--brand,#1f4a4d)!important;color:#f2eee6!important;border:0!important;box-shadow:none!important}
.cta .button:hover,.results-cta .button:hover,.orange-finale .button:hover,.hygiene-finale .button:hover{background:#123634!important;color:#fff!important}
.home-mobile .hero-keyword span,.home-mobile .hero-keyword em{display:block}
.home-mobile .hero-foot small{display:block;text-align:center}
.home-mobile .results-lead h2{max-width:850px}
.home-mobile .semantic-gesture-link{display:inline-block;margin-top:22px}
.home-mobile .about h2{max-width:760px}
.results-honesty{padding-bottom:0!important;background:var(--cream,#f2eee6)}
.honesty-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(42px,6vw,88px);align-items:start}
.honesty-heading h2{font:clamp(3rem,5vw,5rem)/.92 var(--serif);letter-spacing:-.055em;margin:12px 0 0}
.honesty-content .healing-grid{margin-top:0}
.healing-grid article span{display:block;color:var(--jm-orange);font:1.35rem var(--serif);margin-bottom:8px}
.healing-grid article strong{font:1.65rem var(--serif)}
.honesty-statement{margin-top:48px;padding:clamp(42px,6vw,72px) max(20px,calc((100vw - 1040px)/2));background:var(--jm-orange);color:var(--brand);font:clamp(2.6rem,5vw,5.2rem)/.92 var(--serif);letter-spacing:-.055em;text-align:center}
.hygiene-mobile .framework{padding-bottom:42px!important}
.hygiene-mobile .note{background:transparent!important;padding:20px 0 0!important;border-top:1px solid var(--line)}
.hygiene-mobile .hygiene-finale{margin-top:0}
@media(min-width:761px){#site-header .nav-links{gap:clamp(12px,1.25vw,22px)}#site-header .nav-links a{font-size:clamp(.56rem,.61vw,.66rem)}}
@media(max-width:760px){
.home-mobile .hero-v11 .hero-keyword{font-size:clamp(2.55rem,10.8vw,3.2rem)!important;line-height:.88!important;letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:normal!important}
.home-mobile .hero-v11 .hero-intro p{margin-bottom:12px!important}
.home-mobile .hero-v11 .hero-foot{gap:12px!important;padding-top:12px!important}
.home-mobile .hero-v11 .expert-line{margin-bottom:2px!important}
.home-mobile .hero-foot small{width:100%;margin:0 auto!important;text-align:center!important}
.home-mobile .results-lead h2{font-size:clamp(2.8rem,12vw,3.7rem)!important;line-height:.9!important;max-width:none!important}
.home-mobile .home-results-link{padding-bottom:4px!important}
.home-mobile .semantic-bridge{padding-top:28px!important}
.home-mobile .semantic-bridge h2{margin-bottom:14px!important}
.home-mobile .semantic-gesture-link{margin-top:18px}
.home-mobile .trust-review-copy{display:none!important}
.home-mobile .trust-review{margin-bottom:0!important}
.home-mobile .testimonial-cta{margin-top:0!important}
.home-mobile .about h2{font-size:clamp(2.75rem,12vw,3.7rem)!important;line-height:.9!important}
.home-mobile .final-contact h2{font-size:clamp(2.8rem,12vw,3.8rem)!important;line-height:.9!important}
.technique-mobile .hero h1{font-size:clamp(3rem,13vw,4.1rem)!important;line-height:.88!important}
.technique-mobile .hero h1 small{font-family:var(--serif)!important;font-size:.52em!important;line-height:1!important;letter-spacing:-.035em!important;text-transform:none!important;margin-top:10px!important}
.honesty-layout{grid-template-columns:1fr;gap:24px}
.honesty-heading h2{font-size:clamp(2.8rem,12vw,3.8rem)}
.honesty-content .healing-grid{grid-template-columns:1fr;gap:20px}
.honesty-statement{margin-top:32px;padding:42px 24px;font-size:clamp(2.55rem,11vw,3.5rem)}
.hygiene-mobile .framework{padding-bottom:28px!important}
.hygiene-mobile .hygiene-finale{padding:48px 20px!important}
.hygiene-mobile .hygiene-finale h2{font-size:clamp(2.7rem,12vw,3.7rem)!important;line-height:.9!important}
}


/* Source preserved: assets/v14.css */
/* JM.Micro V14 — harmonisation mobile et corrections finales validées. */
.materials-note{padding:clamp(58px,8vw,92px) 0;background:var(--mist,#dfe9e7)}
.materials-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(34px,6vw,82px);align-items:start}
.materials-note h2{font:clamp(2.6rem,4.8vw,4.8rem)/.94 var(--serif);letter-spacing:-.055em;margin:12px 0 0}
.materials-note p{margin:0;max-width:680px}
.materials-note p+p{margin-top:16px}

/* Le même bouton WhatsApp, lisible et disponible sur toutes les pages principales. */
.chat,.chat-cta{display:flex!important;align-items:center!important;justify-content:center!important;position:fixed!important;right:18px!important;bottom:18px!important;z-index:1000!important;min-height:50px!important;padding:13px 19px!important;border:0!important;border-radius:999px!important;background:#20d66b!important;color:#173f42!important;font:900 .7rem/1 Arial,sans-serif!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;box-shadow:0 10px 28px rgba(7,34,35,.22)!important;visibility:visible!important}
.chat.is-pending,.chat-cta.is-pending{opacity:0!important;transform:translateY(10px)!important;pointer-events:none!important}
.chat:not(.is-pending),.chat-cta:not(.is-pending),.chat.is-suppressed:not(.is-pending),.chat-cta.is-suppressed:not(.is-pending){opacity:1!important;transform:none!important;pointer-events:auto!important}

@media(max-width:760px){
  /* Échelle commune : forte présence, sans titres disproportionnés. */
  .home-mobile .results-lead h2,
  .home-mobile .semantic-bridge h2,
  .home-mobile .trust-copy h2,
  .home-mobile .about h2,
  .home-mobile .final-contact h2,
  .results-page-hero h1,
  .results-honesty h2,
  .results-cta h2,
  .technique-mobile .answer-block h2,
  .technique-mobile .orange-finale h2,
  .faq-page-hero h1,
  .hygiene-mobile .hero h1,
  .hygiene-mobile .intro h2,
  .hygiene-mobile .hygiene-finale h2,
  .contact-hero h1,
  .contact-question,
  .price-hero h1,
  .rates h2,
  .special h2,
  .maintenance h2{font-size:clamp(2.35rem,10.2vw,3.2rem)!important;line-height:.94!important;letter-spacing:-.048em!important;overflow-wrap:normal!important;word-break:normal!important}

  .home-mobile .hero-v11 .hero-keyword{font-size:clamp(2.45rem,10.2vw,3rem)!important;line-height:.91!important}
  .home-mobile .hero-foot{gap:13px!important}
  .home-mobile .hero-foot small{margin-top:9px!important}
  .home-mobile .method h2{font-size:clamp(2.35rem,10vw,3.1rem)!important;line-height:.94!important}
  .technique-mobile .hero h1{font-size:clamp(2.6rem,11vw,3.45rem)!important;line-height:.91!important}
  .technique-mobile .hero h1 small{font-size:.5em!important;line-height:1.05!important}
  .honesty-statement{font-size:clamp(2.25rem,9.8vw,3rem)!important;line-height:.95!important}

  .materials-note{padding:52px 0}
  .materials-grid{grid-template-columns:1fr;gap:22px}
  .materials-note h2{font-size:clamp(2.25rem,9.8vw,3rem);line-height:.95}

  /* Le schéma complet des deux têtes reste visible sur téléphone. */
  .v12-v3 .rates-grid{grid-template-columns:1fr!important;gap:24px!important}
  .v12-v3 .zones-figure{display:block!important;position:relative!important;width:100%!important;min-height:clamp(210px,61vw,290px)!important;margin:0 auto 8px!important;background:transparent!important;-webkit-mask:none!important;mask:none!important}
  .v12-v3 .zones-figure::before{content:"";position:absolute;inset:0;background:#f36f21;-webkit-mask:url('/assets/schema-zones-original.png') 50% 4%/230% auto no-repeat;mask:url('/assets/schema-zones-original.png') 50% 4%/230% auto no-repeat}
  .v12-v3 .zones-figure img{display:none!important}

  .chat,.chat-cta{right:12px!important;bottom:12px!important;min-height:46px!important;padding:12px 15px!important;font-size:.64rem!important;max-width:calc(100vw - 24px)!important}
}

/* assets/styles/polish.css */
/* JM.Micro — refinements shared by every page. Keep visual decisions here. */
:root { --jm-petrol: #1f4a4d; --jm-orange: #f36f21; }
body { -webkit-text-size-adjust: 100%; }
body :is(h1,h2,h3) { text-wrap: balance; }
body p { text-wrap: pretty; }
body.home-mobile .hero-copy .tag { background:transparent!important; color:#f36f21!important; }
body.home-mobile .hero-copy::before { display:none!important; }
@media(min-width:761px) {
  body.home-mobile .hero-copy { justify-content:center!important; gap:32px!important; }
  body.home-mobile .hero-foot { display:flex!important; flex-wrap:wrap; justify-content:flex-start!important; align-items:center!important; gap:18px 24px!important; }
  body.home-mobile .hero-foot .expert-line { flex-basis:100%; margin:0!important; }
  body.home-mobile .hero-foot small { text-align:left!important; }
  body #site-header .nav-links a { font-size:12px!important; letter-spacing:.045em!important; }
}
body :is(a,button,input,textarea):focus-visible { outline: 3px solid #f36f21; outline-offset: 5px; }
body :is(.cta,.orange-finale,.hygiene-finale,.results-cta) .button {
  display:inline-flex!important; align-items:center; justify-content:center;
  min-height:48px; color:#f4efe7!important; background:#1f4a4d!important;
  opacity:1!important; visibility:visible!important; box-shadow:none!important;
}
body :is(.cta,.orange-finale,.hygiene-finale,.results-cta) .button::after { display:none!important; }
body .chat-cta { animation:none!important; transition:opacity .25s ease,transform .25s ease; }
body .chat-cta::before {
  content:''!important; flex:0 0 22px; width:22px!important; height:22px!important;
  background:transparent!important; border:2px solid currentColor!important;
  border-radius:50%!important; transform:none!important;
}
body .contact-card { padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; }
body .contact-layout { gap:clamp(32px,5vw,72px); }
body .site-footer { padding-bottom:90px!important; }
body .site-footer .footer-links { display:flex!important; flex-wrap:wrap; gap:12px 20px!important; }
body .site-footer .footer-links a { display:inline-block; }
body #main-content .rates .zones-figure::after { display:none!important; }
body #main-content .rates .zones-figure { position:relative!important; background:transparent!important; mask:none!important; -webkit-mask:none!important; }
body #main-content .rates .zones-figure::before { content:''; position:absolute; inset:0; background:#f36f21; mask:url('/assets/schema-zones-original.png') 50% -45px/270% auto no-repeat; -webkit-mask:url('/assets/schema-zones-original.png') 50% -45px/270% auto no-repeat; }
@media(max-width:760px) {
  body.home-mobile .hero-v11 .hero-keyword { font-size:clamp(1.8rem,8.7vw,2.55rem)!important; line-height:1.04!important; letter-spacing:-.05em!important; }
  body .hero-v11 .hero-intro { padding-inline:20px!important; }
  body .hero-foot small { margin-top:15px!important; }
  body :is(.hero h1,.results-page-hero h1,.price-hero h1,.contact-hero h1) { overflow-wrap:anywhere; }
  body .rates-grid > div { display:block!important; }
  body #main-content .rates .rates-grid { display:flex!important; flex-direction:column!important; }
  body #main-content .rates .rates-grid > div { order:2!important; }
  body #main-content .rates .zones-figure { order:1!important; width:100%!important; min-height:220px!important; height:220px!important; margin:0!important; }
  body #main-content .rates .zones-figure::before { inset:0!important; mask-size:270% auto!important; -webkit-mask-size:270% auto!important; mask-position:50% -45px!important; -webkit-mask-position:50% -45px!important; }
  body .home-results-link { margin-bottom:0!important; padding-bottom:0!important; }
  body .results-gallery { padding-bottom:32px!important; }
  body .semantic-bridge { padding-top:32px!important; }
  body .chat-cta { bottom:max(12px,env(safe-area-inset-bottom))!important; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  *,*::before,*::after { animation:none!important; transition:none!important; }
}

/* assets/styles/editorial-v2.css */
/* V15 2.0 — typography for the approved editorial preview. */
body.v15-v2 #main-content :is(h1,h2,h3) {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
  letter-spacing: -.038em !important;
  line-height: 1.1 !important;
  text-wrap: balance;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none;
  min-width: 0;
  height: auto !important;
}
body.v15-v2 #main-content h1 {
  font-size: clamp(3rem, 5.3vw, 5.25rem) !important;
  max-width: 1000px !important;
  margin: 18px 0 24px !important;
}
body.v15-v2 #main-content h2 {
  font-size: clamp(2.3rem, 3.65vw, 3.65rem) !important;
  margin-top: 12px !important;
  margin-bottom: 22px !important;
}
body.v15-v2 #main-content h3 {
  font-size: clamp(1.4rem, 2vw, 2rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
}
body.v15-v2 #main-content :is(.block,.era,.protocol) h2 {
  font-size: clamp(1.8rem, 2.55vw, 2.6rem) !important;
}
body.v15-v2 #main-content p { line-height:1.65; }
body.v15-v2 #main-content :is(.hero,.results-page-hero,.price-hero,.faq-page-hero,.contact-hero) p {
  max-width: 740px;
}
body.v15-v2 #main-content .hero-copy { min-width:0; gap:24px !important; }
body.v15-v2 #main-content .hero-keyword {
  font-size: clamp(2.7rem, 4.4vw, 4.5rem) !important;
  max-width: 13.5ch !important;
  line-height: 1.07 !important;
}
body.v15-v2 #main-content .hero-location {
  flex-basis:100%; color:#f36f21; font:700 .72rem/1.5 Arial,sans-serif;
  letter-spacing:.1em; text-transform:uppercase;
}
body.v15-v2 #main-content .hero-service {
  font:700 .7rem/1.5 Arial,sans-serif !important;
  letter-spacing:.1em !important;
}
body.v15-v2 #main-content .final-contact .contact-card,
body.v15-v2 #main-content .final-contact .contact-card :is(h3,p,label,small,.consent span,.privacy-inline),
body.v15-v2 #main-content .final-contact .contact-card a:not(.button) {
  color:#f4efe7 !important;
}
body.v15-v2 #main-content .final-contact .contact-card .contact-option-label { color:#f36f21 !important; }
body.v15-v2 #main-content .final-contact .contact-card :is(input,textarea) { color:#1f4a4d !important; }
body.v15-v2 #main-content .final-contact .contact-card button[type="submit"] {
  background:#f36f21 !important; color:#163f42 !important; box-shadow:none !important;
}
body.v15-v2 #main-content .hero-foot { gap:14px 24px !important; }
body.v15-v2 #main-content .hero-foot small { margin-top:5px !important; }
body.v15-v2 #main-content .results-page-intro-grid { align-items:center !important; }
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) h2 {
  max-width: 820px !important; margin-inline:auto !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) p {
  max-width: 650px; margin: 0 auto 26px !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) .button {
  color:#f4efe7 !important; background:#1f4a4d !important;
  line-height:1.4 !important; text-align:center; box-shadow:none !important;
  margin-top:0 !important;
}
body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) .button::after { display:none !important; }
body.v15-v2 #main-content .healing-intro { margin:0 0 26px; }
body.v15-v2 #main-content .honesty-statement {
  font-size:clamp(2.2rem,3.65vw,3.65rem) !important;
  line-height:1.1 !important; letter-spacing:-.038em !important; text-wrap:balance;
}
body.v15-v2 #main-content .era-intro { margin-bottom:16px; }
body.v15-v2 #main-content .price-hero h1 { max-width:960px !important; }
body.v15-v2 #main-content .hero-grid > *,
body.v15-v2 #main-content .semantic-bridge-grid > *,
body.v15-v2 #main-content .materials-grid > * { min-width:0; }
@media(min-width:761px) {
  body.v15-v2 #main-content .results-page-hero h1 {
    font-size:clamp(3rem,4.6vw,4.6rem) !important;
  }
}
@media(max-width:760px) {
  body.v15-v2 #main-content h1 {
    font-size:clamp(2.2rem,9.3vw,3.5rem) !important;
    line-height:1.1 !important; letter-spacing:-.035em !important;
    margin:14px 0 20px !important; max-width:100% !important;
  }
  body.v15-v2 #main-content h2,
  body.v15-v2 #main-content :is(.block,.era,.protocol) h2 {
    font-size:clamp(1.9rem,8vw,2.7rem) !important;
    line-height:1.13 !important; letter-spacing:-.03em !important;
    margin:10px 0 18px !important;
  }
  body.v15-v2 #main-content h3 { font-size:1.45rem !important; }
  body.v15-v2 #main-content .hero-keyword {
    font-size:clamp(2.1rem,9.2vw,3.2rem) !important;
    max-width:16ch !important; margin-inline:auto !important; line-height:1.12 !important;
  }
  body.v15-v2 #main-content .hero-copy,
  body.v15-v2 #main-content .hero-intro,
  body.v15-v2 #main-content .hero-foot { text-align:center !important; }
  body.v15-v2 #main-content .hero-copy { gap:22px !important; }
  body.v15-v2 #main-content .hero-intro { padding-inline:8px !important; }
  body.v15-v2 #main-content .hero-foot { gap:12px !important; }
  body.v15-v2 #main-content .hero-foot small { margin-top:8px !important; }
  body.v15-v2 #main-content .honesty-statement {
    font-size:clamp(1.9rem,8vw,2.7rem) !important; line-height:1.13 !important;
  }
  body.v15-v2 #main-content :is(.cta,.faq-page-cta,.results-cta) h2 { margin-inline:auto !important; }
}

/* assets/styles/final-v16.css */
/* V16 finale provisoire — couche de stabilisation et d'accessibilité. */
:root{--accent-readable:#f36f21;--focus:#ffd166}
html{scroll-padding-top:calc(var(--site-header-height,82px) + 18px)}
[id]{scroll-margin-top:calc(var(--site-header-height,82px) + 18px)}
:focus-visible{outline:3px solid var(--focus)!important;outline-offset:4px!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tag,.eyebrow{color:var(--accent-readable)}
.hero .tag,.faq-page-hero .tag,.contact-hero .tag{color:#f36f21}
.button,.v12-v3 .button{min-height:48px;background:var(--brand-deep)!important;border-color:var(--brand-deep)!important;color:var(--cream)!important;font-size:.75rem!important}
.button:hover,.button:focus-visible{background:var(--accent-readable)!important;border-color:var(--accent-readable)!important;color:#fff!important}
.menu-toggle,.v12-v3 .menu-toggle{background:var(--brand-deep)!important;color:var(--cream)!important;font-size:.75rem!important}
.hero-copy small{color:#eee5df!important;font-size:.78rem!important}
.hero-service,.hero-location{color:#f36f21!important}
.first-opinion-form select{width:100%;min-height:48px;margin:5px 0 17px;padding:11px 13px;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);font:inherit}
.first-opinion-form small{font-size:.79rem;line-height:1.45}
.first-opinion-form input:invalid:not(:placeholder-shown){border-color:#8b2b1f}
.home-faq .faq-answer,.faq-page .faq-answer{max-width:820px;margin:0 42px 25px 0;color:#514d49;font-size:1rem;line-height:1.7}
.home-faq{display:block}
.home-faq .faq-answer p,.faq-page .faq-answer p{margin:0 0 14px;color:inherit;font-size:inherit}
.faq-answer ul{margin:0 0 14px;padding-left:22px}
.faq-answer a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:3px}
.faq-anchor{display:inline-block;margin-top:2px;font:800 .68rem/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.faq-number{flex:0 0 34px;color:var(--accent-readable);font:800 .7rem/1 var(--sans);letter-spacing:.08em}
.faq-page .faq-item summary{justify-content:flex-start}
.faq-page .faq-item summary:after{margin-left:auto}
.faq-tools{position:relative;padding:38px 0 30px;background:var(--mist);border-bottom:1px solid var(--line)}
.faq-tools label{display:block;margin-bottom:10px;font:clamp(1.45rem,3vw,2.2rem)/1.05 var(--serif)}
.faq-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:850px}
.faq-search-row input{min-height:54px;padding:12px 16px;border:2px solid var(--brand);background:var(--white);color:var(--ink);font:1rem var(--sans)}
.faq-reset,.faq-filter,.picker-toolbar button,.picker-reset{min-height:44px;padding:10px 15px;border:1px solid var(--brand);background:transparent;color:var(--brand);font:800 .72rem var(--sans);letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.faq-reset:hover,.faq-reset:focus-visible,.faq-filter:hover,.faq-filter:focus-visible,.faq-filter.is-active{background:var(--brand);color:var(--cream)}
.faq-filters{display:flex;gap:8px;margin-top:18px;padding-bottom:5px;overflow-x:auto;scrollbar-width:thin}
.faq-filter{flex:0 0 auto;white-space:nowrap}
.faq-count{margin:15px 0 0;color:#4d5d5b;font-size:.85rem}
.faq-item[hidden]{display:none!important}
.faq-empty{padding:60px 0;text-align:center}
.faq-empty h2{font:clamp(2rem,5vw,3.8rem)/1 var(--serif)}
.not-found{min-height:100vh;display:grid;align-items:center;background:var(--brand);color:var(--cream)}
.not-found h1{max-width:800px;margin:12px 0 20px;font:clamp(3.2rem,8vw,7rem)/.9 var(--serif)}
.not-found .text-link{margin-left:22px;color:var(--cream)}

@media(max-width:760px){
  .hero-v11 .hero-image{aspect-ratio:1/1.06!important;min-height:0!important}
  .hero-v11 .hero-after,.hero-v11 .hero-after picture{height:100%;display:block}
  .hero-v11 .hero-after img{width:100%;height:100%;object-fit:cover;object-position:center 19%}
  .hero-v11 .hero-before{width:34%!important;max-width:130px!important}
  .hero-v11 .hero-before picture,.hero-v11 .hero-before img{display:block;width:100%;height:auto}
  .hero-v11 .hero-intro{padding-top:22px!important}
  .hero-v11 .hero-keyword{margin-top:8px!important}
  .hero-copy small{font-size:.75rem!important}
  .home-faq .faq-answer,.faq-page .faq-answer{margin-right:0;font-size:.96rem}
  .faq-search-row{grid-template-columns:1fr}
  .faq-reset{justify-self:start}
  .faq-page .faq-item summary{align-items:flex-start;gap:10px}
  .faq-number{padding-top:5px;flex-basis:28px}
  .chat-cta{max-width:166px!important}
  body:has(input:focus) .chat-cta,body:has(textarea:focus) .chat-cta,body:has(select:focus) .chat-cta{display:none!important}
  html:not(.js) #site-navigation,html:not(.js) .nav-links{display:grid!important;position:static!important;width:100%!important;grid-template-columns:1fr 1fr!important;padding:12px!important;background:var(--cream)!important}
  html:not(.js) #site-header .nav{height:auto!important;flex-wrap:wrap!important}
  html:not(.js) .menu-toggle{display:none!important}
}

/* assets/styles/landing-scroll-story-test.css */
.client-voices { padding: 64px 0; background: #f4efe7; color: #143e41; }
.client-voices-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; margin: 28px 0; }
.client-voices-grid figure { margin: 0; padding: 24px 0; border-top: 3px solid #f36f21; }
.client-voices blockquote { margin: 18px 0 24px; font: 400 clamp(1.5rem, 2.5vw, 2.2rem)/1.35 Georgia, serif; }
.client-voices figcaption { font-weight: 700; font-size: .95rem; }
.client-voices figcaption span { font-weight: 400; }
.review-stars { color: #f36f21; letter-spacing: .15em; }
@media(max-width:760px) { .client-voices-grid { grid-template-columns: 1fr; gap: 10px; } }
/* Phone player spans the viewport; copy keeps comfortable side gutters. */
@media (max-width: 760px) {
  body.home-mobile #main-content .trust-section .trust-grid {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
    align-items: stretch !important;
  }
  body.home-mobile #main-content .trust-copy > * { margin-inline: 20px !important; }
  body.home-mobile #main-content .trust-video {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: stretch !important;
  }
  body.home-mobile #main-content .trust-video .youtube-player {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }
  body.home-mobile #main-content .trust-video > p { padding-inline: 20px; }
}

@media (prefers-reduced-motion: no-preference) {
  .landing-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--reveal-delay, 0ms);
  }
  .landing-reveal.revealed { opacity: 1; transform: none; }
  .semantic-point.landing-reveal { border-left: 2px solid #f36f21; padding-left: 18px; }
}

.scroll-story {
  --story-orange: #f36f21;
  --story-cream: #f7f1e8;
  --story-deep: #071719;
  position: relative;
  min-height: 285vh;
  overflow: clip;
  color: var(--story-cream);
  background:
    radial-gradient(circle at 74% 14%, rgba(31, 105, 109, .8), transparent 40%),
    radial-gradient(circle at 8% 88%, rgba(243, 111, 33, .18), transparent 32%),
    linear-gradient(135deg, #071719 0%, #10383b 50%, #061214 100%);
}

.scroll-story::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .18;
  background-image: radial-gradient(rgba(255, 255, 255, .42) .55px, transparent .55px);
  background-size: 5px 5px;
  mix-blend-mode: soft-light;
}

.scroll-story-sticky {
  position: sticky;
  top: 0;
  z-index: 1;
  min-height: 100svh;
  overflow: hidden;
}

.scroll-story-shade {
  position: absolute;
  inset: 0;
}

.scroll-story-visual {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: max(28px, calc((100vw - 1380px) / 2));
  width: min(44vw, 620px);
  aspect-ratio: 815 / 1020;
  transform: translateY(-50%) scale(calc(1 + var(--story-progress, 0) * .018));
  transform-origin: 50% 50%;
  will-change: transform;
}

.story-after,
.story-before {
  position: absolute;
  margin: 0;
  overflow: hidden;
  background: #05090a;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .34);
}

.story-after {
  inset: 0;
  width: 100%;
}

.story-after picture,
.story-after img,
.story-before picture,
.story-before img {
  display: block;
  width: 100%;
  height: 100%;
}

.story-after img,
.story-before img {
  object-fit: contain;
}

.story-after img {
  object-position: center;
  filter: saturate(.92) contrast(1.03);
}

.story-before {
  z-index: 3;
  right: auto;
  left: clamp(-72px, -5vw, -42px);
  bottom: clamp(22px, 4vh, 42px);
  width: clamp(132px, 13vw, 188px);
  aspect-ratio: .79;
  border: 3px solid var(--story-orange);
  transform: translate3d(calc(var(--story-progress, 0) * -18px), calc(var(--story-progress, 0) * -10px), 0);
}

.story-before img {
  object-position: 50% 26%;
}

.story-after figcaption,
.story-before figcaption {
  position: absolute;
  z-index: 2;
  margin: 0;
  padding: 8px 12px;
  color: #fff;
  background: rgba(7, 23, 25, .86);
  border-left: 4px solid var(--story-orange);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.story-after figcaption {
  right: 24px;
  bottom: 26px;
}

.story-before figcaption {
  left: 0;
  top: 0;
}

.scroll-story-shade {
  z-index: 4;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(6, 18, 20, .99) 0%, rgba(7, 28, 30, .96) 34%, rgba(7, 27, 29, .2) 54%, transparent 64%),
    linear-gradient(0deg, rgba(5, 18, 20, .22), transparent 38%);
}

.scroll-story-layout {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: 4px minmax(0, 560px) 1fr;
  gap: clamp(25px, 4vw, 58px);
  width: min(1380px, calc(100% - 56px));
  min-height: 100svh;
  align-items: center;
}

.scroll-story-marker {
  position: relative;
  width: 3px;
  height: min(66vh, 620px);
  overflow: hidden;
  background: rgba(246, 240, 231, .18);
}

.scroll-story-marker span {
  position: absolute;
  inset: 0;
  background: var(--story-orange);
  transform: scaleY(var(--story-progress, 0));
  transform-origin: top;
  will-change: transform;
}

.scroll-story-copy {
  max-width: 560px;
  padding-block: 30px;
}

.scroll-story-service {
  margin-bottom: clamp(18px, 3vh, 34px);
  color: var(--story-orange);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.scroll-story-mobile-service {
  display: none;
}

.scroll-story-line {
  margin: 0;
  color: rgba(246, 240, 231, .16);
  font-family: inherit;
  font-size: clamp(1rem, 1.45vw, 1.35rem);
  font-weight: 450;
  line-height: 1.2;
  letter-spacing: -.012em;
  opacity: .38;
  filter: blur(3px);
  transform: translate3d(0, 17px, 0);
  transition: color .65s ease, opacity .65s ease, filter .65s ease, transform .65s cubic-bezier(.2,.75,.2,1);
}

.scroll-story-line + .scroll-story-line {
  margin-top: .16em;
}

.scroll-story-line.scroll-story-pause {
  margin-top: clamp(10px, 1.7vh, 20px);
}

.scroll-story-line.is-visible {
  color: var(--story-cream);
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

.scroll-story-opening {
  max-width: 540px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.8rem, 5.2vw, 5.8rem);
  font-weight: 400;
  line-height: .92;
  letter-spacing: -.052em;
}

.scroll-story-accent {
  color: rgba(243, 111, 33, .2);
  font-size: clamp(1.65rem, 3vw, 3rem);
  font-weight: 750;
}

.scroll-story-accent.is-visible,
.scroll-story-finale.is-visible {
  color: var(--story-orange);
}

.scroll-story-finale {
  margin-top: clamp(15px, 2.6vh, 30px) !important;
  color: rgba(243, 111, 33, .2);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 3.6vw, 4rem);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -.04em;
}

.scroll-story-actions {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: clamp(18px, 3vh, 34px) !important;
}

.scroll-story-actions span {
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.scroll-story-actions .button {
  flex: none;
  border-color: var(--story-orange);
  background: var(--story-orange);
  color: #071719;
}

@media (max-width: 1050px) {
  .scroll-story {
    min-height: 310vh;
  }

  .scroll-story-visual {
    top: clamp(16px, 3svh, 28px);
    left: 50%;
    right: auto;
    width: min(calc(100% - 28px), 560px);
    height: 43svh;
    aspect-ratio: auto;
    transform: translateX(-50%) scale(calc(1 + var(--story-progress, 0) * .012));
  }

  .story-after {
    width: 100%;
    height: 100%;
  }

  .story-after img {
    object-position: center;
  }

  .story-before {
    left: 12px;
    right: auto;
    bottom: 12px;
    top: auto;
    width: clamp(105px, 29vw, 150px);
    border-width: 2px;
  }

  .story-after figcaption {
    top: 14px;
    right: 14px;
    bottom: auto;
  }

  .scroll-story-shade {
    background:
      linear-gradient(0deg, rgba(5, 18, 20, 1) 0%, rgba(7, 29, 31, 1) 49%, rgba(7, 26, 29, .18) 57%, transparent 64%),
      linear-gradient(90deg, rgba(5, 16, 18, .18), transparent 70%);
  }

  .scroll-story-layout {
    width: min(100% - 28px, 660px);
    grid-template-columns: 3px minmax(0, 1fr);
    gap: 17px;
    align-items: start;
    padding-top: 47svh;
    padding-bottom: clamp(24px, 5svh, 54px);
  }

  .scroll-story-marker {
    height: 54svh;
  }

  .scroll-story-copy {
    padding: 0;
  }

  .scroll-story-service {
    margin-bottom: 13px;
    font-size: .67rem;
  }

  .scroll-story-line {
    font-size: clamp(.92rem, 4vw, 1.12rem);
    line-height: 1.2;
  }

  .scroll-story-opening {
    max-width: 88%;
    font-size: clamp(2.25rem, 10vw, 3.6rem);
    line-height: .94;
  }

  .scroll-story-accent {
    font-size: clamp(1.5rem, 7vw, 2.25rem);
  }

  .scroll-story-finale {
    font-size: clamp(1.95rem, 8.4vw, 3rem);
  }

  .scroll-story-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .scroll-story-actions .button {
    padding: 12px 15px;
  }
}

@media (max-width: 760px) {
  .scroll-story {
    min-height: auto;
  }

  .scroll-story-sticky {
    position: relative;
    display: flex;
    min-height: auto;
    overflow: visible;
    flex-direction: column;
    padding: 22px 0 68px;
  }

  .scroll-story-mobile-service {
    display: block;
    order: 0;
    width: calc(100% - 28px);
    margin: 0 auto 16px;
    color: var(--story-orange);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .16em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  .scroll-story-visual {
    position: relative;
    top: auto;
    left: auto;
    order: 1;
    width: calc(100% - 28px);
    height: auto;
    aspect-ratio: 815 / 1020;
    margin: 0 auto;
    transform: none;
  }

  .story-after img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .story-before {
    left: 12px;
    bottom: 14px;
    width: clamp(108px, 34vw, 145px);
    transform: none;
  }

  .story-after figcaption {
    top: 14px;
    right: 14px;
  }

  .scroll-story-shade {
    display: none;
  }

  .scroll-story-layout {
    position: relative;
    order: 2;
    width: calc(100% - 28px);
    min-height: auto;
    margin: 34px auto 0;
    padding: 0;
    align-items: stretch;
  }

  .scroll-story-marker {
    height: auto;
    min-height: 100%;
  }

  .scroll-story-copy {
    padding: 0 0 2px;
  }

  .scroll-story-service {
    display: none;
  }

  .scroll-story-opening {
    max-width: none;
  }

  .scroll-story-line {
    color: var(--story-cream);
    opacity: calc(.08 + var(--line-reveal, 0) * .92);
    transform: translate3d(0, calc((1 - var(--line-reveal, 0)) * 26px), 0);
    filter: blur(calc((1 - var(--line-reveal, 0)) * 4px));
    transition: opacity .12s linear, transform .16s ease-out, filter .12s linear;
    font-size: max(1rem, 4vw);
  }

  .scroll-story-opening { font-size: clamp(2.25rem, 10vw, 3.6rem); }
  .scroll-story-accent { font-size: clamp(1.5rem, 7vw, 2.25rem); }
  .scroll-story-finale { font-size: clamp(1.95rem, 8.4vw, 3rem); }
  .scroll-story-accent, .scroll-story-finale { color: var(--story-orange); }
  .scroll-story-line.scroll-story-pause { margin-top: 30px; }
  .scroll-story-line + .scroll-story-line { margin-bottom: 12px; }
}

@media (max-height: 720px) and (min-width: 761px) and (max-width: 1050px) {
  .scroll-story-visual {
    height: 39svh;
  }

  .scroll-story-layout {
    padding-top: 42svh;
    padding-bottom: 16px;
  }

  .scroll-story-service {
    margin-bottom: 8px;
  }

  .scroll-story-line.scroll-story-pause {
    margin-top: 6px;
  }

  .scroll-story-finale,
  .scroll-story-actions {
    margin-top: 10px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .scroll-story {
    min-height: 100svh;
  }

  .scroll-story-sticky {
    position: relative;
  }

  .scroll-story-visual,
  .story-before {
    transform: none;
  }

  .scroll-story-marker span {
    transform: scaleY(1);
  }

  .scroll-story-line {
    color: var(--story-cream);
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
  }

  .scroll-story-accent,
  .scroll-story-finale {
    color: var(--story-orange);
  }
}

.scroll-story-opening{display:grid;gap:clamp(10px,1.4vh,18px)}
.scroll-story-seo-prefix{color:var(--story-orange);font:700 clamp(.72rem,1vw,.9rem)/1.35 var(--sans);letter-spacing:.12em;text-transform:uppercase}
@media(max-width:760px){.scroll-story-seo-prefix{font-size:.69rem;letter-spacing:.1em}}

/* assets/mixed-carousel-test.css */
body .curated-results .gallery-card video { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; background:#102326; border-radius:inherit; }
body .curated-results .gallery-card img { aspect-ratio:1; object-fit:contain; }
body .curated-results .gallery-card.mixed-video-vertical video { object-fit:cover; object-position:center; }

/* assets/styles/refinements-20260921.css */
/* JM.Micro — restrained refinements, 21 September 2026. */
:root { --serif: Georgia, 'Times New Roman', serif; --sans: Arial, Helvetica, sans-serif; }
body, button, input, select, textarea { font-family: var(--sans) !important; }
body.v15-v2 #main-content :is(h1,h2,h3), .client-voices blockquote { font-family: var(--serif) !important; }
body.v15-v2 #main-content :is(.tag,.eyebrow,.text-link,.button), .nav-links a, .footer { font-family:var(--sans) !important; }
[hidden] { display:none !important; }
.story-shortcuts { display:flex; flex-wrap:wrap; gap:12px 24px; margin:0 0 20px; }
.story-shortcuts a { color:#f4efe7; font:400 .85rem/1.5 var(--sans); text-decoration:underline; text-underline-offset:5px; letter-spacing:0; text-transform:none; }
.story-shortcuts a:hover { color:#f36f21; }
.scroll-story-service { margin-bottom:12px; }
.scroll-story { min-height:205vh; }
.scroll-story-copy { padding-block:24px; }
body.v15-v2 #main-content .scroll-story-opening { font-size:clamp(2.8rem,4.8vw,4.9rem) !important; margin:12px 0 22px !important; line-height:1.02 !important; }
body.v15-v2 #main-content .scroll-story-line { font-family:var(--sans); line-height:1.35; }
body.v15-v2 #main-content .scroll-story-accent { font-family:var(--serif); font-size:clamp(1.8rem,2.6vw,2.7rem); font-weight:400; }
body.v15-v2 #main-content .scroll-story-finale { font-family:var(--serif); font-weight:400; font-size:clamp(2rem,3.2vw,3.2rem); line-height:1.1; }
.scroll-story-line.scroll-story-pause { margin-top:12px; }
.scroll-story-visual { width:min(42vw,580px); max-height:85svh; }
body.home-mobile #main-content > :is(.curated-results,.semantic-bridge,.trust-section,.client-voices,.about,.home-faq,.contact) { padding-block:48px !important; border-top:1px solid rgba(116,139,136,.28); }
body.home-mobile #main-content .results-intro { margin-bottom:24px !important; }
body.home-mobile #main-content .curated-results .gallery-viewer { margin-block:0 !important; }
body.home-mobile #main-content .curated-results .gallery-track { padding-bottom:12px !important; }
body.home-mobile #main-content .curated-results .gallery-controls { margin-top:8px !important; margin-bottom:0 !important; }
.gallery-reading { margin-top:24px; padding-top:20px; border-top:1px solid #b9cbc6; }
body.v15-v2 #main-content .gallery-reading p { max-width:850px; margin:0; font-size:.96rem; line-height:1.65; color:#1f4a4d; }
.gallery-reading p strong { display:block; margin-bottom:5px; }
.gallery-reading-links { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px 24px; margin-top:16px; font:400 .82rem/1.5 var(--sans); color:#405d5e; }
.instagram-link { display:inline-flex; align-items:center; min-height:44px; color:#1f4a4d; font-weight:700; text-decoration:underline; text-underline-offset:5px; }
.instagram-link:hover { color:#934414; }
.forfait-summary { margin-top:20px; padding-top:18px; border-top:1px solid #b9cbc6; }
body.v15-v2 #main-content .forfait-summary p { margin:0 0 10px; font-size:.95rem; line-height:1.65; }
.client-voices-grid { margin-block:20px 10px; gap:28px; }
.client-voices-grid figure { padding:18px 0 10px; }
.client-voices blockquote { margin:12px 0 18px; }
.faq-related { margin-top:14px !important; }
.faq-related a { font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.faq-sources { font-size:.85rem !important; }
body #main-content .rates .zones-figure { height:auto !important; }
body #main-content .rates .zones-figure::before { bottom:auto !important; height:350px; }
.zones-figure figcaption { position:relative; padding:365px 4px 0; font:400 .9rem/1.6 var(--sans); color:#405d5e; }
.page-next { display:flex; gap:16px 30px; flex-wrap:wrap; padding-block:0 36px; }
.scar-note { margin-top:24px; padding:20px 0; border-top:1px solid #b9cbc6; }
body.v15-v2 #main-content .scar-note h3 { margin:0 0 12px; }
.scar-note p { max-width:800px; }
body.v15-v2 #main-content .form-preview-note { display:block; margin-top:12px; font-size:.8rem; }
html:not(.js) .scroll-story { min-height:auto; }
html:not(.js) .scroll-story-line { opacity:1 !important; filter:none !important; transform:none !important; color:#f4efe7; }
html:not(.js) .scroll-story-sticky { position:relative; }
@media(max-width:1050px) {
  .scroll-story { min-height:auto; }
  .scroll-story-sticky { position:relative; display:flex; min-height:auto; overflow:visible; flex-direction:column; padding:22px 0 40px; }
  .scroll-story-mobile-service { display:block; order:0; width:calc(100% - 28px); margin:0 auto 14px; color:#f36f21; font:700 .74rem/1.5 var(--sans); letter-spacing:.12em; text-transform:uppercase; }
  .scroll-story-mobile-service .story-shortcuts { margin:10px 0 0; }
  .scroll-story-visual { position:relative; top:auto; left:auto; right:auto; order:1; width:min(calc(100% - 28px),560px); height:auto; max-height:none; aspect-ratio:815/1020; margin:0 auto; transform:none; }
  .scroll-story-shade { display:none; }
  .scroll-story-layout { position:relative; order:2; width:min(calc(100% - 28px),660px); min-height:auto; margin:26px auto 0; padding:0; align-items:stretch; }
  .scroll-story-marker { height:auto; min-height:100%; }
  .scroll-story-copy { padding:0; }
  .scroll-story-copy > .scroll-story-service, .scroll-story-copy > .story-shortcuts { display:none; }
  .scroll-story-line { opacity:1; filter:none; transform:none; color:#f4efe7; }
  .scroll-story-line + .scroll-story-line { margin-bottom:7px; }
  .scroll-story-line.scroll-story-pause { margin-top:16px; }
  body.v15-v2 #main-content .scroll-story-opening { font-size:clamp(2.3rem,9vw,3.6rem) !important; margin:0 0 22px !important; }
  body.v15-v2 #main-content .scroll-story-finale { font-size:clamp(2rem,7.2vw,3rem); }
  .scroll-story-actions { gap:12px; }
  .story-before { transform:none; }
}
@media(max-width:760px) {
  body.home-mobile #main-content > :is(.curated-results,.semantic-bridge,.trust-section,.client-voices,.about,.home-faq,.contact) { padding-block:34px !important; }
  body.home-mobile #main-content .results-intro { margin-bottom:18px !important; }
  .gallery-reading { margin-top:16px; padding-top:16px; }
  .gallery-reading-links { gap:8px; }
  .gallery-reading-links > span { flex-basis:100%; }
  .forfait-summary { margin-top:18px; }
  .client-voices-grid { gap:12px; }
  .page-next { flex-direction:column; padding-bottom:28px; }
  body #main-content .rates .zones-figure::before { height:220px; }
  .zones-figure figcaption { padding-top:234px; font-size:.85rem; }
  body.v15-v2 #main-content .scroll-story-line { font-size:1rem; }
  body.v15-v2 #main-content .scroll-story-accent { font-size:2rem; }
  body.v15-v2 #main-content .scroll-story-finale { font-size:2.2rem; }
}
@media(prefers-reduced-motion:reduce) {
  .scroll-story { min-height:auto; }
  .scroll-story-line { opacity:1 !important; filter:none !important; transform:none !important; }
  .scroll-story-sticky { position:relative; }
}

/* assets/styles/test-video.css */

.gesture-links {margin-top:18px;}
.gesture-film {grid-column:1 / -1;margin-top:30px;max-width:960px;width:100%;justify-self:center;}
.gesture-film video {display:block;width:100%;height:auto;aspect-ratio:16/9;background:#102f31;border-radius:3px;}
.gesture-film p {font-size:.9rem!important;margin:12px 0 0!important;color:#1f4a4d;}
.gesture-film p span {opacity:.7;}
.client-voices .trust-review {margin:24px 0 10px;}
@media(max-width:1050px) and (prefers-reduced-motion:no-preference) {
html.js .scroll-story-line {opacity:calc(.08 + var(--line-reveal,0)*.92);transform:translate3d(0,calc((1 - var(--line-reveal,0))*26px),0);filter:blur(calc((1 - var(--line-reveal,0))*4px));transition:opacity .12s linear,transform .16s ease-out,filter .12s linear;}
}
body.home-mobile #main-content .semantic-bridge-grid > .gesture-film { display:block !important; }
body.home-mobile #main-content .semantic-bridge-grid > .gesture-film {padding:0!important;background:transparent!important;max-width:960px!important;border:0!important;}
body.home-mobile #main-content .gesture-film video {width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:contain!important;border:0!important;}
body.home-mobile #main-content .gesture-film p {color:#1f4a4d!important;}

/* assets/styles/update-20260922.css */
/* Ajustements validés pour la version de test du 22 septembre 2026. */
.method-title-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-top: 24px;
}

.method-merged #solution-calvitie-title {
  margin-top: 0;
}

.mobile-gesture-link {
  display: none;
}

.about-rates-link {
  margin-top: 12px;
}

.method-title-links .text-link {
  margin: 0;
}

.client-voices .trust-review strong,
.client-voices .trust-review strong span {
  color: var(--accent, #f36f21);
}

.client-voices .trust-review strong span {
  font-size: .24em;
  font-family: var(--sans);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.gallery-reading p strong {
  font-size: clamp(1.18rem, 1.8vw, 1.55rem);
  line-height: 1.2;
  letter-spacing: -.02em;
  margin-bottom: 10px;
}

.result-guide {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(28px, 5vw, 72px);
  margin-top: 30px;
  padding: clamp(28px, 4vw, 48px);
  border: 0;
  border-left: 7px solid var(--accent, #f36f21);
  background: #143e41;
  color: #f7f1e8;
}

.result-guide-heading > span {
  color: var(--accent, #f36f21);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.result-guide-heading h3 {
  max-width: 560px;
  margin: 12px 0 0;
  color: #f7f1e8;
  font: clamp(2rem, 3.4vw, 3.7rem)/.98 Georgia, "Times New Roman", serif;
  letter-spacing: -.045em;
}

.result-guide-states {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-content: center;
}

body.v15-v2 #main-content .result-guide-states p {
  margin: 0;
  padding: 19px;
  border-top: 2px solid var(--accent, #f36f21);
  background: rgba(255,255,255,.07);
  color: #e9e6de;
  font-size: .92rem;
  line-height: 1.55;
}

.result-guide-states p strong {
  display: block;
  margin: 0 0 8px;
  color: var(--accent, #f36f21);
  font: 800 .72rem/1.2 var(--sans);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.result-guide .gallery-reading-links {
  grid-column: 1 / -1;
  margin-top: 0;
}

.result-guide .instagram-link {
  color: #f7f1e8;
}

.client-voices {
  background: #f4efe7;
}

.client-voices > .wrap {
  display: grid;
  grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr);
  column-gap: clamp(40px, 7vw, 100px);
}

.client-voices > .wrap > .tag,
.client-voices > .wrap > h2,
.client-voices > .wrap > .trust-review,
.client-voices > .wrap > .text-link {
  grid-column: 1;
}

.client-voices > .wrap > h2 {
  margin-bottom: 22px;
}

.client-voices > .wrap > .client-voices-grid {
  grid-column: 2;
  grid-row: 1 / span 5;
  margin: 0;
}

.client-voices > .wrap > .text-link {
  align-self: end;
  justify-self: start;
  margin-top: 24px;
}

.contact-salon .contact-salon-grid {
  grid-template-columns: 1fr;
}

.contact-salon {
  overflow: hidden;
}

.contact-salon .contact-salon-grid > figure {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.contact-salon .contact-salon-grid > figure img {
  width: 100%;
  max-height: min(62vh, 720px);
  object-fit: cover;
}

.contact-salon .contact-salon-grid > div {
  max-width: 760px;
}

.client-video-copy > p strong {
  color: var(--petrol, #1f4a4d);
}

@media (max-width: 760px) {
  body.home-mobile #main-content .scroll-story-sticky {
    padding-top: 14px;
  }

  body.home-mobile #main-content .scroll-story-mobile-service {
    margin-bottom: 24px;
  }

  .result-guide {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-inline: 0;
    padding: 25px 21px;
  }

  .result-guide-states {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .client-voices > .wrap {
    display: block;
  }

  .client-voices > .wrap > .client-voices-grid {
    margin: 28px 0;
  }

  .client-voices .trust-review strong span {
    display: inline;
    font-size: .25em;
  }

  .contact-salon .contact-salon-grid {
    gap: 30px;
  }

  .contact-salon .contact-salon-grid > figure img {
    min-height: 0;
    max-height: none;
    height: auto;
    object-fit: contain;
  }

  body.home-mobile #main-content .story-before {
    left: 10px;
    bottom: 12px;
    width: clamp(92px, 28vw, 118px);
    border-width: 2px;
  }

  body.home-mobile #main-content .story-before figcaption {
    padding: 6px 9px;
    border-left-width: 3px;
    font-size: .62rem;
    letter-spacing: .11em;
  }

  body.home-mobile #main-content .story-after img {
    transform: translateX(2.2%) scale(1.015);
    transform-origin: center;
  }

  body.home-mobile #main-content .semantic-bridge {
    overflow: hidden;
    padding-bottom: 18px !important;
  }

  body.home-mobile #main-content .gesture-film {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-bottom: 0 !important;
    justify-self: center !important;
  }

  body.home-mobile #main-content .gesture-film video {
    border-radius: 0 !important;
  }

  body.home-mobile #main-content .gesture-film > p {
    padding-inline: 20px;
  }

  .desktop-gesture-link {
    display: none !important;
  }

  body.home-mobile #main-content .mobile-gesture-link {
    display: inline-block;
    margin: 16px 20px 0;
    color: #1f4a4d !important;
  }

  .method-title-links {
    display: none;
  }

  body.home-mobile #main-content .semantic-bridge-copy {
    margin-top: -12px !important;
  }

  body.hygiene-mobile .kit-grid > div:first-child {
    order: 1;
  }

  body.hygiene-mobile .kit-grid > .kit-copy {
    order: 2;
  }
}

/* assets/styles/measurement.css */
.measurement-consent{position:fixed;z-index:10000;right:18px;bottom:18px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:980px;margin:auto;padding:18px 20px;border:1px solid rgba(241,123,42,.65);background:#102f31;color:#fff;box-shadow:0 14px 44px rgba(0,0,0,.3);font-family:Arial,sans-serif}
.measurement-consent strong{display:block;margin-bottom:4px;font-size:1rem}.measurement-consent p{max-width:700px;margin:0;font-size:.88rem;line-height:1.45;color:#f6f0e8}.measurement-consent-actions{display:flex;flex:0 0 auto;gap:8px}.measurement-consent button{min-height:42px;padding:9px 15px;border:1px solid #f17b2a;background:transparent;color:#fff;font-weight:700;cursor:pointer}.measurement-consent button.is-primary{background:#f17b2a;color:#102f31}
@media(max-width:700px){.measurement-consent{right:10px;bottom:10px;left:10px;display:block;padding:16px}.measurement-consent-actions{margin-top:14px}.measurement-consent button{flex:1}}

/* assets/styles/accessibility-20260926.css */
/* Corrections mesurées avec Lighthouse mobile le 26 septembre 2026. */
:root {
  --accent-readable: #8f350c;
}

body.v15-v2 #main-content :is(
  .results-intro .tag,
  .gallery-card figcaption strong,
  .client-voices > .wrap > .tag,
  .client-voices .trust-review strong,
  .client-voices .trust-review strong span,
  .about-compact .tag,
  .home-faq .tag
) {
  color: #8f350c !important;
}

body.v15-v2 #main-content :is(
  .result-guide-heading > span,
  .result-guide-states p strong,
  .trust-section .tag,
  .final-contact .contact-heading > .tag,
  .final-contact .contact-card .contact-option-label
) {
  color: #ffb184 !important;
}

body.v15-v2 #main-content .first-opinion-form .photo-upload-action,
body.v15-v2 #main-content .final-contact .contact-card button[type="submit"] {
  color: #082628 !important;
}

.v12-v3 .footer-address a {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding-block: 8px;
}

