:root{--p:#570173;--d:#260030;--x:#f3268b;--ink:#302832}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 system-ui,"Segoe UI",sans-serif;color:var(--ink);overflow-x:hidden}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}header{position:absolute;z-index:30;width:100%;padding:18px 0}.nav{display:flex;justify-content:space-between;align-items:center}.brand img,footer img{width:180px;filter:brightness(0) invert(1)}.desktop{display:flex;gap:6px;padding:6px;border-radius:32px;background:#ffffff18;border:1px solid #ffffff30}.desktop a{color:#fff;text-decoration:none;padding:8px 13px;font-weight:750}.pill{background:var(--x);border-radius:24px}.hamb{display:none;position:relative;width:56px;height:56px;border:1px solid #ffffff88;border-radius:19px;background:linear-gradient(135deg,#ffffff66,#ffffff1b);box-shadow:0 0 30px #f3268b66;cursor:pointer}.hamb span{position:absolute;left:14px;width:28px;height:3px;background:#fff;border-radius:9px}.hamb span:nth-child(1){top:17px}.hamb span:nth-child(2){top:26px}.hamb span:nth-child(3){top:35px}.mobile-panel{position:fixed;inset:0;z-index:25;padding:85px 14px;background:linear-gradient(145deg,#270030ed,#760584ed);backdrop-filter:blur(16px)}.mobile-card{max-width:430px;margin:auto;padding:16px;border-radius:30px;background:#fff;box-shadow:0 35px 100px #190020aa}.close{float:right;width:42px;height:42px;border:0;border-radius:14px;background:#f5e6f3;color:var(--p);font-size:28px}.mobile-card a{clear:both;display:flex;gap:15px;margin:8px 0;padding:15px;border:1px solid #eaddeb;border-radius:16px;color:var(--ink);text-decoration:none;font-size:18px}.mobile-card .book{color:#fff;background:linear-gradient(135deg,var(--p),var(--x))}.locked{overflow:hidden}.hero{min-height:790px;display:grid;align-items:center;color:#fff;background:radial-gradient(circle at 82% 15%,#a849b7,transparent 35%),linear-gradient(125deg,var(--d),#610578 60%,#9c2b8b)}.hero-grid,.cols{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.hero h1{font-size:clamp(3rem,5vw,5.6rem);line-height:.98;letter-spacing:-.05em;margin:.2em 0}.hero h2{color:#ffd4e9}.over{font-size:.75rem;letter-spacing:.2em;font-weight:900}.pink{color:var(--x)}.buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{padding:14px 20px;border-radius:30px;color:#fff;text-decoration:none;font-weight:850}.hot{background:var(--x);animation:glow 3s infinite}.glass{border:1px solid #ffffff66}.visual{height:560px;position:relative;display:grid;place-items:center}.halo{position:absolute;width:510px;height:510px;border-radius:50%;background:#ff62ae44;filter:blur(20px);animation:pulse 5s infinite}.fade{position:relative;overflow:hidden}.visual .fade{width:490px;height:570px;border-radius:46% 46% 28px 28px}.fade img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:fadeB 12s infinite}.fade img:first-child{animation-name:fadeA}.float{position:absolute;padding:14px;border-radius:16px;background:#fffffff0;color:var(--ink);animation:float 4s infinite}.a{right:-10px;top:20%}.b{left:-30px;bottom:13%}.marquee{overflow:hidden;padding:18px 0;border-block:1px solid #eadfeb}.track{display:flex;width:max-content;animation:loop 36s linear infinite;will-change:transform}.group{flex:0 0 auto;display:flex;align-items:center;gap:30px;padding-right:30px;white-space:pre;color:var(--p);font-weight:850}.group i{color:var(--x)}.section{padding:105px 0}.title{font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.08}.photo{height:470px;border-radius:32px}.photo img{animation-delay:1.5s}.soft{background:#fcf8fc}.center{text-align:center;max-width:800px;margin:0 auto 50px}.cards,.prices{display:grid;gap:20px}.cards{grid-template-columns:repeat(4,1fr)}.cards article,.prices article{padding:30px;border:1px solid #eadfeb;border-radius:25px;background:#fff;box-shadow:0 12px 35px #40004c0d}.cards span{display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:#f2e4f6;color:var(--p);font-size:30px;animation:float 4s infinite}.cards h3{color:var(--x)}.forest{min-height:480px;display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,#280034ee,#47004d55),url(images/forest.webp) center/cover fixed}.prices{grid-template-columns:repeat(3,1fr)}.prices article{text-align:center}.prices strong{display:block;color:var(--p);font-size:35px}.featured{position:relative;border:2px solid var(--x)!important}.featured em{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 12px;border-radius:20px;background:var(--x);color:#fff;font-size:11px}.cal{padding:14px;border-radius:28px;box-shadow:0 25px 80px #2900351c}.contact{padding:95px 0;color:#fff;background:linear-gradient(125deg,var(--d),#720486,#a82983)}.vertical{display:grid}.white{background:#fff;color:var(--p)}footer{padding:40px 0;background:#1f0029;color:#fff}.foot{display:flex;justify-content:space-between;align-items:center}@keyframes loop{to{transform:translateX(-33.333333%)}}@keyframes fadeA{0%,42%{opacity:1;transform:scale(1)}50%,92%{opacity:0;transform:scale(1.08)}100%{opacity:1}}@keyframes fadeB{0%,42%{opacity:0;transform:scale(1.08)}50%,92%{opacity:1;transform:scale(1)}100%{opacity:0}}@keyframes pulse{50%{transform:scale(1.1)}}@keyframes float{50%{transform:translateY(-10px)}}@keyframes glow{50%{box-shadow:0 0 35px #ff4caacc}}@media(max-width:900px){.desktop{display:none}.hamb{display:block}.hero-grid,.cols{grid-template-columns:1fr}.hero-grid{padding-top:100px}.hero-copy{text-align:center}.visual{height:490px}.visual .fade{width:370px;height:450px}.cards{grid-template-columns:repeat(2,1fr)}.prices{grid-template-columns:1fr}.forest{background-attachment:scroll}}@media(max-width:580px){.brand img{width:145px}.hero{min-height:1000px}.visual .fade{width:290px;height:390px}.cards{grid-template-columns:1fr}.section{padding:75px 0}.track{animation-duration:24s}.group{gap:22px;padding-right:22px}.foot{display:grid}}

/* Effet premium au survol du menu principal */
.desktop a{position:relative;overflow:hidden;transition:color .28s ease,background .28s ease,transform .28s ease,box-shadow .28s ease}.desktop a:not(.pill)::before{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;border-radius:99px;background:linear-gradient(90deg,#ff73be,#fff);transform:scaleX(0);transform-origin:center;transition:transform .28s ease}.desktop a:not(.pill):hover,.desktop a:not(.pill):focus-visible{color:#fff;background:rgba(255,255,255,.13);transform:translateY(-2px);box-shadow:0 8px 24px rgba(19,0,26,.16)}.desktop a:not(.pill):hover::before,.desktop a:not(.pill):focus-visible::before{transform:scaleX(1)}.desktop .pill:hover,.desktop .pill:focus-visible{transform:translateY(-2px) scale(1.03);background:#ff3a9a;box-shadow:0 10px 28px rgba(243,38,139,.45)}.desktop a:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Survol principal arrondi */
.desktop a{border-radius:999px;isolation:isolate}.desktop a:not(.pill)::before{inset:0!important;width:auto!important;height:auto!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.10))!important;transform:scale(.88)!important;opacity:0;z-index:-1;transition:transform .28s ease,opacity .28s ease!important}.desktop a:not(.pill):hover::before,.desktop a:not(.pill):focus-visible::before{transform:scale(1)!important;opacity:1}.desktop a:not(.pill):hover,.desktop a:not(.pill):focus-visible{background:transparent!important;box-shadow:0 8px 24px rgba(19,0,26,.18),inset 0 0 0 1px rgba(255,255,255,.18)!important}.desktop .pill{border-radius:999px!important}

/* Correctifs mobile : menu compact et suppression du débordement horizontal */
html,body{max-width:100%;overflow-x:hidden}.hero,.visual,.marquee,.section,.forest,.contact,footer{max-width:100%;overflow-x:hidden}.mobile-panel{width:100%;max-width:100vw;overflow-x:hidden}.mobile-card{width:calc(100% - 8px);max-width:390px;box-sizing:border-box}.mobile-card a{min-width:0;max-width:100%;word-break:normal;overflow-wrap:anywhere}.mobile-card b{min-width:0}.track{max-width:none}.float{max-width:calc(100vw - 28px)}
@media(max-width:580px){.wrap{width:calc(100% - 28px)}.mobile-panel{padding:72px 10px 16px}.mobile-card{width:100%;max-width:360px;padding:12px;border-radius:24px}.mobile-card a{gap:10px;margin:6px 0;padding:12px 13px;font-size:16px;border-radius:14px}.close{width:38px;height:38px;font-size:25px}.hamb{flex:0 0 50px;width:50px;height:50px}.hamb span{left:12px;width:26px}.hamb span:nth-child(1){top:15px}.hamb span:nth-child(2){top:24px}.hamb span:nth-child(3){top:33px}.visual{width:100%;min-width:0}.visual .fade{max-width:calc(100vw - 54px)}.a{right:0}.b{left:0}.cal{max-width:100%;overflow:hidden}.calendly-inline-widget{min-width:0!important;width:100%!important}.foot{max-width:100%}}
@media(max-width:360px){.mobile-panel{padding-inline:7px}.mobile-card{padding:10px;border-radius:21px}.mobile-card a{padding:10px 11px;font-size:15px}.brand img{width:132px}.hamb{flex-basis:46px;width:46px;height:46px}.hamb span{left:11px;width:24px}.hamb span:nth-child(1){top:14px}.hamb span:nth-child(2){top:22px}.hamb span:nth-child(3){top:30px}}

/* Correctif final : aucune barre visible, défilement vertical conservé */
html{overflow-x:clip;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body{width:100%;max-width:100%;overflow-x:clip}.hero{position:relative;width:100%;overflow:hidden}.visual{min-width:0;overflow:visible}.marquee{width:100%;max-width:100vw;overflow:hidden}.mobile-panel{overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.mobile-panel::-webkit-scrollbar{width:0;height:0;display:none}
@media(max-width:900px){.hero-grid{min-width:0}.hero-grid>*{min-width:0}.visual{overflow:hidden}.a{right:8px}.b{left:8px}.mobile-card{width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 90px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.mobile-card::-webkit-scrollbar{width:0;height:0;display:none}}
@media(max-width:580px){.mobile-panel{padding:70px 8px 12px}.mobile-card{width:calc(100vw - 16px);max-width:350px}.visual .fade{width:min(290px,calc(100vw - 54px))}.float{font-size:.78rem;padding:10px 12px}.a{right:6px}.b{left:6px}}

/* Effets premium au survol des prestations et tarifs */
@media (hover:hover) and (pointer:fine){
  .cards article,.prices article{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease,background .35s ease}
  .cards article::before,.prices article::before{content:"";position:absolute;z-index:-1;inset:-2px;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(243,38,139,.15),transparent 42%);opacity:0;transition:opacity .35s ease}
  .cards article::after,.prices article::after{content:"";position:absolute;z-index:-1;width:130px;height:130px;right:-72px;bottom:-76px;border-radius:50%;background:linear-gradient(135deg,rgba(243,38,139,.20),rgba(87,1,115,.12));transition:transform .45s ease}
  .cards article:hover,.prices article:hover{transform:translateY(-10px) scale(1.025);border-color:rgba(243,38,139,.38);box-shadow:0 28px 70px rgba(52,0,65,.20);background:linear-gradient(145deg,#fff,#fff9fc)}
  .cards article:hover::before,.prices article:hover::before{opacity:1}
  .cards article:hover::after,.prices article:hover::after{transform:scale(1.55)}
  .cards article span{transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,background .38s ease}
  .cards article:hover span{transform:translateY(-5px) rotate(7deg) scale(1.08);background:linear-gradient(145deg,#fde7f4,#eadcf7);box-shadow:0 14px 28px rgba(87,1,115,.16)}
  .cards article h3,.prices article h3,.prices article strong{transition:color .3s ease,transform .3s ease}
  .cards article:hover h3,.prices article:hover h3,.prices article:hover strong{color:#f3268b;transform:translateY(-2px)}
  .prices .featured:hover{transform:translateY(-10px) scale(1.035)}
}

/* Blocs prestations et packs plus grands */
.cards{gap:26px}.cards article{min-height:310px;padding:40px 34px;border-radius:30px}.cards article span{width:72px;height:72px;font-size:36px;border-radius:21px;margin-bottom:24px}.cards article h3{font-size:1.42rem;margin:0 0 14px}.cards article p{font-size:1.02rem;line-height:1.7}.prices{gap:30px;align-items:stretch}.prices article{min-height:330px;padding:48px 38px;border-radius:30px;display:flex;flex-direction:column;justify-content:center}.prices article>b{font-size:1.08rem;color:var(--p)}.prices article h3{font-size:1.55rem;margin:18px 0}.prices article strong{font-size:2.8rem;line-height:1.1}.prices .featured{transform:translateY(-10px) scale(1.02)}
@media(max-width:1100px) and (min-width:901px){.cards{grid-template-columns:repeat(2,1fr)}.cards article{min-height:270px}.prices article{padding:42px 28px}}
@media(max-width:900px){.cards article{min-height:260px;padding:34px 28px}.prices article{min-height:280px;padding:38px 30px}.prices .featured{transform:none}}
@media(max-width:580px){.cards{gap:18px}.cards article{min-height:240px;padding:30px 24px;border-radius:25px}.cards article span{width:64px;height:64px;font-size:31px}.prices{gap:22px}.prices article{min-height:250px;padding:34px 24px;border-radius:25px}.prices article strong{font-size:2.45rem}}

/* Correctif badge Le plus choisi */
.prices{padding-top:22px}.prices article{overflow:visible!important}.prices .featured{position:relative;padding-top:58px!important}.prices .featured em{top:-18px!important;left:50%!important;z-index:10;display:block;min-width:190px;padding:10px 22px!important;border:4px solid #fcf8fc;border-radius:999px!important;line-height:1.2;text-align:center;white-space:nowrap;transform:translateX(-50%)!important;box-shadow:0 10px 25px rgba(243,38,139,.25)}
@media(max-width:580px){.prices{padding-top:18px}.prices .featured{padding-top:54px!important}.prices .featured em{top:-16px!important;min-width:170px;padding:9px 18px!important;font-size:10px!important}}

/* Intégration mobile améliorée du portrait et des badges */
@media(max-width:580px){
  .visual{height:455px;margin-top:18px;padding:0 14px;overflow:hidden;border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
  .visual .halo{width:320px;height:320px;opacity:.75}
  .visual .fade{width:min(278px,calc(100vw - 82px));height:385px;margin-top:12px;border-radius:42% 42% 25px 25px;box-shadow:0 22px 55px rgba(30,0,40,.38)}
  .visual .fade img{object-position:58% center}
  .visual .float{z-index:4;max-width:175px;padding:9px 13px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,255,255,.91);box-shadow:0 10px 28px rgba(32,0,42,.22);backdrop-filter:blur(10px);font-size:.73rem;line-height:1.2;white-space:nowrap}
  .visual .a{top:82px;right:12px;left:auto}
  .visual .b{left:12px;right:auto;bottom:48px}
}
@media(max-width:380px){
  .visual{height:425px;padding-inline:8px;border-radius:24px}
  .visual .fade{width:min(255px,calc(100vw - 68px));height:355px}
  .visual .float{max-width:158px;padding:8px 11px;font-size:.68rem}
  .visual .a{top:72px;right:8px}
  .visual .b{left:8px;bottom:42px}
}

/* Correctif définitif : aucun ascenseur sur les cartes */
.cards,.prices{overflow:visible!important;scrollbar-width:none!important;-ms-overflow-style:none!important}.cards::-webkit-scrollbar,.prices::-webkit-scrollbar,.cards article::-webkit-scrollbar,.prices article::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.cards article,.prices article{overflow:hidden!important;max-height:none!important;scrollbar-width:none!important;-ms-overflow-style:none!important}.cards article:hover,.prices article:hover{transform:translateY(-8px)!important}.prices .featured:hover{transform:translateY(-8px)!important}.prices .featured{overflow:visible!important}.prices .featured::before,.prices .featured::after{border-radius:30px;overflow:hidden}.prices .featured em{overflow:visible!important}
@media(max-width:900px){.cards article:hover,.prices article:hover,.prices .featured:hover{transform:none!important}.cards article,.prices article{touch-action:pan-y}}
