/* V109 - refresh visuel accueil, sans suppression de contenu */
.v109-topnote{background:linear-gradient(90deg,#17130e,#2a2117,#17130e);color:#f6e7bd;text-align:center;padding:10px 16px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid rgba(214,178,102,.28);position:relative;z-index:20}
.v109-topnote a{color:#fff;text-decoration:none;font-weight:700;margin-left:8px}
.hero.v109-hero{min-height:86vh;display:grid;align-items:center;overflow:hidden}
.hero.v109-hero .hero-media{filter:saturate(.88) contrast(1.03);transform:scale(1.025)}
.hero.v109-hero .hero-overlay{background:linear-gradient(90deg,rgba(15,12,9,.88) 0%,rgba(15,12,9,.72) 44%,rgba(15,12,9,.30) 72%,rgba(15,12,9,.12) 100%)}
.hero.v109-hero .hero-content{max-width:760px;margin-left:max(6vw,32px);padding:72px 54px 64px;border:1px solid rgba(235,211,157,.28);background:linear-gradient(145deg,rgba(21,17,12,.73),rgba(21,17,12,.43));backdrop-filter:blur(8px);box-shadow:0 30px 80px rgba(0,0,0,.28);border-radius:2px;position:relative}
.hero.v109-hero .hero-content:before{content:"ÉNERGIE CHRISTINE";position:absolute;top:22px;right:28px;font-size:.65rem;letter-spacing:.22em;color:rgba(246,226,181,.62)}
.hero.v109-hero h1{font-size:clamp(3.1rem,6vw,6.4rem);line-height:.91;letter-spacing:-.035em;margin-bottom:24px}
.hero.v109-hero h1 em{color:#efdca9;font-weight:500}
.hero.v109-hero .hero-copy{max-width:610px;font-size:1.06rem;line-height:1.85;color:rgba(255,255,255,.86)}
.hero.v109-hero .hero-actions{gap:12px;margin-top:28px;flex-wrap:wrap}
.hero.v109-hero .btn{min-height:52px;padding:0 25px}
.v109-local{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 0}
.v109-local span{border:1px solid rgba(240,220,171,.28);background:rgba(255,255,255,.055);color:#f4e7c7;padding:9px 12px;font-size:.76rem;letter-spacing:.04em}
.v109-welcome{padding:34px 5vw;background:#f7f2e9;border-bottom:1px solid rgba(95,77,48,.12)}
.v109-welcome-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}
.v109-intro-card{background:#fff;padding:34px;border:1px solid rgba(111,87,49,.15);box-shadow:0 18px 48px rgba(64,48,28,.08)}
.v109-intro-card .eyebrow{color:#9a7441}
.v109-intro-card h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1;margin:8px 0 14px;color:#1f1a14}
.v109-intro-card p{color:#675c4e;line-height:1.75;max-width:700px}
.v109-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.v109-choice{background:#1d1812;color:#fff;padding:24px;text-decoration:none;min-height:160px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #2c241a;transition:.25s ease}
.v109-choice:hover{transform:translateY(-3px);border-color:#caa766}
.v109-choice strong{font-family:"Cormorant Garamond",serif;font-size:1.55rem;font-weight:600;color:#f2dfac}
.v109-choice small{margin-top:7px;color:rgba(255,255,255,.65);line-height:1.5}
.v109-signature-strip{max-width:1200px;margin:0 auto;padding:26px 5vw 6px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.v109-signature-strip div{padding:18px 16px;border-top:1px solid #d4b67a;background:rgba(255,255,255,.65)}
.v109-signature-strip strong{display:block;font-family:"Cormorant Garamond",serif;font-size:1.25rem;color:#2c241b}
.v109-signature-strip span{display:block;margin-top:4px;font-size:.77rem;color:#746857;line-height:1.5}
@media (max-width:900px){
.hero.v109-hero{min-height:78vh}.hero.v109-hero .hero-content{margin:24px 18px;padding:60px 24px 34px;max-width:none}.hero.v109-hero .hero-overlay{background:rgba(15,12,9,.62)}.hero.v109-hero h1{font-size:clamp(2.8rem,13vw,4.7rem)}
.v109-welcome-inner{grid-template-columns:1fr}.v109-signature-strip{grid-template-columns:1fr 1fr}.v109-choice-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){.v109-topnote{font-size:.66rem;line-height:1.45}.v109-welcome{padding:22px 16px}.v109-intro-card{padding:25px 20px}.v109-choice-grid{grid-template-columns:1fr}.v109-signature-strip{grid-template-columns:1fr;padding:18px 16px 0}.hero.v109-hero .hero-proof{display:grid;gap:7px}.hero.v109-hero .hero-content:before{right:20px;font-size:.56rem}}

/* V111 — correction sûre : aucun contenu du hero ne peut être rogné */
@media (min-width:981px){
  .hero.v109-hero{
    height:auto!important;
    min-height:100vh!important;
    padding:145px 0 72px;
    align-items:center;
    overflow:hidden;
  }
  .hero.v109-hero .hero-content{
    max-width:760px;
    margin-left:max(6vw,32px);
    margin-top:0!important;
    padding:66px 52px 52px;
  }
  .hero.v109-hero .hero-content:before{top:20px;right:26px}
  .hero.v109-hero h1{
    font-size:clamp(3.2rem,5.6vw,5.9rem);
    line-height:.92;
    margin-bottom:22px;
  }
  .hero.v109-hero .hero-copy{font-size:1.04rem;line-height:1.72;max-width:610px}
  .hero.v109-hero .hero-actions{margin-top:24px}
  .hero.v109-hero .hero-proof{margin-top:24px}
  .hero.v109-hero .v109-local{margin-top:18px}
  .booking-float{left:18px;bottom:18px;transform:scale(.9);transform-origin:left bottom}
  .floating-shop-v34{right:18px;bottom:132px;transform:scale(.88);transform-origin:right bottom;animation:none}
  .v21-audio-toggle{right:18px;bottom:78px;transform:scale(.9);transform-origin:right bottom}
  .ce-install-only{right:16px!important;bottom:16px!important;transform:scale(.88)!important;transform-origin:right bottom!important}
}

@media (min-width:981px) and (max-height:820px){
  .hero.v109-hero{padding-top:125px;padding-bottom:52px}
  .hero.v109-hero .hero-content{padding:58px 46px 44px}
  .hero.v109-hero h1{font-size:clamp(3rem,5vw,4.9rem)}
  .hero.v109-hero .hero-copy{line-height:1.58}
}
