/* Ladyness Coiffure : système commun de la maquette */
:root{--ivoire:#FBF7F0;--poudre:#F3E6DA;--nude:#E6CDB9;--or:#C9A24B;--or-txt:#85601A;--bronze:#8F6118;--bronze-f:#6F4A10;--nuit:#21150E;--nuit-2:#33231A;--txt:#2A1C14;--txt-2:#65523F;--ligne:#E3D5C4;--r:20px;--ease:cubic-bezier(.22,.8,.26,1)}
.site{container:site/inline-size;background:var(--ivoire);color:var(--txt);font-family:'Manrope',system-ui,sans-serif;font-size:16px;line-height:1.65;min-height:100%;overflow-x:clip}
.site *{box-sizing:border-box}
.site img{display:block;width:100%;height:100%;object-fit:cover}
.site a{color:inherit;text-decoration:none}
.site h1,.site h2,.site h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;margin:0;line-height:1.14;letter-spacing:-.01em;text-wrap:balance}
.site h1{font-size:clamp(44px,5.2vw,76px)}.site h2{font-size:clamp(32px,3.5vw,50px)}.site h3{font-size:24px}
.site h1 em,.site h2 em{color:var(--or-txt);font-style:italic;padding-bottom:.08em;display:inline-block}
.site p{margin:0}
.wrap{max-width:1280px;margin:0 auto;padding-inline:56px}
.sec{padding-block:96px}
.lead{color:var(--txt-2);font-size:18px;max-width:58ch;margin-top:20px}
.sur{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--or-txt);margin-bottom:18px}
.filet{width:44px;height:1px;background:var(--or);margin:22px 0}

/* Header */
.hd{position:sticky;top:0;z-index:30;background:rgba(251,247,240,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--ligne)}
.hd-in{display:flex;align-items:center;gap:32px;height:76px}
.marque{display:flex;align-items:center;gap:10px;flex:none}
.marque-i{width:46px;height:42px;flex:none}.marque-i img{object-fit:contain}
.marque-t{font-family:'Playfair Display',serif;font-size:22px;font-style:italic;line-height:1}
.marque-t small{display:block;font:600 9px/1.5 'Manrope',sans-serif;letter-spacing:.32em;text-transform:uppercase;color:var(--or-txt);margin-top:4px}
.nav{display:flex;gap:30px;margin-left:auto;font-size:14px;font-weight:500}
.nav a{position:relative;padding:8px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--bronze);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--or-txt)}
.burger{display:none;margin-left:auto;min-height:44px;padding:0 18px;background:none;border:1px solid var(--ligne);border-radius:99px;font:600 13px 'Manrope',sans-serif;color:var(--txt);cursor:pointer}

/* Boutons : remplissage de gauche à droite au survol */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;border-radius:99px;font:600 14px 'Manrope',sans-serif;letter-spacing:.02em;white-space:nowrap;overflow:hidden;isolation:isolate;cursor:pointer;border:1px solid var(--bronze);background:var(--bronze);color:#FFFBF4;transition:color .6s var(--ease),transform .2s}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--nuit);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.btn:hover::before{transform:scaleX(1)}.btn:active{transform:scale(.98)}
.btn.ligne{background:transparent;color:var(--txt);border-color:var(--txt-2)}
.btn.ligne::before{background:var(--bronze)}.btn.ligne:hover{color:#FFFBF4;border-color:var(--bronze)}
.btn.clair{background:var(--ivoire);color:var(--nuit);border-color:var(--ivoire)}
.btn.clair::before{background:var(--or)}
.btn.petit{min-height:44px;padding:0 20px;font-size:13px}
.lien{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--or-txt);min-height:44px}
.lien i{font-style:normal;transition:transform .5s var(--ease)}.lien:hover i{transform:translateX(5px)}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}

/* Arche */
.arche{border-radius:999px 999px var(--r) var(--r);overflow:hidden;background:var(--nude)}
.ov{border-radius:999px;overflow:hidden}

/* Hero accueil */
.hero{display:grid;grid-template-columns:1.02fr 1fr;gap:40px;align-items:end;min-height:calc(100dvh - 77px);max-height:900px;padding-top:40px}
.hero-t{padding-bottom:88px;align-self:center}
.hero-v{position:relative;height:100%;min-height:600px;display:flex;align-items:flex-end;justify-content:center}
.halo{position:absolute;left:50%;top:50%;width:112%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(201,162,75,.42),rgba(201,162,75,0));animation:respire 7s ease-in-out infinite;pointer-events:none}
@keyframes respire{0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}
.hero-a{position:relative;width:min(100%,560px);height:92%;min-height:560px;border-radius:999px 999px 0 0;overflow:hidden}
.hero-a img{height:112%;object-position:50% 40%}
.sceau{position:absolute;right:0;bottom:48px;width:124px;height:124px;border-radius:50%;background:#FFFDF9;padding:5px;box-shadow:0 14px 40px rgba(60,35,10,.22)}

/* Bande valeurs */
.vals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--ligne)}
.val{padding:40px 28px;text-align:center}.val+.val{border-left:1px solid var(--ligne)}
.val-i{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;background:var(--poudre);display:grid;place-items:center;color:var(--or-txt)}
.val h3{font-size:19px;margin-bottom:6px}.val p{font-size:14px;color:var(--txt-2)}

/* Prestations accueil */
.serv{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start}
.serv-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.carte{position:relative;display:block;background:#FFFCF7;border-radius:var(--r);padding:14px 14px 18px;transition:transform .7s var(--ease),box-shadow .7s var(--ease)}
.carte::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid var(--or);clip-path:inset(0 100% 0 0 round 20px);transition:clip-path .9s var(--ease);pointer-events:none}
.carte:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(70,42,12,.13)}
.carte:hover::after{clip-path:inset(0 0 0 0 round 20px)}
.carte .arche{aspect-ratio:3/4;margin-bottom:16px}
.carte h3{font-size:21px;margin-bottom:6px}.carte p{font-size:14px;color:var(--txt-2)}
.serv-g .carte:nth-child(even){margin-top:36px}

/* Bande bronze avant/après */
.bande{background:var(--bronze);color:#FFF9EF}
.bande-g{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.bande h2 em{color:#FBE3A9}.bande .lead{color:#F8EAD3}
.ap{position:relative;aspect-ratio:16/10;border-radius:var(--r);overflow:hidden;--p:50%;background:var(--nuit);touch-action:pan-y}
.ap>img{position:absolute;inset:0}
.ap .apres{clip-path:inset(0 0 0 var(--p))}
.ap-l{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:#FFF9EF;pointer-events:none}
.ap-l::after{content:"";position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px;border-radius:50%;background:#FFF9EF;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.ap-p{position:absolute;bottom:14px;padding:4px 14px;border-radius:99px;font-size:12px;font-weight:600;background:rgba(33,21,14,.82);color:#FFF9EF}
.ap input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}

/* Réalisations bento */
.bento{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:300px 300px;gap:16px;margin-top:44px}
.bento>*{border-radius:var(--r);overflow:hidden;background:var(--nude)}
.bento .g{grid-row:span 2;border-radius:999px 999px var(--r) var(--r)}
.bento .l{grid-column:span 2}
.bento img,.mas img{transition:transform 1.2s var(--ease)}
.bento>*:hover img,.mas>*:hover img{transform:scale(1.04)}

/* Avis carrousel */
.avis-h{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.rail{overflow:hidden;margin-top:44px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.rail-in{display:flex;gap:20px;width:max-content;animation:defile 58s linear infinite}
.rail:hover .rail-in,.rail:focus-within .rail-in{animation-play-state:paused}
@keyframes defile{to{transform:translateX(calc(-50% - 10px))}}
.avis{background:#FFFCF7;border:1px solid var(--ligne);border-radius:var(--r);padding:28px;width:400px;flex:none;display:flex;flex-direction:column;gap:14px}
.etoiles{color:var(--or);letter-spacing:3px;font-size:15px;line-height:1}
.avis blockquote{margin:0;font-family:'Playfair Display',serif;font-size:19px;line-height:1.45}
.avis footer{margin-top:auto;font-size:13px;color:var(--txt-2)}.avis footer b{color:var(--txt);font-weight:600}

/* CTA ovale + pied de page */
.cta{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.cta .ov{height:340px}
.pied{background:var(--nuit);color:#EADCCB;font-size:14px;padding-block:64px 28px}
.pied-g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
.pied h3{font:600 12px 'Manrope',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#E2C57F;margin-bottom:14px}
.pied li{list-style:none;margin-bottom:6px}.pied ul{margin:0;padding:0}.pied a:hover{color:#E2C57F}
.pied .marque-t{color:#FFF9EF;font-size:26px}.pied .marque-t small{color:#E2C57F}
.pied-b{margin-top:44px;padding-top:20px;border-top:1px solid rgba(234,220,203,.2);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#C7B6A2}
.barre{display:none}

/* Entêtes de page */
.ph{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-block:64px}
.ph .arche{height:440px}

/* Prestations */
.onglets-z{position:sticky;top:76px;z-index:20;background:var(--ivoire);border-bottom:1px solid var(--ligne)}
.onglets{position:relative;display:flex;gap:30px;overflow-x:auto;scrollbar-width:none}
.onglets::-webkit-scrollbar{display:none}
.onglet{flex:none;background:none;border:0;min-height:56px;padding:0;font:500 15px 'Manrope',sans-serif;color:var(--txt-2);cursor:pointer}
.onglet[aria-selected="true"]{color:var(--txt);font-weight:600}
.onglet-s{position:absolute;left:0;bottom:0;height:2px;width:60px;background:var(--bronze);transition:transform .7s var(--ease),width .7s var(--ease)}
.panneau[hidden]{display:none}
.pr-t{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px;align-items:start}
.pr-t .arche{aspect-ratio:3/4}
.pr-l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
.pr{position:relative;background:#FFFCF7;border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:8px;transition:transform .7s var(--ease),box-shadow .7s var(--ease)}
.pr::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid var(--or);clip-path:inset(0 100% 0 0 round 20px);transition:clip-path .9s var(--ease);pointer-events:none}
.pr:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(70,42,12,.11)}.pr:hover::after{clip-path:inset(0 0 0 0 round 20px)}
.pr p{font-size:14px;color:var(--txt-2)}
.pr-b{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px;flex-wrap:wrap}
.tarif{font-family:'Playfair Display',serif;font-size:17px;color:var(--or-txt)}
.regles{background:var(--nuit);color:#F2E6D8}
.regles h2 em{color:#E2C57F}
.regles-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:44px}
.regle b{display:block;font-family:'Playfair Display',serif;font-weight:400;font-size:21px;color:#FFF9EF;margin-bottom:8px}
.regle i{display:block;font:italic 40px 'Playfair Display',serif;color:#E2C57F;margin-bottom:6px}
.regle p{font-size:14px;color:#D9C8B4}

/* Réalisations */
.chiffres{display:flex;gap:48px;margin-top:30px}
.chiffre b{display:block;font:400 48px/1.1 'Playfair Display',serif;color:var(--or-txt)}
.chiffre span{font-size:13px;color:var(--txt-2)}
.filtres{display:flex;gap:10px;flex-wrap:wrap}
.filtre{min-height:44px;padding:0 20px;border-radius:99px;background:none;border:1px solid var(--ligne);font:500 14px 'Manrope',sans-serif;color:var(--txt);cursor:pointer;transition:background .5s,color .5s,border-color .5s}
.filtre[aria-pressed="true"]{background:var(--nuit);color:#FFF9EF;border-color:var(--nuit)}
.mas{columns:3;column-gap:16px;margin-top:32px}
.mas figure{margin:0 0 16px;break-inside:avoid;border-radius:var(--r);overflow:hidden;background:var(--nude);position:relative}
.mas figure.cache{display:none}
.mas img{height:auto}
.mas figcaption{padding:10px 14px;font-size:13px;background:#FFFCF7;color:var(--txt-2)}
.insta{display:grid;grid-template-columns:1fr 200px 200px;gap:24px;align-items:center}
.insta figure{margin:0;border-radius:var(--r);overflow:hidden}

/* Salon */
.salon-h{text-align:center;padding-block:72px 40px;position:relative}
.salon-e{position:relative;width:200px;height:190px;margin:0 auto 28px}
.salon-e img{position:relative;object-fit:contain}
.salon-e .halo{width:320px}
.salon-h .lead{margin-inline:auto}
.deux{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.deux .arche{height:560px}
.pq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin-top:36px}
.pq-i{display:grid;grid-template-columns:64px 1fr;gap:8px;padding-block:24px;border-top:1px solid var(--ligne)}
.pq-i i{font:italic 30px/1.2 'Playfair Display',serif;color:var(--or-txt)}
.pq-i h3{font-size:21px;margin-bottom:4px}.pq-i p{font-size:14px;color:var(--txt-2)}
.mur{columns:2;column-gap:20px;margin-top:40px}
.mur .avis{width:auto;break-inside:avoid;margin-bottom:20px}

/* Rendez-vous */
.rdv{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:40px;align-items:start}
.form{background:#FFFCF7;border:1px solid var(--ligne);border-radius:24px;padding:36px}
.etapes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 30px;padding:0;list-style:none}
.etapes li{font-size:12px;font-weight:600;color:var(--txt-2);padding-top:10px;border-top:2px solid var(--ligne);transition:border-color .6s,color .6s}
.etapes li.ok{border-color:var(--bronze);color:var(--txt)}
.etape[hidden]{display:none}
.etape h2{font-size:30px;margin-bottom:6px}
.etape .aide{font-size:14px;color:var(--txt-2);margin-bottom:22px}
.choix{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
.choix button{min-height:46px;padding:0 18px;border-radius:99px;background:none;border:1px solid var(--ligne);font:500 14px 'Manrope',sans-serif;color:var(--txt);cursor:pointer;transition:background .4s,color .4s,border-color .4s}
.choix button:hover{border-color:var(--bronze)}
.choix button[aria-pressed="true"]{background:var(--bronze);border-color:var(--bronze);color:#FFFBF4}
.lab{display:block;font-size:13px;font-weight:600;margin:0 0 6px}
.ch{margin-bottom:16px}
.ch input,.ch textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #BFAE99;border-radius:12px;background:#FFFEFB;font:400 15px 'Manrope',sans-serif;color:var(--txt)}
.ch input:focus,.ch textarea:focus{outline:2px solid var(--bronze);outline-offset:1px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.coche{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin-bottom:12px}
.coche input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--bronze)}
.err{color:#9B2C1A;font-size:13px;min-height:20px;margin-top:8px}
.nav-e{display:flex;justify-content:space-between;gap:12px;margin-top:24px;flex-wrap:wrap}
.recap{background:var(--poudre);border-radius:16px;padding:18px 20px;font-size:14px;margin-bottom:16px}
.recap div{display:flex;justify-content:space-between;gap:16px;padding:4px 0}.recap b{font-weight:600;text-align:right}
.note{background:var(--poudre);border-radius:var(--r);padding:24px;font-size:14px;margin-bottom:16px}
.note h3{font-size:21px;margin-bottom:8px}
.note ul{margin:0;padding-left:18px}.note li{margin-bottom:6px}
.note.nuit{background:var(--nuit);color:#EADCCB}.note.nuit h3{color:#FFF9EF}
.note a.tel{display:block;font:400 28px 'Playfair Display',serif;color:#E2C57F;margin:4px 0 12px}

/* Révélations (actives seulement si le script tourne) */
.anim .rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.anim .rv.vu{opacity:1;transform:none}
.anim .ra{clip-path:inset(100% 0 0 0);transition:clip-path 1.1s var(--ease)}
.anim .ra.vu{clip-path:inset(0)}
.mot{display:inline-block;opacity:0;transform:translateY(.4em);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.vu .mot,.mot.vu{opacity:1;transform:none}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
@container site (min-width:900px){.plx{animation:plx linear both;animation-timeline:view()}}
@keyframes plx{from{transform:translateY(-6%)}to{transform:translateY(6%)}}}}

/* Ouverture et curseur (ajoutés au document par le script) */
#ld-intro{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:#FBF7F0;transition:opacity .8s ease}
#ld-intro.fin{opacity:0;pointer-events:none}
#ld-intro svg{width:190px;height:190px}
#ld-intro circle{fill:none;stroke:#C9A24B;stroke-width:1.2;stroke-dasharray:578;stroke-dashoffset:578;animation:trace 1.1s ease forwards}
#ld-intro circle:nth-child(2){animation-delay:.18s;opacity:.6}
#ld-intro circle:nth-child(3){animation-delay:.36s;opacity:.3}
@keyframes trace{to{stroke-dashoffset:0}}
#ld-cur{position:fixed;left:0;top:0;width:12px;height:12px;margin:-6px;border-radius:50%;background:rgba(143,97,24,.75);pointer-events:none;z-index:95;transition:width .3s,height .3s,margin .3s,background .3s;display:none}
#ld-cur.gros{width:42px;height:42px;margin:-21px;background:rgba(201,162,75,.28)}

/* Téléphone */
@container site (max-width:1023px){
.nav{display:none}.burger{display:block}
.nav.ouvert{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:100%;margin:0;padding:8px 20px 16px;background:var(--ivoire);border-bottom:1px solid var(--ligne);font-size:17px}
.nav.ouvert a{padding:12px 0}
.hd .btn{display:none}
.wrap{padding-inline:32px}
.serv{grid-template-columns:1fr}
.serv-g{grid-template-columns:repeat(2,minmax(0,1fr))}
.bande-g,.cta,.ph,.deux,.rdv,.pr-t{grid-template-columns:1fr}
.pied-g{grid-template-columns:repeat(2,minmax(0,1fr))}
.regles-g{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container site (max-width:767px){
.site h1{font-size:44px}.site h2{font-size:32px}
.wrap{padding-inline:20px}.sec{padding-block:64px}
.hd-in{height:64px;position:static}.hd{position:sticky}
.onglets-z{top:64px}
.hero{grid-template-columns:1fr;min-height:0;max-height:none;padding-top:28px;gap:28px}
.hero-t{padding-bottom:0}.hero-v{min-height:0}
.hero-a{min-height:0;height:440px;width:100%}.halo{width:100%}
.sceau{width:88px;height:88px;bottom:22px;right:-2px}
.btns .btn{width:100%}
.vals{grid-template-columns:repeat(2,minmax(0,1fr))}.val{padding:26px 14px}.val+.val{border-left:0}
.val:nth-child(even){border-left:1px solid var(--ligne)}.val:nth-child(n+3){border-top:1px solid var(--ligne)}
.serv-g{gap:12px}.serv-g .carte:nth-child(even){margin-top:24px}.carte{padding:10px 10px 14px}.carte h3{font-size:19px}
.bande-g{gap:32px}.ap{aspect-ratio:4/3.4}
.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:190px;gap:10px}
.bento .g{grid-column:span 2;grid-row:auto;height:360px}.bento .l{grid-column:span 2}
.avis{width:300px;padding:22px}.avis blockquote{font-size:17px}
.cta{gap:28px}.cta .ov{height:220px}
.pied-g{grid-template-columns:1fr;gap:28px}.pied{padding-bottom:96px}
.barre{display:flex;position:sticky;bottom:0;z-index:25;gap:8px;padding:10px 12px;background:rgba(251,247,240,.96);border-top:1px solid var(--ligne)}
.barre .btn{flex:1;min-height:48px;padding:0 12px}
.ph{padding-block:36px;gap:28px}.ph .arche{height:340px}
.pr-l{grid-template-columns:1fr}.pr-t .arche{aspect-ratio:4/3.6}
.regles-g{grid-template-columns:1fr;gap:24px}
.chiffres{gap:32px}.chiffre b{font-size:40px}
.filtres{flex-wrap:nowrap;overflow-x:auto;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}.filtre{flex:none}
.mas{columns:2;column-gap:10px}.mas figure{margin-bottom:10px}.mas figcaption{padding:8px 10px;font-size:12px}
.insta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.insta>div{grid-column:span 2}
.salon-h{padding-block:44px 8px}.deux{gap:32px}.deux .arche{height:420px}
.pq{grid-template-columns:1fr}.pq-i{grid-template-columns:48px 1fr}
.mur{columns:1}
.form{padding:22px 18px;border-radius:20px}.etapes li{font-size:11px}.g2{grid-template-columns:1fr}
.nav-e .btn{flex:1}
}
@media (prefers-reduced-motion:reduce){
.site *,.site *::before,.site *::after{animation:none!important;transition:none!important}
.anim .rv,.anim .ra,.mot{opacity:1!important;transform:none!important;clip-path:none!important}
.rail{overflow-x:auto}
}

/* Correctifs : couleurs de boutons, révélation sur l'image pour que le déclenchement fonctionne */
.site a.btn{color:#FFFBF4}.site a.btn.ligne{color:var(--txt)}.site a.btn.ligne:hover{color:#FFFBF4}.site a.btn.clair{color:var(--nuit)}
.marque-i{width:46px;height:46px;border-radius:50%;background:#FFFEFB;box-shadow:0 0 0 1px var(--ligne)}
.anim .ra{clip-path:none}
.anim .ra>img{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s var(--ease),transform 1.2s var(--ease)}
.anim .ra.vu>img{clip-path:inset(0)}
.hero{grid-template-columns:1.25fr 1fr}
.site .hero h1{font-size:clamp(44px,4.7vw,68px)}
@media (prefers-reduced-motion:reduce){.anim .ra>img{clip-path:none!important}}
.insta figure{aspect-ratio:3/4}
@container site (max-width:767px){.hero{grid-template-columns:1fr}.site .hero h1{font-size:44px}}
/* La hauteur du hero ne suit plus un cadre très haut (planche du canevas) */
.hero{min-height:min(calc(100dvh - 77px),820px)}
@container site (max-width:767px){.hero{min-height:0}}
.insta{display:block;text-align:center}.insta .lead{margin-inline:auto}.insta .btns{justify-content:center}.insta h2{margin-inline:auto}

/* Tableau de bord fictif */
.db{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100%;background:#F7F1E8}
.db-s{background:var(--nuit);color:#EADCCB}
.db-s-in{position:sticky;top:0;padding:24px 18px;display:flex;flex-direction:column;gap:28px}
.db .marque-t{color:#FFF9EF}.db .marque-t small{color:#E2C57F}
.db-nav{display:flex;flex-direction:column;gap:4px}
.db-nav button,.db-retour{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:0 14px;border:0;border-radius:12px;background:none;font:500 14px 'Manrope',sans-serif;color:#EADCCB;cursor:pointer;text-align:left;transition:background .4s,color .4s}
.db-nav button:hover{background:var(--nuit-2)}
.db-nav button[aria-current="page"]{background:var(--bronze);color:#FFFBF4}
.db-pastille{min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#FBE3A9;color:var(--nuit);font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
.site .db-retour{font-size:13px;color:#D9C8B4}
.db-m{min-width:0;padding:0 40px 56px}
.db-ex{margin:0 -40px 32px;padding:10px 40px;background:var(--poudre);color:var(--nuit);font-size:13px;font-weight:500}
.db-t{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.site .db-t h1{font-size:40px}.db-t p{font-size:14px;color:var(--txt-2);margin-top:6px}
.vue[hidden]{display:none}
.db-g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.db-c{background:#FFFDF9;border:1px solid var(--ligne);border-radius:var(--r);padding:22px;min-width:0}
.db-k span{display:block;font-size:13px;color:var(--txt-2)}
.db-k b{display:block;font:400 40px/1.2 'Playfair Display',serif;color:var(--txt);margin-top:4px}
.db-k small{font-size:12px;color:var(--txt-2)}
.db-g2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;margin-bottom:18px}
.site .db-c h2{font-size:22px;margin-bottom:16px}
.db-l{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:12px;align-items:center;padding-block:12px;border-top:1px solid var(--ligne);font-size:14px}
.db-l:first-of-type{border-top:0}
.db-l time{font-family:'Playfair Display',serif;font-size:17px;color:var(--or-txt)}
.db-l b{display:block;font-weight:600}.db-l span{color:var(--txt-2);font-size:13px}
.etat{display:inline-flex;align-items:center;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--poudre);color:var(--nuit)}
.etat.ok{background:#DCE8D2;color:#2C4A1F}.etat.non{background:#F4DCD4;color:#7A2A17}
.hist{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;height:190px;margin-top:8px;padding-top:24px}
.hist>div{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;gap:8px;outline-offset:2px}
.hist i{display:block;background:var(--bronze);border-radius:4px 4px 0 0;transition:opacity .3s}
.hist small{font-size:12px;color:var(--txt-2);text-align:center}
.hist em{font-style:normal;font-size:13px;font-weight:600;text-align:center}
.hist>div:hover i,.hist>div:focus i{opacity:.72}
.hist>div:hover::after,.hist>div:focus::after{content:attr(data-v);position:absolute;left:50%;top:-6px;transform:translate(-50%,-100%);white-space:nowrap;padding:4px 9px;border-radius:8px;background:var(--nuit);color:#FFF9EF;font-size:12px;z-index:2;pointer-events:none}
.hbar{display:grid;grid-template-columns:128px minmax(0,1fr) 30px;gap:10px;align-items:center;font-size:13px;margin-bottom:12px}
.hbar i{display:block;height:10px;background:var(--bronze);border-radius:0 4px 4px 0}
.hbar b{font-weight:600;text-align:right}
.dem{display:flex;flex-direction:column;gap:12px}
.dem-c{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;align-items:start}
.dem-c h3{font-size:21px}.dem-c p{font-size:14px;color:var(--txt-2)}
.dem-i{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 18px;font-size:13px;padding-block:10px;border-block:1px solid var(--ligne)}
.dem-i span{display:block;color:var(--txt-2);font-size:12px}
.dem-b{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.pl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.pl h3{font-size:18px;margin-bottom:10px}
.pl-r{display:block;width:100%;margin-bottom:8px;padding:10px 12px;border-radius:12px;background:var(--poudre);font-size:13px;border:1px solid transparent;text-align:left;font-family:inherit;color:var(--txt)}
.pl-r b{display:block;font-weight:600}
.pl-r.acompte{background:#FFFDF9;border-color:var(--or)}
button.pl-r{min-height:44px;background:none;border:1px dashed #BFAE99;color:var(--txt-2);cursor:pointer}
button.pl-r[aria-pressed="true"]{background:var(--nuit);border:1px solid var(--nuit);color:#FFF9EF}
.db-tab{overflow-x:auto}
.db-tab table{width:100%;min-width:620px;border-collapse:collapse;font-size:14px}
.db-tab th{font-size:12px;font-weight:600;color:var(--txt-2);text-align:left;padding:0 12px 10px 0}
.db-tab td{padding:13px 12px 13px 0;border-top:1px solid var(--ligne)}
.db-tab tr[hidden]{display:none}
.db-q{max-width:320px;margin-bottom:16px}
.db-avis{font:400 18px/1.45 'Playfair Display',serif;margin:8px 0}
.db-toast{position:sticky;bottom:16px;width:max-content;max-width:100%;margin:16px auto 0;padding:10px 18px;border-radius:99px;background:var(--nuit);color:#FFF9EF;font-size:14px;opacity:0;transition:opacity .4s;pointer-events:none}
.db-toast.on{opacity:1}
@container site (max-width:1023px){.db{grid-template-columns:200px minmax(0,1fr)}.db-g4{grid-template-columns:repeat(2,minmax(0,1fr))}.db-g2{grid-template-columns:1fr}.pl{grid-template-columns:repeat(2,minmax(0,1fr))}.db-m{padding-inline:24px}.db-ex{margin-inline:-24px;padding-inline:24px}}
@container site (max-width:767px){
.db{display:block}.db-s{position:sticky;top:0;z-index:30}
.db-s-in{position:static;padding:10px 14px;gap:8px}
.db-nav{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin-inline:-14px;padding-inline:14px}
.db-nav button{flex:none;min-height:42px}.db-retour{display:none}
.db-m{padding:0 14px 40px}.db-ex{margin:0 -14px 20px;padding:9px 14px;font-size:12px}
.site .db-t h1{font-size:32px}
.db-g4{gap:10px}.db-c{padding:16px}.db-k b{font-size:30px}
.db-l{grid-template-columns:52px minmax(0,1fr)}.db-l .etat{grid-column:2;justify-self:start}
.dem-c{grid-template-columns:1fr}.dem-i{grid-template-columns:1fr 1fr}.dem-b .btn{flex:1}
.pl{grid-template-columns:1fr}.hbar{grid-template-columns:112px minmax(0,1fr) 26px}
.hist{gap:6px}
}
@container site (max-width:767px){
.dem-c .etat{justify-self:start}.dem-b .btn{flex:1 1 100%}
.db-l{grid-template-columns:66px minmax(0,1fr)}.db-l time{white-space:nowrap}
.db-tab table{min-width:0}.db-tab thead{display:none}
.db-tab tr{display:block;padding-block:12px;border-top:1px solid var(--ligne)}.db-tab tr[hidden]{display:none}
.db-tab td{display:block;padding:1px 0;border:0;font-size:13px;color:var(--txt-2)}
.db-tab td:first-child{font-size:15px;font-weight:600;color:var(--txt)}.db-tab td:last-child{margin-top:6px;color:var(--txt)}
}
@container site (max-width:767px){.db-tab td:nth-child(4)::after{content:" visites"}}
