/* Identité Lumia (Méthode, oct. 2026) : habillage commun des pages intérieures.
   Chargé APRÈS le CSS propre à chaque page. Ne contient aucun contenu. */

:root{
  --gold:#5e5b57;--gold-light:#5e5b57;
  --dark:#ffffff;--dark-2:#eeebe6;--dark-3:#e3dfd9;
  --mid:#5e5b57;--muted:#5e5b57;--white:#121212;--ink:#121212;
}
html body{font-family:var(--font-texte)!important;font-weight:400!important;font-size:var(--fs-texte);line-height:1.6;background:#fff;color:var(--lu-noir);-webkit-font-smoothing:antialiased}
body *{text-transform:none!important}
h1,h2,h3,h4{font-family:var(--font-titre)!important;font-weight:500!important;letter-spacing:-0.025em!important;font-style:normal!important;text-wrap:balance}
h1 em,h2 em,h3 em,h4 em,.hero-sub em{font-style:normal!important;color:inherit!important}
p{line-height:1.6}

/* ── boutons : pilule à contour fin, cercle coupé ── */
.nav-cta,.btn-primary,.btn-gold,.btn-secondary,.booking-btn,.detail-cta,.mobile-cta,.slide-cta,.cta-btn,.btn-outline{
  display:inline-flex!important;align-items:center;justify-content:center;gap:12px;background:transparent!important;color:var(--lu-noir)!important;
  border:1px solid var(--lu-noir)!important;border-radius:999px!important;padding:13px 25px 13px 21px!important;
  font-family:var(--font-texte)!important;font-size:15px!important;font-weight:400!important;letter-spacing:.01em!important;
  text-decoration:none!important;cursor:pointer;transition:background .3s ease;box-shadow:none!important;transform:none!important;width:auto}
.nav-cta::before,.btn-primary::before,.btn-gold::before,.btn-secondary::before,.booking-btn::before,.detail-cta::before,.mobile-cta::before,.slide-cta::before,.cta-btn::before,.btn-outline::before{
  content:"";width:13px;height:13px;flex:none;border:1.2px solid currentColor;border-left-color:transparent;border-right-color:transparent;
  border-radius:50%;transform:rotate(36deg);transition:transform .45s ease}
.nav-cta:hover,.btn-primary:hover,.btn-gold:hover,.btn-secondary:hover,.detail-cta:hover,.mobile-cta:hover,.cta-btn:hover,.btn-outline:hover{background:var(--lu-survol)!important}
.nav-cta:hover::before,.btn-primary:hover::before,.btn-gold:hover::before,.btn-secondary:hover::before,.booking-btn:hover::before,.detail-cta:hover::before,.mobile-cta:hover::before,.slide-cta:hover::before,.cta-btn:hover::before,.btn-outline:hover::before{transform:rotate(126deg)}
.nav-cta:focus-visible,.btn-primary:focus-visible,.btn-gold:focus-visible,.booking-btn:focus-visible,.faq-trigger:focus-visible,.hamburger:focus-visible{outline:2px solid var(--lu-noir);outline-offset:3px}
.btn-ghost{background:none!important;border:0!important;padding:0!important;color:var(--lu-noir)!important;font-family:var(--font-label)!important;font-style:italic;font-size:20px!important;letter-spacing:-.01em!important;text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:6px;display:inline-block}
.btn-ghost:hover{text-decoration-thickness:2px!important;color:var(--lu-noir)!important}
.booking-btn,.slide-cta{color:#fff!important;border-color:#fff!important}
.booking-btn:hover,.slide-cta:hover{background:rgba(255,255,255,.1)!important}

/* ── navigation ── */
nav{position:fixed!important;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 32px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--bordure)!important;box-shadow:none!important;backdrop-filter:blur(6px)}
nav.scrolled{padding:6px 32px!important;background:rgba(255,255,255,.97)!important}
.nav-logo img{height:104px!important;width:104px!important;object-fit:contain}
nav.scrolled .nav-logo img{height:88px!important;width:88px!important}
.nav-links{gap:28px!important}
.nav-links a,nav.scrolled .nav-links a{color:var(--lu-noir)!important;font-size:15px!important;letter-spacing:0!important;border:0!important;padding-bottom:0!important}
.nav-links a:hover,.nav-links a.active,nav.scrolled .nav-links a:hover,nav.scrolled .nav-links a.active{color:var(--lu-noir)!important;text-decoration:underline;text-underline-offset:6px}
.nav-dropdown-arrow,nav.scrolled .nav-dropdown-arrow{color:var(--lu-graphite)!important}
.nav-dropdown-menu-inner{background:#fff!important;border:1px solid var(--bordure)!important;border-radius:8px;padding:8px 0}
.nav-dropdown-menu-inner::before{content:none!important}
.nav-dropdown-menu a{display:flex;align-items:center;gap:12px;padding:10px 20px!important;font-size:15px!important;letter-spacing:0!important;color:var(--lu-noir)!important;border:0!important;text-decoration:none!important}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a.active{background:var(--lu-pierre)!important;color:var(--lu-noir)!important;padding-left:20px!important}
.menu-dot,.nav-dropdown-menu .menu-dot{width:6px!important;height:6px!important;border-radius:50%;background:var(--lu-noir)!important;opacity:1!important;flex:none}
.guide-link{color:var(--lu-noir)!important}
.hamburger span{background:var(--lu-noir)!important;height:1.5px!important}
.hamburger.open span{background:var(--lu-noir)!important}

/* ── menu mobile ── */
.mobile-menu{background:#fff!important;padding:124px 24px 48px!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important}
.mobile-menu>a{font-family:var(--font-texte)!important;font-size:17px!important;color:var(--lu-noir)!important;text-decoration:none;padding:15px 0!important;border-bottom:1px solid var(--bordure)!important;width:100%;text-align:left!important;letter-spacing:0!important;display:block}
.mobile-menu>a:hover{color:var(--lu-noir)!important}
.mobile-section{width:100%;text-align:left!important;border-bottom:1px solid var(--bordure)!important}
.mobile-section:first-child{border-top:0!important}
.mobile-section-trigger{font-family:var(--font-texte)!important;font-size:17px!important;color:var(--lu-noir)!important;padding:15px 0!important;justify-content:space-between!important}
.mobile-section-trigger.open{color:var(--lu-noir)!important}
.mobile-section-arrow{color:var(--lu-noir)!important;font-size:24px!important}
.mobile-section-items{align-items:stretch!important;padding:0 0 14px 14px!important}
.mobile-section-items a{font-family:var(--font-texte)!important;font-size:16px!important;letter-spacing:0!important;color:var(--lu-graphite)!important;padding:9px 0!important;text-align:left}
.mobile-section-items a.active{color:var(--lu-noir)!important}
.mobile-menu .mobile-cta{align-self:flex-start;margin-top:28px!important;width:auto!important;color:var(--lu-noir)!important;border-bottom:1px solid var(--lu-noir)!important}

/* ── hero des pages de soin ── */
.hero{background:#fff!important;min-height:0!important;justify-content:flex-start!important;text-align:left!important;padding:176px 32px 88px!important;position:relative;overflow:clip}
.hero::after{content:"";position:absolute;right:-9%;top:55%;width:min(46vw,560px);aspect-ratio:1;border:1.5px solid var(--lu-noir);border-left-color:transparent;border-right-color:transparent;border-radius:50%;transform:translateY(-50%) rotate(36deg);pointer-events:none}
.hero-line,.hero-bg{display:none!important}
.hero-content{max-width:1160px!important;width:100%;margin:0 auto!important;text-align:left!important}
.hero-eyebrow,.hero-eyebrow span{font-family:var(--font-label)!important;font-style:italic;font-size:19px!important;letter-spacing:-.01em!important;color:var(--lu-graphite)!important}
.hero-eyebrow::before,.hero-eyebrow::after{content:none!important}
.hero h1{font-size:clamp(40px,6vw,64px)!important;line-height:1.06!important;color:var(--lu-noir)!important;max-width:13em;margin:0 0 20px!important}
.hero h1 em{color:inherit!important}
.hero-sub{font-size:22px!important;line-height:1.4!important;color:var(--lu-graphite)!important;letter-spacing:0!important;margin:0 0 36px!important}
.hero-btns{justify-content:flex-start!important;gap:20px 28px!important;align-items:center}
.hero-scroll{display:none!important}

/* ── sections courantes ── */
.section-label,.prob-label,.hero-label,.step-label,.cat-label,.card-label{font-family:var(--font-label)!important;font-style:italic;font-size:19px!important;letter-spacing:-.01em!important;color:var(--lu-graphite)!important}
.intro,.discover-section,.probs,.faq-section,.specs-strip{border-color:var(--bordure)!important}
.intro{background:var(--lu-pierre)!important}
.intro-inner{text-align:left!important;max-width:1100px!important}
.intro h2,.section-head h2,.discover-head h2,.intro-inner h2{font-size:clamp(30px,4.4vw,44px)!important;line-height:1.08!important;color:var(--lu-noir)!important}
.intro p,.intro-inner p{color:var(--lu-graphite)!important;max-width:60ch!important;margin-left:0!important;margin-right:0!important;font-size:19px!important;line-height:1.55!important}
.section-head{text-align:left!important}
.prob-grid{background:none!important;gap:40px 32px!important}
.prob-card{background:none!important;border-top:2px solid var(--lu-noir);padding:18px 0 0!important}
.prob-card:hover{background:none!important}
.prob-card h3{font-size:24px!important;line-height:1.2!important;color:var(--lu-noir)!important}
.prob-card p{font-size:17px!important;color:var(--lu-graphite)!important}
.specs-strip{background:var(--lu-pierre)!important}
.specs-inner{background:none!important;gap:0!important}
.spec-stat{background:none!important;text-align:left!important;border-top:2px solid var(--lu-noir);padding:18px 24px 0 0!important}
.spec-val{font-family:var(--font-label)!important;font-weight:400!important;font-size:34px!important;color:var(--lu-noir)!important}
.spec-lbl{font-size:15px!important;letter-spacing:0!important;color:var(--lu-graphite)!important}
.discover-head{text-align:left!important}
.discover-image img,.tech-detail-photo{border-radius:8px}

/* ── FAQ ── */
.faq-section{background:var(--lu-pierre)!important}
.faq-list{background:none!important;gap:0!important}
.faq-item{background:none!important;border-top:1px solid #d9d4cc}
.faq-item:last-child{border-bottom:1px solid #d9d4cc}
.faq-trigger{font-family:var(--font-texte)!important;font-size:18px!important;font-weight:400!important;color:var(--lu-noir)!important;padding:20px 0!important;letter-spacing:0!important}
.faq-trigger:hover{color:var(--lu-noir)!important}
.faq-arrow{color:var(--lu-noir)!important}
.faq-panel p{padding:0 0 22px!important;font-size:16px!important;color:var(--lu-graphite)!important}

/* ── réservation ── */
.booking{background:var(--lu-noir)!important;text-align:left!important}
.booking-bg{display:none}
.booking-inner{max-width:1100px!important;text-align:left!important}
.booking h2{font-size:clamp(32px,5vw,56px)!important;line-height:1.06!important;color:#fff!important;max-width:14em;margin-left:0!important}
.booking-inner p,.booking p{color:var(--lu-texte-doux-sur-noir)!important;max-width:48ch!important;margin-left:0!important;margin-right:0!important;font-size:19px!important;line-height:1.5!important}
.booking-inner p.booking-note,.booking-note{font-size:16px!important;color:var(--lu-label-sur-noir)!important;margin-top:24px!important;font-weight:400!important}
.booking-note a{color:#fff!important;text-decoration:underline;text-underline-offset:5px;font-weight:400!important}
.booking-free{background:none!important;border:0!important;padding:0!important}

/* ── pied de page ── */
footer{background:var(--lu-noir)!important;border-top:1px solid rgba(255,255,255,.14)!important;padding:48px 32px!important}
footer p{color:var(--lu-texte-doux-sur-noir)!important;font-size:14px!important}
footer p a,footer p strong{color:#fff!important;font-weight:400}
footer a{color:#fff!important}
.footer-logo img,footer>img{height:72px!important;width:72px!important;object-fit:contain;opacity:1!important}
.footer-links a{font-size:15px!important;letter-spacing:0!important;color:#fff!important;text-decoration:none}
.footer-links a:hover{text-decoration:underline;text-underline-offset:5px;color:#fff!important}

.reveal{transition:opacity .7s ease,transform .7s ease}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none!important}html{scroll-behavior:auto!important}}

@media(max-width:960px){
  nav,nav.scrolled{padding:8px 16px!important}
  .nav-logo img{height:80px!important;width:80px!important}
  nav.scrolled .nav-logo img{height:72px!important;width:72px!important}
  .nav-cta{padding:10px 16px 10px 14px!important;font-size:14px!important}
  .hero{padding:140px 20px 64px!important}
  .hero::after{right:-45%;width:90vw;top:70%}
  .booking{padding:72px 20px!important}
  footer{padding:40px 20px!important}
}

/* ═════════ compléments par famille de pages ═════════ */
.hero::before{content:none!important}
.hero p,.hero-desc{color:var(--lu-graphite)!important;margin-left:0!important;margin-right:0!important;letter-spacing:0!important}
.hero strong,.hero-desc strong,.hero-desc em,.hero-desc a{color:var(--lu-noir)!important;font-weight:500;font-style:normal}
h1 em,h2 em,h3 em,.page-hero h1 em,.hero h1 em,.booking h2 em,.tarifs-cta h2 em,.cta-section h2 em,.engagement-header h2 em,.diag-card h3 em,.hero-title-boost{color:inherit!important;font-style:normal!important}

/* en-tête des pages intérieures */
.page-hero{background:#fff!important;text-align:left!important;padding:168px max(32px,calc((100% - 1100px)/2)) 72px!important;position:relative;overflow:clip;min-height:0!important}
.page-hero::after{content:"";position:absolute;right:-9%;top:55%;width:min(42vw,520px);aspect-ratio:1;border:1.5px solid var(--lu-noir);border-left-color:transparent;border-right-color:transparent;border-radius:50%;transform:translateY(-50%) rotate(36deg);pointer-events:none}
.page-hero>*{margin-left:0!important;margin-right:0!important;position:relative;z-index:1}
.page-hero-bg,.page-hero-line,.cta-bg,.engagement-bg,.testimonials-bg,.hero-bg{display:none!important}
.page-hero h1{font-size:clamp(38px,5.4vw,60px)!important;line-height:1.06!important;color:var(--lu-noir)!important;max-width:14em;margin-bottom:20px!important}
.page-hero p{color:var(--lu-graphite)!important;font-size:19px!important;line-height:1.55!important;max-width:56ch!important}
.page-eyebrow,.page-hero-eyebrow,.eyebrow{font-family:var(--font-label)!important;font-style:italic;font-size:19px!important;letter-spacing:-.01em!important;color:var(--lu-graphite)!important;display:block;margin-bottom:14px!important}
.page-eyebrow::before,.page-eyebrow::after,.page-hero-eyebrow::before,.page-hero-eyebrow::after{content:none!important}
.tech-anchors a,.page-hero .tech-anchors a,.tech-anchor{color:var(--lu-noir)!important;border:1px solid #cfcac2!important;border-radius:999px!important;background:none!important;letter-spacing:0!important;font-size:15px!important}
.tech-anchors a:hover,.tech-anchors a.active,.page-hero .tech-anchors a:hover,.page-hero .tech-anchors a.active,.tech-anchor:hover,.tech-anchor.active{border-color:var(--lu-noir)!important;color:var(--lu-noir)!important;background:none!important}

/* bandeaux et appels à l'action sombres */
.tarifs-cta,.cta-section{background:var(--lu-noir)!important;text-align:left!important}
.tarifs-cta h2,.cta-section h2{color:#fff!important;font-size:clamp(30px,4.4vw,48px)!important;line-height:1.08!important}
.tarifs-cta p,.cta-section p{color:var(--lu-texte-doux-sur-noir)!important}
.tarifs-cta a,.cta-section a:not(.booking-btn){color:#fff!important}
.cta-section .cta-badge span{color:var(--lu-label-sur-noir)!important}
.science-strip{background:var(--lu-pierre)!important}
.science-stat{background:none!important;border-top:2px solid var(--lu-noir)}
.science-val{font-family:var(--font-label)!important;font-weight:400!important;color:var(--lu-noir)!important}
.science-label,.science-strip strong{color:var(--lu-graphite)!important}
.testimonials{background:#fff!important}
.testimonial{background:none!important;border-top:2px solid var(--lu-noir)}
.testimonial blockquote{font-style:normal!important;font-family:var(--font-texte)!important;font-weight:400!important;color:var(--lu-noir)!important;font-size:17px!important}
.stars{color:var(--lu-noir)!important}
.testimonial-author,.testimonial-author span{color:var(--lu-graphite)!important;letter-spacing:0!important}
.engagement,.engagements-section{background:var(--lu-pierre)!important}
.engagement-header .section-label{color:var(--lu-graphite)!important}
.engagement-header h2,.engagement-item h4{color:var(--lu-noir)!important}
.engagement-item p{color:var(--lu-graphite)!important}
.engagement-item{background:none!important;border-top:2px solid var(--lu-noir)!important}
.engagement-num,.engagement-accent{color:var(--lu-noir)!important}
.mid-bandeau-text small{color:var(--lu-texte-doux-sur-noir)!important}
.btn-primary-dark{background:transparent!important;color:var(--lu-noir)!important;border:1px solid var(--lu-noir)!important;border-radius:999px!important}
.bilan-btn,.map-btn,.offer-cta,.zone-btn,.sol-link{font-family:var(--font-texte)!important;font-size:15px!important;letter-spacing:.01em!important;border-radius:999px!important}
.bilan-btn,.map-btn,.offer-cta{background:transparent!important;color:var(--lu-noir)!important;border:1px solid var(--lu-noir)!important;padding:13px 25px!important;display:inline-flex;justify-content:center}
.bilan-btn:hover,.map-btn:hover,.offer-cta:hover{background:var(--lu-survol)!important}
.price-table th{color:var(--lu-noir)!important}
.hero-exclusive{background:none!important;border:1px solid #cfcac2!important}
.hero-exclusive span,.free-badge span,.unique-badge span,.trust-item span{color:var(--lu-graphite)!important;letter-spacing:0!important}
.trust-dot,.hero-exclusive-dot,.free-badge-dot{background:var(--lu-noir)!important}
.hero-title-summer,.countdown-val{color:var(--lu-noir)!important}
.hero-title-boost,.countdown-label-top,.hero-sub span{color:var(--lu-graphite)!important}

/* articles de blog */
.article-hero{background:var(--lu-pierre)!important;text-align:left!important;padding:150px max(32px,calc((100% - 820px)/2)) 56px!important}
.article-hero h1{color:var(--lu-noir)!important;margin:0 0 24px!important;max-width:none!important;font-size:clamp(32px,4.6vw,52px)!important;line-height:1.08!important}
.article-hero-top a,.breadcrumb,.breadcrumb a,.article-meta,.article-meta span{color:var(--lu-graphite)!important;letter-spacing:0!important}
.article-hero-top a:hover,.breadcrumb a:hover{color:var(--lu-noir)!important;text-decoration:underline}
.article-meta{justify-content:flex-start!important}
.article-body a{color:var(--lu-noir)!important;text-decoration:underline;text-underline-offset:4px}
.article-cta{background:var(--lu-noir)!important;text-align:left!important;padding-left:max(32px,calc((100% - 820px)/2))!important;padding-right:max(32px,calc((100% - 820px)/2))!important}
.article-cta h3{color:#fff!important}
.article-cta p{color:var(--lu-texte-doux-sur-noir)!important;margin-left:0!important}
.related{background:var(--lu-pierre)!important}
.related h3{text-align:left!important;max-width:960px;margin-left:auto!important;margin-right:auto!important}
.related-card{background:#fff!important;border:1px solid var(--bordure)!important;border-radius:8px}
.related-card:hover{border-color:var(--lu-noir)!important}
.related-card .cat,.blog-cat{font-family:var(--font-label)!important;font-style:italic;font-size:17px!important;letter-spacing:-.01em!important;color:var(--lu-graphite)!important}

/* liste du blog */
.blog-grid{gap:40px 32px!important}
.blog-card{background:#fff!important;border:0!important;border-top:2px solid var(--lu-noir)!important;border-radius:0!important}
.blog-card:hover{transform:none!important;border-color:var(--lu-noir)!important}
.blog-featured{background:var(--lu-pierre)!important}
.blog-card h2{font-size:24px!important;line-height:1.2!important;color:var(--lu-noir)!important}
.blog-card p{font-size:16px!important;color:var(--lu-graphite)!important}
.blog-card-footer{border-top:1px solid var(--bordure)!important}
.blog-meta{font-size:14px!important;letter-spacing:0!important;color:var(--lu-graphite)!important}
.blog-read{font-family:var(--font-label)!important;font-style:italic;font-size:18px!important;letter-spacing:-.01em!important;color:var(--lu-noir)!important;text-decoration:underline;text-underline-offset:5px}
.hero::after,.page-hero::after{background:none!important;height:auto!important;bottom:auto!important}

/* ═════════ renforts de spécificité ═════════ */
html body .nav-cta.nav-cta,html body .btn-primary.btn-primary,html body .btn-gold.btn-gold,html body .btn-secondary.btn-secondary,
html body .detail-cta.detail-cta,html body .mobile-cta.mobile-cta,html body .cta-btn.cta-btn,html body .btn-outline.btn-outline,
html body .bilan-btn.bilan-btn,html body .map-btn.map-btn,html body .offer-cta.offer-cta,html body .diag-btn.diag-btn{
  background:transparent!important;color:var(--lu-noir)!important;border:1px solid var(--lu-noir)!important;border-radius:999px!important}
html body .nav-cta.nav-cta:hover,html body .btn-primary.btn-primary:hover,html body .btn-gold.btn-gold:hover,html body .btn-secondary.btn-secondary:hover,
html body .detail-cta.detail-cta:hover,html body .cta-btn.cta-btn:hover,html body .bilan-btn.bilan-btn:hover,html body .map-btn.map-btn:hover,
html body .offer-cta.offer-cta:hover,html body .diag-btn.diag-btn:hover{background:var(--lu-survol)!important;color:var(--lu-noir)!important}
html body .booking-btn.booking-btn,html body .slide-cta.slide-cta,html body .cta-section .cta-btn.cta-btn,html body .tarifs-cta .btn-primary.btn-primary,
html body .diag-card .diag-btn.diag-btn,html body .engagement .btn-primary.btn-primary{background:transparent!important;color:#fff!important;border:1px solid #fff!important}
html body .booking-btn.booking-btn:hover,html body .slide-cta.slide-cta:hover,html body .cta-section .cta-btn.cta-btn:hover,html body .tarifs-cta .btn-primary.btn-primary:hover,
html body .diag-card .diag-btn.diag-btn:hover{background:rgba(255,255,255,.12)!important;color:#fff!important}
html body .cta-section .cta-badge{background:none!important;border:1px solid rgba(255,255,255,.35)!important}

/* petits textes : plus d'espacement de lettres hérité */
body *:not(h1):not(h2):not(h3):not(h4){letter-spacing:0!important}
.page-hero::after{right:-18%}
.hero::after{right:-14%}

/* titres de section alignés à gauche */
.section-header,.pillars-intro,.engagement-header,.intro-bandeau-inner,.obj-inner>.section-header{text-align:left!important}
.section-header p,.pillars-intro p,.engagement-header p,.intro-bandeau-inner p{margin-left:0!important;margin-right:0!important}
.section-header h2,.pillars-intro h2,.engagement-header h2{font-size:clamp(30px,4.4vw,44px)!important;line-height:1.08!important}

/* page Diagnostic (en-tête à styles en ligne) et boutons sans classe */
.hero::after{left:auto!important;bottom:auto!important}
.hero-line-r{display:none!important}
a[style*="background:var(--gold)"],a[style*="background: var(--gold)"],a[style*="background:#B89"]{background:transparent!important;color:var(--lu-noir)!important;border:1px solid var(--lu-noir)!important;border-radius:999px!important;font-family:var(--font-texte)!important;font-size:15px!important;font-weight:400!important;padding:13px 25px!important}
.cta-strip a[style*="background"],.cta-section a[style*="background"],.booking a[style*="background"]{color:#fff!important;border-color:#fff!important}
.hero [style*="rgba(253,251,249"],.hero [style*="text-transform:uppercase"]{color:var(--lu-graphite)!important;font-family:var(--font-texte)!important}
section[style*="--dark-2"],section[style*="--dark-3"]{background:var(--lu-pierre)!important}
.cta-block p,.cta-block p a,.cta-block span{color:var(--lu-graphite)!important}
.cta-block a{color:var(--lu-noir)!important;border:1px solid var(--lu-noir)!important;border-radius:999px!important;background:transparent!important;font-family:var(--font-texte)!important;font-size:15px!important;padding:13px 25px!important}
.cta-block p a{border:0!important;padding:0!important;text-decoration:underline}
.cta-block h2,.cta-block h2 em{color:var(--lu-noir)!important}

/* l'image suit directement le bloc de texte, sans bande blanche */
.intro + .discover-section,.discover-photo{padding-top:0!important;margin-top:0!important}
.discover-photo + .probs + .specs-strip + .discover-section{padding-top:96px!important}
.intro{margin-bottom:0!important}

/* bandes de chiffres clés : fond blanc, sans filets de bordure */
.specs-strip,.stats-section,.trust-strip{background:#fff!important;border-top:0!important;border-bottom:0!important}

/* section de réservation identique sur tout le site (référence : accueil) */
.booking{padding:112px 32px!important;text-align:left!important;position:relative;overflow:hidden}
.booking-inner{max-width:1100px!important;margin:0 auto!important;position:relative;z-index:2}
.booking h2{font-size:clamp(32px,5vw,56px)!important;line-height:1.06!important;color:#fff!important;max-width:14em;margin:0 0 20px!important}
.booking-inner>p{font-size:19px!important;color:var(--lu-texte-doux-sur-noir)!important;max-width:48ch!important;margin:0 0 36px!important;line-height:1.5!important}
.booking-inner>p.booking-note{font-size:16px!important;color:var(--lu-label-sur-noir)!important;margin:24px 0 0!important;max-width:none!important}
.booking-note a{color:#fff!important;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
@media(max-width:960px){.booking{padding:72px 20px!important}}

/* menu : petit cercle coupé de la charte devant chaque entrée */
.menu-dot,.nav-dropdown-menu .menu-dot{width:13px!important;height:13px!important;flex:none;background:none!important;border:1.2px solid var(--lu-noir)!important;border-left-color:transparent!important;border-right-color:transparent!important;border-radius:50%!important;transform:rotate(36deg);transition:transform .45s ease;opacity:1!important}
.nav-dropdown-menu a:hover .menu-dot{transform:rotate(126deg)}
.mobile-section-items a{display:flex!important;align-items:center;gap:12px}
.mobile-section-items a::before{content:"";width:13px;height:13px;flex:none;border:1.2px solid var(--lu-noir);border-left-color:transparent;border-right-color:transparent;border-radius:50%;transform:rotate(36deg)}

/* lien « Blog » du menu mobile : plus de doré en ligne */
.mobile-section-trigger a[style*="color"]{color:var(--lu-noir)!important}


/* pied de page unique : texte de présentation + mentions */
.footer-text{max-width:640px}
.footer-text p{font-size:14px!important;line-height:1.6!important;color:var(--lu-texte-doux-sur-noir)!important;margin:0!important}
.footer-text p+p{margin-top:10px!important}
.footer-text a{color:#fff!important;text-decoration:underline;text-underline-offset:4px}
footer{display:flex!important;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px 40px}
@media(max-width:960px){footer{flex-direction:column;align-items:flex-start}}

/* en-têtes de section alignés sur la largeur de contenu */
.section-header,.pillars-intro,.engagement-header{max-width:1100px;margin-left:auto!important;margin-right:auto!important}
/* page Équipe : fonction sous le nom en noir, sans numéros */
.team-card .team-title{color:var(--lu-noir)!important;font-size:16px!important;margin-bottom:16px!important}
.team-role{color:var(--lu-graphite)!important}

/* page Équipe : « L'ADN de l'équipe » */
.equipe-values .section-header{max-width:1100px;margin:0 auto 48px!important;text-align:left!important}
.values-grid{background:none!important;gap:40px 32px!important}
.value-item{background:none!important;border-top:2px solid var(--lu-noir);padding:18px 0 0!important}
.value-item h4{font-size:24px!important;line-height:1.2!important;color:var(--lu-noir)!important}
.value-item p{font-size:17px!important;color:var(--lu-graphite)!important;line-height:1.6!important}

/* liens du site : jamais le bleu par défaut du navigateur */
.pres-row-val,.pres-row-label,.contact-row-val,.contact-row-label{font-family:var(--font-texte)!important}
.pres-row-val,.contact-row-val{color:var(--lu-noir)!important}
.pres-row-val a,.contact-row-val a,.map-address a{color:inherit!important;text-decoration:none!important}
.pres-row-val a:hover,.contact-row-val a:hover{text-decoration:underline!important;text-underline-offset:4px}
a.blog-card,a.related-card,a.nav-logo,.footer-logo a{color:inherit}

/* téléphone : pas de cercle décoratif dans les en-têtes */
@media(max-width:768px){.hero::after,.page-hero::after{display:none!important}}
