:root{--cream:#fbf7ef;--cream2:#f4ede2;--violet:#624875;--lavender:#8a7397;--gold:#c6a76a;--brown:#65584f;--white:#fffdf9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--brown);font-family:Arial,sans-serif;line-height:1.75}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 7%;border-bottom:1px solid #c6a76a40;background:#fbf7eff2;position:sticky;top:0;z-index:5;backdrop-filter:blur(8px)}.logo{font:28px Georgia,serif;color:var(--violet);text-decoration:none}.nav nav{display:flex;gap:28px}.nav nav a{color:var(--brown);text-decoration:none;font-size:14px}.hero{min-height:82vh;display:grid;place-items:center;text-align:center;padding:80px 20px;position:relative;overflow:hidden}.halo{position:absolute;width:520px;height:520px;border:1px solid #c6a76a35;border-radius:50%;box-shadow:0 0 0 70px #8a73970b,0 0 0 140px #c6a76a08}.hero-inner{position:relative;max-width:850px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:12px;font-weight:600}.hero h1{font:normal clamp(58px,9vw,104px) Georgia,serif;color:var(--violet);margin:4px 0}.services{color:var(--lavender);letter-spacing:.04em}.services span{color:var(--gold);margin:0 7px}.goldline{width:58px;height:1px;background:var(--gold);margin:28px auto}.lead{font:italic clamp(21px,3vw,30px) Georgia,serif;color:var(--brown);max-width:720px;margin:auto}.actions{display:flex;justify-content:center;gap:14px;margin-top:36px;flex-wrap:wrap}.btn{display:inline-block;padding:12px 22px;border-radius:30px;text-decoration:none;font-size:14px}.primary{background:var(--violet);color:white}.secondary{border:1px solid var(--gold);color:var(--violet);background:#fff8}.intro,.location{padding:100px max(8%,20px);text-align:center;max-width:900px;margin:auto}.intro h2,.offers h2,.mandalas h2,.location h2{font:normal clamp(30px,4vw,44px) Georgia,serif;color:var(--violet);margin:8px 0 24px}.intro>p:not(.kicker):not(.quote){max-width:720px;margin:0 auto}.quote{font:italic 22px Georgia,serif;color:var(--lavender);margin-top:34px}.offers{padding:90px 7%;background:var(--cream2);text-align:center}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1000px;margin:40px auto 0}.cards article{background:var(--white);padding:42px;border:1px solid #c6a76a35;border-radius:18px}.symbol{font-size:32px;color:var(--gold)}.cards h3{font:normal 25px Georgia,serif;color:var(--violet)}.cards a{color:var(--violet);text-decoration:none}.price{color:var(--gold);font-weight:bold}.mandalas{padding:100px 8%;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.mandalas>div:first-child{max-width:650px}.placeholder{aspect-ratio:1;background:linear-gradient(145deg,#f0e8dc,#fffaf3);border:1px solid #c6a76a55;border-radius:20px;display:grid;place-items:center;text-align:center;color:var(--lavender)}.mandala-mark{font-size:90px;color:var(--gold);line-height:1}.location{border-top:1px solid #c6a76a35}footer{padding:35px 7%;border-top:1px solid #c6a76a35;display:flex;gap:20px;justify-content:space-between;color:var(--lavender);font-size:13px}footer strong{color:var(--violet)}@media(max-width:720px){.nav{padding:0 20px}.nav nav{display:none}.hero{min-height:78vh;padding-top:55px}.halo{width:330px;height:330px}.cards,.mandalas{grid-template-columns:1fr}.cards article{padding:30px 24px}.mandalas{gap:35px;padding:75px 22px}.intro,.offers,.location{padding-top:70px;padding-bottom:70px}.services span{margin:0 2px}footer{flex-direction:column;text-align:center;gap:4px}}
.page-hero{padding:95px 20px 75px;text-align:center;background:linear-gradient(180deg,var(--cream),var(--cream2));border-bottom:1px solid #c6a76a35}.page-hero-inner{max-width:900px;margin:auto}.page-hero h1{font:normal clamp(42px,7vw,72px) Georgia,serif;color:var(--violet);margin:8px 0}.care-content{max-width:1000px;margin:auto;padding:70px max(6%,22px) 90px}.care-intro{max-width:760px;margin:0 auto 70px;text-align:center;font-size:18px}.care-block{max-width:800px;margin:0 auto;padding:48px 0;border-top:1px solid #c6a76a35}.care-block h2,.care-card h2,.care-price h2{font:normal 32px Georgia,serif;color:var(--violet);margin:6px 0 22px}.soft-note{margin-top:28px;padding:22px 25px;background:var(--cream2);border-left:2px solid var(--gold);border-radius:0 12px 12px 0}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0 70px}.care-card{padding:38px;background:var(--white);border:1px solid #c6a76a35;border-radius:18px}.care-price{text-align:center;padding:55px 25px;background:var(--cream2);border-radius:20px}.big-price{font:normal 46px Georgia,serif;color:var(--gold);margin:10px 0}.care-price .btn{margin-top:18px}.medical-note{max-width:760px;margin:38px auto 0;text-align:center;font-size:13px;color:var(--lavender);font-style:italic}@media(max-width:720px){.page-hero{padding:65px 20px 55px}.care-content{padding-top:50px}.care-intro{margin-bottom:45px}.care-block{padding:38px 0}.care-grid{grid-template-columns:1fr}.care-card{padding:30px 24px}}
/* Page Soins — continuité visuelle avec l'accueil */
.care-hero{min-height:72vh}.care-hero h1{font:normal clamp(48px,7vw,82px) Georgia,serif;color:var(--violet);margin:4px 0}.care-opening{padding-bottom:90px}.care-flow{border-top:1px solid #c6a76a35}.care-section{padding:90px max(8%,20px)}.care-section.light{background:var(--cream2)}.care-section-inner{max-width:780px;margin:auto;text-align:center}.care-section h2,.care-options h2,.care-tariff h2{font:normal clamp(30px,4vw,44px) Georgia,serif;color:var(--violet);margin:8px 0 26px}.care-section-inner>p:not(.kicker):not(.care-emphasis){text-align:left}.care-emphasis{font:italic 19px Georgia,serif;color:var(--lavender);max-width:680px;margin:32px auto 0}.care-options{padding-top:90px;padding-bottom:90px}.care-options .cards article{text-align:left}.care-options .cards .symbol,.care-options .cards h3{text-align:center}.care-tariff{max-width:900px}.care-tariff .big-price{font:normal 48px Georgia,serif;color:var(--gold);margin:8px 0}.care-tariff .medical-note{margin-top:42px}@media(max-width:720px){.care-hero{min-height:68vh}.care-section{padding:70px 22px}.care-section-inner>p:not(.kicker):not(.care-emphasis){text-align:left}.care-opening{padding-bottom:70px}}
/* Confort de lecture sur mobile */
@media(max-width:720px){
  .care-opening{padding-left:28px;padding-right:28px}
  .care-section{padding-left:28px;padding-right:28px}
  .care-section-inner{max-width:100%}
  .care-section-inner>p:not(.kicker):not(.care-emphasis){line-height:1.8}
  .care-options{padding-left:22px;padding-right:22px}
  .care-options .cards article{padding-left:28px;padding-right:28px}
  .care-tariff{padding-left:28px;padding-right:28px}
  .medical-note{padding-left:4px;padding-right:4px}
}
/* Évite les coupures de mots disgracieuses sur mobile */
@media(max-width:720px){.care-hero,.care-opening,.care-flow,.care-options,.care-tariff{hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:normal}}

/* Lecture plus harmonieuse des textes de la page Soins */
.care-section-inner>p:not(.kicker):not(.care-emphasis),
.care-options .cards article p{max-width:68ch;margin-left:auto;margin-right:auto;text-align:left}
@media(max-width:720px){
  .care-section-inner>p:not(.kicker):not(.care-emphasis),
  .care-options .cards article p{
    max-width:32em;
    text-align:left;
    line-height:1.82;
    text-wrap:pretty;
  }
}

/* Page Soins uniquement : paragraphes équilibrés sans justification forcée */
@media(min-width:721px){
  .care-opening>p:not(.kicker):not(.quote),
  .care-section-inner>p:not(.kicker):not(.care-emphasis){
    max-width:720px;
    margin-left:auto;
    margin-right:auto;
    text-align:left;
    text-wrap:pretty;
  }
}
@media(max-width:720px){
  .care-opening>p:not(.kicker):not(.quote),
  .care-section-inner>p:not(.kicker):not(.care-emphasis),
  .care-section-inner>.care-emphasis{
    width:88%;
    max-width:34ch;
    margin-left:auto;
    margin-right:auto;
    text-align:left;
    text-wrap:pretty;
    hyphens:none;
    -webkit-hyphens:none;
  }
}
/* Page Soins uniquement : finition éditoriale */
.care-opening>p:not(.kicker):not(.quote),
.care-section-inner>p:not(.kicker):not(.care-emphasis){
  margin-top:0;
  margin-bottom:1.35em;
}
.care-section-inner>.care-emphasis{
  margin-top:2.1em;
  padding:18px 22px;
  border-left:2px solid var(--gold);
  background:rgba(244,237,226,.58);
  border-radius:0 12px 12px 0;
  font-size:18px;
  line-height:1.7;
}
@media(min-width:721px){
  .care-opening>p:not(.kicker):not(.quote),
  .care-section-inner>p:not(.kicker):not(.care-emphasis){
    max-width:680px;
    line-height:1.82;
  }
  .care-section-inner>.care-emphasis{max-width:680px;margin-left:auto;margin-right:auto}
}
@media(max-width:720px){
  .care-opening>p:not(.kicker):not(.quote),
  .care-section-inner>p:not(.kicker):not(.care-emphasis){
    width:86%;
    max-width:33ch;
    line-height:1.82;
    margin-bottom:1.45em;
  }
  .care-section-inner>.care-emphasis{
    width:86%;
    max-width:33ch;
    padding:16px 18px;
    font-size:17px;
    line-height:1.72;
  }
}
/* Page Soins uniquement : essai de tous les textes explicatifs centrés */
body .care-opening>p:not(.kicker),
body .care-section-inner>p:not(.kicker),
body .care-options .cards article p,
body .care-tariff>p:not(.kicker){
  text-align:center !important;
  margin-left:auto;
  margin-right:auto;
}
body .care-section-inner>.care-emphasis{
  border-left:0;
  background:transparent;
  border-radius:0;
  padding:0;
}
@media(max-width:720px){
  body .care-opening>p:not(.kicker),
  body .care-section-inner>p:not(.kicker),
  body .care-options .cards article p,
  body .care-tariff>p:not(.kicker){
    width:90%;
    max-width:36ch;
    text-align:center !important;
    line-height:1.78;
  }
}
/* Page Soins : centrage explicite de TOUS les paragraphes */
body main .care-hero p,
body main .care-opening p,
body main .care-flow p,
body main .care-options p,
body main .care-tariff p{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body main .care-opening p,
body main .care-flow p,
body main .care-options .cards article p,
body main .care-tariff p{
  max-width:680px;
}
@media(max-width:720px){
  body main .care-opening p,
  body main .care-flow p,
  body main .care-options .cards article p,
  body main .care-tariff p{
    width:92% !important;
    max-width:36ch !important;
    text-align:center !important;
  }
}
/* Page Mandalas uniquement */
.page-mandalas .mandala-gallery{padding:95px 7%;background:var(--cream)}
.page-mandalas .mandala-gallery-head{max-width:760px;margin:0 auto 50px;text-align:center}
.page-mandalas .mandala-gallery-head h2{font:normal clamp(32px,4vw,46px) Georgia,serif;color:var(--violet);margin:8px 0 20px}
.page-mandalas .mandala-grid{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.page-mandalas .mandala-card{overflow:hidden;background:var(--white);border:1px solid #c6a76a42;border-radius:20px;box-shadow:0 12px 32px rgba(101,88,79,.06)}
.page-mandalas .mandala-image-wrap{position:relative;aspect-ratio:1;background:linear-gradient(145deg,#f0e8dc,#fffaf3);display:grid;place-items:center;overflow:hidden}
.page-mandalas .mandala-image-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.page-mandalas .mandala-image-wrap.photo-waiting:after{content:"✦";font-size:62px;color:var(--gold)}
.page-mandalas .mandala-copy{padding:30px 32px 34px;text-align:center}
.page-mandalas .mandala-copy h3{font:normal 25px/1.3 Georgia,serif;color:var(--violet);margin:0 0 10px}
.page-mandalas .mandala-copy>p:not(.mandala-words):not(.mandala-format){text-align:left;line-height:1.75}
.page-mandalas .mandala-words{color:var(--gold);font-weight:600;letter-spacing:.03em;margin:0 0 20px}
.page-mandalas .mandala-format{margin:24px 0 0;padding-top:18px;border-top:1px solid #c6a76a35;color:var(--violet);font-weight:600}
.page-mandalas .mandala-call{font:italic clamp(22px,3vw,30px) Georgia,serif;color:var(--lavender);text-align:center;max-width:720px;margin:65px auto 0}
@media(max-width:720px){.page-mandalas .mandala-gallery{padding:70px 20px}.page-mandalas .mandala-grid{grid-template-columns:1fr;gap:26px}.page-mandalas .mandala-copy{padding:26px 24px 30px}.page-mandalas .mandala-copy h3{font-size:23px}}

/* Navigation commune et accès au contact */
.mobile-menu{display:none}
.contact-email a{color:var(--violet);overflow-wrap:anywhere}
.mandala-interest{margin-top:22px}
section[id],article[id]{scroll-margin-top:90px}
@media(max-width:720px){
  .nav .mobile-menu{display:block;position:relative;margin-left:auto}
  .mobile-menu summary{padding:10px 14px;border:1px solid var(--gold);border-radius:24px;color:var(--violet);font-size:14px;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary::after{content:" +"}
  .mobile-menu[open] summary::after{content:" −"}
  .nav .mobile-menu nav{display:flex;flex-direction:column;gap:0;position:absolute;right:0;top:calc(100% + 12px);width:230px;max-width:calc(100vw - 40px);padding:10px;background:var(--white);border:1px solid #c6a76a40;border-radius:12px;box-shadow:0 10px 24px #65584f20}
  .nav .mobile-menu nav a{display:block;padding:12px 14px}
  .nav .brand-with-logo{gap:8px;font-size:25px}
  .nav .brand-with-logo img{width:48px;height:48px}
}

/* Contact depuis une création */
.mandala-contact-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:38px 30px 24px;border:1px solid #c6a76a55;border-radius:20px;background:var(--cream);color:var(--brown);text-align:center;font-family:Arial,sans-serif;line-height:1.75}
.mandala-contact-dialog::backdrop{background:rgba(45,33,48,.45)}
.mandala-contact-dialog h2{font:normal 30px/1.3 Georgia,serif;color:var(--violet);margin:10px 0 18px}
.dialog-close-form{text-align:right;margin:-22px -14px 0 0}
.dialog-close{width:40px;height:40px;border:0;background:transparent;color:var(--violet);font-size:30px}
.selected-mandala{color:var(--violet);font-weight:bold}
.dialog-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:24px 0 16px}
.dialog-help{font-size:14px}
.mandala-contact-dialog label{display:block;margin-top:24px;font-size:14px}
.mandala-contact-dialog input{display:block;width:100%;max-width:330px;margin:10px auto 16px;padding:12px;border:1px solid #c6a76a55;border-radius:8px;background:var(--white);color:var(--brown);font:16px Arial,sans-serif;text-align:center}
.mandala-contact-dialog button.btn{font-family:Arial,sans-serif;cursor:pointer}
.copy-status{min-height:1.75em;font-size:14px;margin-bottom:0}
@media(max-width:400px){.mandala-contact-dialog{padding:30px 20px 18px}.dialog-actions{flex-direction:column}.mandala-contact-dialog h2{font-size:26px}}

footer{flex-wrap:wrap;align-items:center}footer a{color:var(--violet);font-size:13px;text-decoration:underline;text-underline-offset:3px}
