@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=DM+Sans:wght@300;400;500&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--m:#990066;--g:#ffba0b;--v:#cb72e4;--o:#f67321;--pink:#E85BAF;--cream:#F5EDD8;--dark:#1C0A28;--paper:#EDE0C4;--ink:#2A1040;
  --sunset:linear-gradient(165deg,#2B0A3D 0%,#7A1F4A 32%,#C93F2E 60%,var(--o) 80%,var(--g) 100%);
  --dusk:linear-gradient(160deg,#2B0A3D 0%,#5C1A38 100%)}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden}

/* ── SUNSET — soleil & particules (motif partagé) ── */
.sun-glow{position:absolute;border-radius:50%;background:radial-gradient(circle,#fff6d8 0%,var(--g) 35%,var(--o) 70%,rgba(246,115,33,0) 100%);filter:blur(2px);animation:sunPulse 5s ease-in-out infinite;pointer-events:none}
@keyframes sunPulse{0%,100%{transform:scale(1);opacity:.95}50%{transform:scale(1.06);opacity:1}}
.mote{position:absolute;border-radius:50%;background:rgba(255,220,150,.8);filter:blur(1px);pointer-events:none;animation:moteDrift linear infinite}
@keyframes moteDrift{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.9}90%{opacity:.6}100%{transform:translateY(-260px) translateX(30px);opacity:0}}
.horizon-wave{position:absolute;bottom:-1px;left:0;width:100%;height:90px;z-index:2;pointer-events:none}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:.9rem 3rem;background:linear-gradient(90deg,rgba(43,10,61,.97) 0%,rgba(90,25,55,.97) 100%);border-bottom:2.5px solid var(--o);backdrop-filter:blur(12px)}
.nav-logo{display:flex;align-items:center;text-decoration:none}
.nav-logo img{height:56px;width:auto;filter:brightness(8);mix-blend-mode:screen}
.nav-links{display:flex;gap:1.6rem;list-style:none}
.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);transition:color .2s;position:relative;padding-bottom:.3rem}
.nav-links a:hover{color:var(--g)}
.nav-links a.active{color:var(--g)}
.nav-links a.active::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--g)}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:101}
.nav-toggle span{width:22px;height:2px;background:#fff;transition:transform .25s,opacity .25s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── HERO ── */
#hero{min-height:100vh;background:var(--sunset);position:relative;overflow:hidden;display:grid;grid-template-columns:1fr;padding-top:65px}

.hero-left{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:5rem 4rem;position:relative;z-index:3;max-width:720px;margin:0 auto}
.hero-eyebrow{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:1.3rem}
.eyebrow-pill{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);padding:.45rem 1.1rem;border-radius:40px;backdrop-filter:blur(4px)}
.hero-title{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,3.2vw,3rem);font-weight:900;font-style:italic;color:#fff;line-height:1.1;margin-bottom:.8rem;text-shadow:0 4px 24px rgba(20,5,15,.35)}
.hero-title em{color:var(--g);font-style:normal}
.hero-tagline{font-family:'Playfair Display',serif;font-size:1.05rem;font-style:italic;color:#ffe9c9;line-height:1.7;margin:0 auto 1.2rem;max-width:560px}
.hero-sub{font-size:.92rem;line-height:1.9;color:rgba(255,255,255,.85);margin:0 auto 2.2rem;max-width:560px}
.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;position:relative;z-index:3}
.btn-mag{padding:.82rem 1.9rem;background:linear-gradient(135deg,var(--o),var(--m));color:#fff;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;border:none;cursor:pointer;text-decoration:none;display:inline-block;box-shadow:4px 4px 0 var(--o);transition:transform .15s,box-shadow .15s}
.btn-mag:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--o)}
.btn-ghost{padding:.82rem 1.9rem;border:2px solid rgba(255,186,11,.45);color:rgba(255,255,255,.65);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;display:inline-block;transition:border-color .2s,color .2s}
.btn-ghost:hover{border-color:var(--g);color:var(--g)}
#hero .btn-mag{background:#fff;color:#8C2B1E;box-shadow:5px 5px 0 rgba(0,0,0,.15)}
#hero .btn-mag:hover{box-shadow:7px 7px 0 rgba(0,0,0,.2)}
#hero .btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}
#hero .btn-ghost:hover{background:#fff;color:#8C2B1E;border-color:#fff}

/* ── SECTION BASE ── */
section{padding:7rem 4rem}
.stag{font-size:.62rem;letter-spacing:.42em;text-transform:uppercase;color:var(--o);margin-bottom:.8rem;display:block;font-weight:500}
.stag-gold{color:var(--g)}
.stitle{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,3vw,2.8rem);font-weight:700;line-height:1.1;color:var(--ink);margin-bottom:2rem}
.stitle em{color:var(--m);font-style:italic}
.stitle-light{color:#F5EDD8}
.ruled{display:flex;align-items:center;gap:1rem;margin:2rem 0}
.ruled::before,.ruled::after{content:'';flex:1;height:1.5px}
.ruled::before{background:linear-gradient(to right,transparent,var(--o))}
.ruled::after{background:linear-gradient(to left,transparent,var(--o))}
.ruled-d{width:8px;height:8px;background:var(--o);transform:rotate(45deg);flex-shrink:0}

/* ── VALEURS ── */
#valeurs{background:var(--dusk);position:relative;overflow:hidden}
#valeurs::before{content:'';position:absolute;width:700px;height:700px;border-radius:50%;border:100px solid rgba(255,186,11,.03);top:-200px;right:-200px;pointer-events:none}
.valeurs-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:3rem;background:rgba(255,186,11,.08)}
.val-card{background:#3D1228;padding:2rem 1.4rem;position:relative;transition:transform .25s,box-shadow .25s;cursor:default}
.val-card:hover{transform:translateY(-5px)}
.val-card:nth-child(1):hover{box-shadow:0 12px 28px rgba(232,91,175,.35)}
.val-card:nth-child(2):hover{box-shadow:0 12px 28px rgba(255,186,11,.35)}
.val-card:nth-child(3):hover{box-shadow:0 12px 28px rgba(246,115,33,.35)}
.val-card:nth-child(4):hover{box-shadow:0 12px 28px rgba(255,186,11,.35)}
.val-card:nth-child(5):hover{box-shadow:0 12px 28px rgba(232,91,175,.35)}
.val-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.val-card:nth-child(1)::before{background:var(--pink)}
.val-card:nth-child(2)::before{background:var(--g)}
.val-card:nth-child(3)::before{background:var(--o)}
.val-card:nth-child(4)::before{background:var(--g)}
.val-card:nth-child(5)::before{background:var(--pink)}
.val-card:hover{background:rgba(255,255,255,.04)}
.val-word{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:900;font-style:italic;margin-bottom:.8rem}
.val-card:nth-child(1) .val-word{color:var(--pink)}
.val-card:nth-child(2) .val-word{color:var(--g)}
.val-card:nth-child(3) .val-word{color:var(--o)}
.val-card:nth-child(4) .val-word{color:var(--g)}
.val-card:nth-child(5) .val-word{color:var(--pink)}
.val-text{font-size:.76rem;line-height:1.75;color:rgba(245,237,216,.5)}

/* ── SERVICES ── */
#services{background:var(--paper)}
.services-2col{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:1rem}
.sb{border-top:3px solid var(--o);padding-top:2rem}
.sb-icon{font-size:1.8rem;margin-bottom:.8rem;display:block}
.sb-title{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;color:var(--ink);margin-bottom:.5rem}
.sb-desc{font-size:.86rem;line-height:1.8;color:rgba(42,16,64,.62);margin-bottom:1.6rem}
.sb-list{list-style:none;display:flex;flex-direction:column}
.sb-list li{font-size:.8rem;line-height:1.7;color:rgba(42,16,64,.7);padding:.75rem 0;border-bottom:1px solid rgba(255,186,11,.18);display:flex;gap:.8rem;align-items:flex-start}
.sb-list li::before{content:'◈';color:var(--o);flex-shrink:0;font-size:.68rem;margin-top:.22rem}
.sb-name{font-weight:500;color:var(--ink)}
.sb-more{display:inline-block;margin-top:1.6rem;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--m);text-decoration:none;border-bottom:1.5px solid var(--m);padding-bottom:.2rem;transition:opacity .2s}
.sb-more:hover{opacity:.6}

/* ── POUR QUI ── */
#pourqui{background:var(--dusk)}
.pq-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:3rem;background:rgba(255,186,11,.08)}
.pq-card{background:#3D1228;padding:2rem 1.5rem;position:relative;transition:background .3s}
.pq-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.pq-card:nth-child(1)::before{background:var(--m)}
.pq-card:nth-child(2)::before{background:var(--g)}
.pq-card:nth-child(3)::before{background:var(--v)}
.pq-card:nth-child(4)::before{background:var(--o)}
.pq-card:nth-child(5)::before{background:var(--m)}
.pq-card:hover{background:var(--o)}
.pq-who{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:700;color:#F5EDD8;margin-bottom:.8rem;line-height:1.3;transition:color .2s}
.pq-card:hover .pq-who{color:var(--dark)}
.pq-for{font-size:.74rem;line-height:1.75;color:rgba(245,237,216,.48);margin-bottom:1rem;transition:color .2s}
.pq-card:hover .pq-for{color:rgba(42,16,64,.85)}
.pq-arrow{font-size:.65rem;letter-spacing:.08em;color:var(--g);opacity:.75;transition:color .2s,opacity .2s}
.pq-card:hover .pq-arrow{color:var(--dark);opacity:1}

/* ── ART-THÉRAPIE DETAIL ── */
#art-therapie{background:var(--cream)}
.at-intro{font-size:1rem;line-height:1.95;color:rgba(42,16,64,.7);max-width:680px;margin-bottom:2rem}
.at-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}
.at-card{background:var(--paper);padding:2rem;border-top:3px solid var(--o)}
.at-card-title{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:var(--ink);margin-bottom:.8rem}
.at-card-text{font-size:.8rem;line-height:1.75;color:rgba(42,16,64,.62)}
.bienfaits{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.bcard{background:var(--dark);padding:1.5rem;text-align:center}
.bcard-icon{font-size:1.4rem;margin-bottom:.6rem;display:block}
.bcard-text{font-size:.75rem;line-height:1.6;color:rgba(245,237,216,.6)}

/* interventions */
.interv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.interv-card{background:var(--paper);padding:2rem;border-left:3px solid var(--o);position:relative}
.interv-tag{font-size:.58rem;letter-spacing:.3em;text-transform:uppercase;color:var(--g);margin-bottom:.6rem;display:block}
.interv-title{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:.8rem}
.interv-text{font-size:.76rem;line-height:1.7;color:rgba(42,16,64,.6)}

/* ── PHOTOGRAPHIE DETAIL ── */
#photographie{background:radial-gradient(ellipse 60% 50% at 80% 30%,rgba(246,115,33,.15),transparent),var(--dusk)}
.photo-intro{font-size:1rem;line-height:1.95;color:rgba(245,237,216,.65);max-width:680px;margin-bottom:3rem}

/* ── PHOTO CATEGORY TABS ── */
.pf-tabs{display:flex;flex-wrap:wrap;gap:.5rem;border-bottom:1px solid rgba(255,186,11,.18);padding-bottom:0}
.pf-tab{background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,237,216,.5);padding:.9rem 1.2rem;position:relative;transition:color .2s;display:flex;align-items:center;gap:.5rem}
.pf-tab-icon{font-size:1rem}
.pf-tab::after{content:'';position:absolute;left:1.2rem;right:1.2rem;bottom:-1px;height:2px;background:var(--o);transform:scaleX(0);transition:transform .25s}
.pf-tab:hover{color:#F5EDD8}
.pf-tab.active{color:#F5EDD8}
.pf-tab.active::after{transform:scaleX(1)}
.pf-panels{margin-top:2.5rem}
.pf-panel{display:none}
.pf-panel.active{display:block;animation:pfFade .35s ease}
@keyframes pfFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.pf-panel-title{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;font-style:italic;color:var(--o);margin-bottom:1rem}
.pf-panel .po-desc{font-size:.85rem;line-height:1.85;color:rgba(245,237,216,.6);max-width:680px;margin-bottom:.6rem}
.pf-panel .po-price{font-family:'Playfair Display',serif;font-size:1rem;font-style:italic;color:var(--g);margin-bottom:2rem;display:block}
@media (max-width:640px){.pf-tabs{gap:0}.pf-tab{padding:.7rem .7rem;font-size:.62rem}.pf-tab-icon{display:none}}


/* ── OFFRE SIGNATURE ── */
#signature{background:linear-gradient(150deg,#2B0A3D 0%,#7A1F4A 45%,#C93F2E 75%,var(--o) 100%);position:relative;overflow:hidden}
#signature::before{content:'';position:absolute;width:800px;height:800px;border-radius:50%;border:120px solid rgba(246,115,33,.05);top:-300px;left:-250px;pointer-events:none}
#signature::after{content:'';position:absolute;width:400px;height:400px;border-radius:50%;border:60px solid rgba(255,186,11,.05);bottom:-150px;right:-100px;pointer-events:none}
.sig-wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:center}
.sig-badge{display:inline-flex;align-items:center;gap:.6rem;background:var(--o);color:#fff;padding:.45rem 1.2rem;font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;margin-bottom:1.2rem;box-shadow:3px 3px 0 rgba(255,186,11,.5)}
.sig-title{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,4.5vw,3.8rem);font-weight:900;font-style:italic;color:#fff;line-height:1.05;margin-bottom:.8rem;text-shadow:4px 4px 0 rgba(153,0,102,.4)}
.sig-title em{color:var(--g);font-style:normal}
.sig-sub{font-family:'Playfair Display',serif;font-size:1.15rem;font-style:italic;color:rgba(255,186,11,.9);margin-bottom:1.5rem;letter-spacing:.02em}
.sig-desc{font-size:.9rem;line-height:1.9;color:rgba(255,255,255,.68);margin-bottom:2rem;max-width:480px}
.sig-pourqui{font-size:.82rem;line-height:1.8;color:rgba(255,255,255,.55);font-style:italic;max-width:480px;margin-bottom:2.5rem;padding-left:1rem;border-left:2px solid rgba(255,186,11,.4)}
.sig-pourqui span{font-style:normal;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;color:var(--g);margin-right:.4rem}
.sig-steps{display:flex;flex-direction:column;gap:0;margin-bottom:2rem}
.sig-step{display:grid;grid-template-columns:52px 1fr;gap:1.2rem;padding:1.3rem 0;border-top:1px solid rgba(255,186,11,.25);align-items:start}
.sig-num{font-family:'Playfair Display',serif;font-size:2rem;font-weight:900;color:var(--g);line-height:1}
.sig-step-name{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:.3rem}
.sig-step-desc{font-size:.8rem;line-height:1.7;color:rgba(255,255,255,.55)}
.sig-card{background:rgba(0,0,0,.28);border:1.5px solid rgba(255,186,11,.35);padding:2.5rem;backdrop-filter:blur(4px)}
.sig-launch{display:inline-block;background:var(--g);color:var(--dark);font-size:.58rem;letter-spacing:.25em;text-transform:uppercase;padding:.35rem .9rem;margin-bottom:1rem;font-weight:500;transform:rotate(-1.5deg)}
.sig-price{font-family:'Playfair Display',serif;font-size:3.2rem;font-weight:900;color:var(--g);line-height:1;margin-bottom:.3rem}
.sig-price-note{font-size:.72rem;line-height:1.6;color:rgba(255,255,255,.5);margin-bottom:1.8rem;font-style:italic}
.sig-price-sub{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:2rem}
.sig-incl-title{font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--o);margin-bottom:1rem}
.sig-list{list-style:none;display:flex;flex-direction:column;gap:.8rem;margin-bottom:2rem}
.sig-list li{font-size:.82rem;line-height:1.6;color:rgba(255,255,255,.7);display:flex;gap:.7rem;align-items:flex-start}
.sig-list li::before{content:'✦';color:var(--g);flex-shrink:0;font-size:.7rem;margin-top:.2rem}
.btn-sig{display:block;text-align:center;padding:1rem 2rem;background:var(--o);color:#fff;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;box-shadow:5px 5px 0 var(--g);transition:transform .15s,box-shadow .15s}
.btn-sig:hover{transform:translate(-3px,-3px);box-shadow:8px 8px 0 var(--g)}

/* ── SIGNATURE TEASER (accueil) ── */
#signature-teaser{background:linear-gradient(150deg,#2B0A3D 0%,#7A1F4A 45%,#C93F2E 75%,var(--o) 100%);position:relative;overflow:hidden;text-align:center}
#signature-teaser::before{content:'';position:absolute;width:700px;height:700px;border-radius:50%;border:110px solid rgba(246,115,33,.05);top:-280px;left:50%;transform:translateX(-50%);pointer-events:none}
.teaser-wrap{position:relative;z-index:2;max-width:620px;margin:0 auto}
.teaser-wrap .sig-badge{margin:0 auto 1.2rem}
.teaser-wrap .sig-title{margin-bottom:.8rem}
.teaser-wrap .sig-sub{margin-bottom:1.4rem}
.teaser-wrap .sig-desc{margin:0 auto 2.2rem;max-width:520px}
.teaser-wrap .btn-sig{display:inline-block;padding:1rem 2.4rem}

/* ── PORTFOLIO ── */
.pf-grid{column-count:3;column-gap:1rem}
.gi{break-inside:avoid;margin-bottom:1rem;overflow:hidden;cursor:zoom-in;position:relative;border-radius:2px}
.gi img{width:100%;height:auto;display:block;transition:transform .6s}
.gi:hover img{transform:scale(1.04)}
.gi::after{content:'';position:absolute;inset:0;background:rgba(153,0,102,0);transition:background .35s;pointer-events:none}
.gi:hover::after{background:rgba(153,0,102,.16)}
.gi::before{content:'';position:absolute;inset:8px;z-index:2;border:1.5px solid rgba(255,255,255,0);transition:border-color .3s;pointer-events:none}
.gi:hover::before{border-color:rgba(255,255,255,.35)}
@media (max-width:900px){.pf-grid{column-count:2}}
@media (max-width:560px){.pf-grid{column-count:1}}

/* ── LIGHTBOX ── */
.lightbox{position:fixed;inset:0;background:rgba(10,4,16,.96);display:none;align-items:center;justify-content:center;z-index:1000;padding:4rem 5rem}
.lightbox.open{display:flex}
.lb-img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb-close{position:absolute;top:1.4rem;right:2rem;background:none;border:none;color:#fff;font-size:2.4rem;cursor:pointer;line-height:1;opacity:.7;transition:opacity .2s}
.lb-close:hover{opacity:1}
.lb-prev,.lb-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff;font-size:3rem;cursor:pointer;opacity:.6;transition:opacity .2s;padding:1rem;font-family:serif}
.lb-prev{left:.5rem}
.lb-next{right:.5rem}
.lb-prev:hover,.lb-next:hover{opacity:1}
@media (max-width:640px){.lightbox{padding:4rem 1rem}.lb-prev,.lb-next{font-size:2rem;padding:.5rem}}

/* ── À PROPOS ── */
#apropos{background:linear-gradient(160deg,#2B0A3D 0%,#7A1548 100%);padding:0;display:grid;grid-template-columns:.6fr 1.6fr}
#apropos.section-offset{padding-top:100px}
.ap-img{display:flex;align-items:flex-start;justify-content:center;padding:6rem 2.5rem}
.ap-img img{width:100%;max-width:300px;aspect-ratio:3/4;object-fit:cover;object-position:center 15%;display:block;border-radius:3px;box-shadow:10px 10px 0 rgba(255,186,11,.15)}
.ap-content{padding:6rem 4rem;display:flex;flex-direction:column;justify-content:center}
.retro-stamp{display:inline-block;border:2px solid rgba(255,186,11,.3);padding:.3rem .9rem;font-size:.56rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,186,11,.55);margin-bottom:1rem;transform:rotate(-1.5deg);width:fit-content}
.ap-name{font-family:'Playfair Display',serif;font-size:1.1rem;font-style:italic;color:var(--g);margin-bottom:1.5rem;line-height:1.5}
.ap-text{font-size:.86rem;line-height:1.9;color:rgba(245,237,216,.62);margin-bottom:.9rem}
.ap-lead{font-size:1rem;line-height:1.85;color:rgba(245,237,216,.85);margin-bottom:1.6rem;font-style:italic}
.ap-story{font-family:'Playfair Display',serif;font-size:.96rem;font-style:italic;color:rgba(203,114,228,.8);margin:1.5rem 0;line-height:1.7;border-left:2px solid var(--g);padding-left:1.2rem}
.ap-events{margin-top:1.8rem;padding:1.5rem;border:1px solid rgba(255,186,11,.18);background:rgba(255,255,255,.03)}
.ap-events-title{font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--g);margin-bottom:.7rem}
.ap-events-text{font-size:.8rem;line-height:1.8;color:rgba(245,237,216,.5)}

/* ── CONTACT ── */
#contact{background:var(--paper)}
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:5rem;margin-top:3rem}
.ci-block{margin-bottom:2rem}
.ci-block h3{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--o);margin-bottom:.5rem;font-weight:700}
.ci-block p{font-size:.86rem;line-height:2;color:rgba(42,16,64,.68)}
.ci-block p a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(42,16,64,.3);transition:color .2s,border-color .2s}
.ci-block p a:hover{color:var(--m);border-color:var(--m)}
.form-group{margin-bottom:1.3rem}
.form-group label{display:block;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(42,16,64,.38);margin-bottom:.5rem}
.form-group input,.form-group textarea,.form-group select{width:100%;background:rgba(255,255,255,.55);border:none;border-bottom:1.5px solid rgba(153,0,102,.22);color:var(--ink);padding:.72rem 0;font-family:'DM Sans',sans-serif;font-size:.88rem;outline:none;transition:border-color .3s}
.form-group input:focus,.form-group textarea:focus{border-color:var(--m)}
.form-group textarea{resize:vertical;min-height:110px;border:1.5px solid rgba(153,0,102,.18);padding:.72rem}
.form-group select option{background:var(--paper)}
.btn-send{background:linear-gradient(135deg,var(--m),var(--o));color:#fff;padding:.88rem 2.5rem;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;box-shadow:5px 5px 0 rgba(153,0,102,.2);transition:transform .15s,box-shadow .15s}
.btn-send:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 rgba(153,0,102,.35)}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.form-status{margin-top:1rem;font-size:.82rem;line-height:1.6;min-height:1.2em}
.form-status.ok{color:var(--m)}
.form-status.err{color:#c0392b}

/* ── CTA (bas de page sous-pages) ── */
.cta-block{background:var(--dusk);text-align:center}
.cta-block .stag{display:block;text-align:center}
.cta-block .stitle{margin-bottom:1.8rem}
.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ── FOOTER ── */
footer{background:#20081A;padding:2rem 3rem;display:flex;justify-content:space-between;align-items:center;border-top:2px solid rgba(255,186,11,.15)}
.footer-name{font-family:'Playfair Display',serif;font-size:.95rem;font-style:italic;color:rgba(255,255,255,.45)}
.footer-copy{font-size:.62rem;color:rgba(255,255,255,.2);letter-spacing:.1em}
.footer-links a{font-size:.62rem;color:rgba(255,255,255,.22);text-decoration:none;margin-left:1.5rem}
.footer-links a:hover{color:var(--g)}

/* ══════════ MOBILE ══════════ */
@media (max-width:860px){
  nav{padding:.8rem 1.2rem}
  .nav-logo img{height:42px}
  .nav-toggle{display:flex}
  .nav-links{position:fixed;top:0;right:-100%;width:78%;max-width:320px;height:100vh;height:100dvh;background:rgba(18,6,28,.98);flex-direction:column;justify-content:center;align-items:flex-start;gap:1.7rem;padding:2rem 2.5rem;transition:right .35s ease;backdrop-filter:blur(14px);box-shadow:-10px 0 30px rgba(0,0,0,.3)}
  .nav-links.open{right:0}
  .nav-links a{font-size:.8rem}

  section{padding:4.5rem 1.4rem}
  #hero{padding-top:58px}

  #hero{min-height:auto}
  .hero-left{padding:3rem 1.4rem 2.5rem}
  .hero-title{font-size:2rem}
  .hero-tagline,.hero-sub{max-width:none}

  .valeurs-grid{grid-template-columns:1fr}
  .services-2col{grid-template-columns:1fr;gap:2.5rem}
  .pq-grid{grid-template-columns:1fr}
  .at-grid{grid-template-columns:1fr}
  .bienfaits{grid-template-columns:repeat(2,1fr)}
  .interv-grid{grid-template-columns:1fr}

  .pf-tabs{gap:0}

  .sig-wrap{grid-template-columns:1fr;gap:2.5rem}
  .sig-card{padding:1.8rem}
  .sig-price{font-size:2.4rem}

  #apropos{grid-template-columns:1fr}
  .ap-img{padding:2.5rem 1.4rem 0}
  .ap-content{padding:2.5rem 1.4rem}

  .contact-grid{grid-template-columns:1fr;gap:3rem}

  footer{flex-direction:column;gap:1rem;text-align:center;padding:2rem 1.4rem}
  .footer-links a{margin:0 .6rem}
}

@media (max-width:480px){
  .hero-title{font-size:1.7rem}
  .sig-title{font-size:2.2rem}
  .sig-price{font-size:2rem}
  .bienfaits{grid-template-columns:1fr}
  .sig-step{grid-template-columns:40px 1fr}
}
