*{
	padding:0;margin:0;box-sizing:border-box; outline:none; -webkit-font-variant-ligatures: no-common-ligatures!important; font-variant-ligatures: no-common-ligatures!important;
}

/* ---------------------------------------------------------------------------------------------------- FONTS ---------------------------------------------------------------------------------------------------- */

@font-face {
    font-family: 'alright';
    src: url('fonts/alrightsans-regular-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-regular-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'heimat-l';
    src: url('fonts/heimat_didone_10_light-webfont.woff2') format('woff2'),
         url('fonts/heimat_didone_10_light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'heimat-i';
    src: url('fonts/heimat_didone_10_semi_bold_italic-webfont.woff2') format('woff2'),
         url('fonts/heimat_didone_10_semi_bold_italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'heimat-sb';
    src: url('fonts/heimat_didone_10_semi_bold-webfont.woff2') format('woff2'),
         url('fonts/heimat_didone_10_semi_bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'alright-b';
    src: url('fonts/alrightsans-bold-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-bold-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'alright-l';
    src: url('fonts/alrightsans-light-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-light-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'alright-sb';
    src: url('fonts/alrightsans-medium-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-medium-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'alright-i';
    src: url('fonts/alrightsans-regularitalic-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-regularitalic-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.alright {font-family:'alright'!important; font-weight:normal; font-style:normal;}
.alright-l {font-family:'alright-l'!important; font-weight:normal; font-style:normal;}
.alright-i {font-family:'alright-i'!important; font-weight:normal; font-style:normal;}
.alright-b {font-family:'alright-b'!important; font-weight:normal; font-style:normal;}
.alright-sb {font-family:'alright-sb'!important; font-weight:normal; font-style:normal;}
.heimat-l {font-family:'heimat-l'!important; font-weight:normal; font-style:normal;}
.heimat-sb {font-family:'heimat-sb'!important; font-weight:normal; font-style:normal;}
.heimat-i {font-family:'heimat-i'!important; font-weight:normal; font-style:normal;}

.font10 {font-size:10px;} 
.font11 {font-size:11px;} 
.font12 {font-size:12px;} 
.font13 {font-size:13px;} 
.font14 {font-size:14px;} 
.font15 {font-size:15px;} 
.font16 {font-size:16px;} 
.font17 {font-size:17px;} 
.font18 {font-size:18px;} 
.font19 {font-size:19px;} 
.font20 {font-size:20px;} 
.font22 {font-size:22px;} 
.font24 {font-size:24px;} 
.font26 {font-size:26px;} 
.font28 {font-size:28px;} 
.font30 {font-size:30px;} 
.font32 {font-size:32px;} 
.font34 {font-size:34px;} 
.font36 {font-size:36px;} 
.font40 {font-size:40px;} 
.font44 {font-size:44px;} 
.font48 {font-size:48px;} 
.font50 {font-size:50px;}
.font55 {font-size:55px;} 
.font60 {font-size:60px;}
.font70 {font-size:70px;}
.font80 {font-size:80px;}
.font85 {font-size:85px;}

/* ---------------------------------------------------------------------------------------------------- PARAMETRES GENERAUX ---------------------------------------------------------------------------------------------------- */
 
section,header,footer,figure,article,aside,nav,main {display:block;} 

button {border:none; background:none;}
a,a *,button,button *{-webkit-transition:all .25s ease;transition:all .25s ease; color:inherit; text-decoration:none; cursor:pointer; outline:0;} 
a img {border:0;} 
a:hover, button:hover {color:#F4A872; fill:#F4A872;}
img, svg {vertical-align:middle; border:none;}

ul,li {list-style-type:none;} 
b, strong {font-family:'alright-b'!important; font-weight:normal!important;}
em, em * {font-family:'alright-i'!important; font-weight:normal!important; font-style:normal!important;}
em b, em strong {font-weight:bold!important;}

p,div {font:14px 'alright'; color:#4D5878; line-height:24px; text-align:left; letter-spacing:.05em;} 

textarea {overflow:auto; resize:none;}
input,textarea {outline:0;}
input[type=submit] {cursor:pointer;}

h1,h2 {display:inline-block; width:100%; font:normal 70px 'heimat-sb'; color:#2D3561; text-align:center; vertical-align:middle; line-height:55px; margin-bottom:0px; letter-spacing:normal;}
h2 {font-size:50px; margin-bottom:25px; margin-top:15px; text-align:left;}

.middle {vertical-align:middle;}
.bottom {vertical-align:bottom;}
.right {text-align:right;}
.center {text-align:center;}
.justify {text-align:justify;}

/* ---------------------------------------------------------------------------------------------------- ELEMENTS GLOBAUX ---------------------------------------------------------------------------------------------------- */

@-webkit-keyframes scroll {from {margin-top:0px;} 25% {margin-top:6px} 75% {margin-top:-6px} to{margin-top:0px;}}

@keyframes scroll {from {margin-top:0px;} 25% {margin-top:6px} 75% {margin-top:-6px} to{margin-top:0px;}}

.bouton {display:inline-block; width:auto; padding:4px; border:solid 1px; position:relative; height:55px; text-decoration:none; vertical-align:top;}
.bouton>span {display:inline-block; width:auto; padding:0px 25px; height:100%; font:18px 'heimat-i'; line-height:45px; border:none; text-align:center; color:#fff; letter-spacing:normal;}
a.bouton:hover, button.bouton:hover {border-color:#2D3561;} a.bouton:hover span, button.bouton:hover span {background:#2D3561;}

.bouton svg {display:inline-block; width:20px; height:auto; vertical-align: middle; margin-left:10px; margin-top:-4px;}
.bouton svg * {fill:#fff}

.width960 {margin:auto; width:960px; position:relative; z-index:5;}
.width940 {margin:auto; width:940px; position:relative; z-index:5;}

.underline {text-decoration:underline;}

.col-big, .col-small {width:620px; padding-bottom:70px; position:relative; display:inline-block; vertical-align:top;}
.col-small {width:320px;}
.column {padding:70px 140px;} .column, .column * {text-align:center;}

.placeholder {color:#4D5878; opacity:1;} 
::-webkit-input-placeholder	{color:#4D5878; opacity:1;} 
::-moz-placeholder {color:#4D5878; opacity:1;}
::-ms-placeholder {color:#4D5878; opacity:1;}
::-ms-input-placeholder	{color:#4D5878; opacity:1;}
:-ms-input-placeholder	{color:#4D5878; opacity:1;}

/* ---------------------------------------------------------------------------------------------------- COULEURS ---------------------------------------------------------------------------------------------------- */

.blanc {color:#fff; fill:#fff;} 
.gris {color:#6B7392; fill:#6B7392;}
.orange {color:#F4A872; fill:#F4A872;}
.rose {color:#FFD4B8; fill:#FFD4B8;}
.kaki {color:#9B7EBD; fill:#9B7EBD;}
.kaki-alt {color:#B89DD6; fill:#9B7EBD;}
.noir {color:#2D3561; fill:#2D3561;}
.noir-alt {color:#4D5878; fill:#4D5878;}

.bgblanc {background:#fff;} 
.bggris {background:#6B7392;}
.bgorange {background:#F4A872;}
.bgrose {background:#FFD4B8;}
.bgkaki {background:#9B7EBD;}
.bgkaki-alt {background:#B89DD6;}
.bgnoir {background:#2D3561;}
.bgnoir-alt {background:#4D5878;}

/* ---------------------------------------------------------------------------------------------------- PAGE D'ACCUEIL ------------------------------------------------------------------------------------------*/

body {min-width:980px; width:100%; background-position:center top; background-repeat:no-repeat; background-attachment:fixed; background-image:url('images/background.jpg');}
.macaron-skype {position:fixed; right:10px; bottom:20px; z-index:1000;}
body.home {background-image:url('images/hero-accueil-aquarelle-montagne-serenite.jpg?v=blanchi2');}
body>header {width:100%; height:650px; z-index:1000; position:relative;}
body>header.index {height:800px;}

body>header>aside.bgrose>div {display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-box-align:center; -ms-flex-align:center; align-items:center; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
body>header>aside.bgrose>div>* {line-height:40px;}
.social a {display:inline-block; width:40px; height:40px; text-align:center; background:rgba(248,169,154,.7); line-height:40px;}
.social a+a {background:rgba(248,169,154,.4);}
.social a:hover {background:#F4A872;}

#logo {padding:50px 0;}
#logo a:hover svg {opacity:.7;}

#menu {position:relative; padding:4px; height:48px; z-index:100;}
#menu>li {display:inline-block; vertical-align:middle; height:40px; font:15px 'heimat-l'; text-align:center; width:132px; line-height:40px; color:#2D3561; letter-spacing:.05em; z-index:10; position:relative;}
#menu>li>a {display:block; width:100%; height:100%; line-height:40px;}
#menu>li:hover>a {color:inherit;}
#menu>li.active {background:#F4A872; color:#fff;}

#menu>li#barre {width:0px; -webkit-transition:all .6s ease; transition:all .6s ease; background:#fbd4cc; height:40px; position:absolute; top:4px; left:4px; z-index:5; opacity:0;}

#menu>li:hover ~ li#barre {width:132px; opacity:1;}
#menu>li:nth-child(1):hover ~ li#barre {left:4px;}
#menu>li:nth-child(2):hover ~ li#barre {left:136px;}
#menu>li:nth-child(3):hover ~ li#barre {left:268px;}
#menu>li:nth-child(4):hover ~ li#barre {left:400px;}
#menu>li:nth-child(5):hover ~ li#barre {left:532px;}
#menu>li:nth-child(6):hover ~ li#barre {left:664px;}
#menu>li:nth-child(7):hover ~ li#barre {left:796px;}
#menu>li:nth-child(8):hover ~ li#barre {left:816px;}

#menu>li.sous-menu ul {
    position:absolute; top:calc(100% + 4px); background:#FFD4B8; left:0; right:0; text-align:center;
}
#menu>li.sous-menu ul li {
    padding:0px; max-height:0; overflow:hidden; opacity:0; transition:all .5s ease .1s;
}
#menu>li.sous-menu ul li a {
    display:block; line-height:40px;color:#2D3561; 
}
#menu>li.sous-menu ul li a:hover {
    background:#F4A872;
    color:#fff;
}
#menu>li.sous-menu.open ul li {
    max-height:40px; opacity:1;
}

header h1 {margin-top:45px;}
header.index h1 {font-size:55px; line-height:45px; margin-bottom:40px; margin-top:0;}
header.index h1>span {letter-spacing:.2em;}

header.index>div.column {margin-top:60px;}

#main-content {position:relative; z-index:5; padding-bottom:130px; padding-top:70px;}
#main-content.index {background:url('images/background-main-home.png?v=blanc1') no-repeat center top; padding-top:0;}
#main-content:before {content:''; display:block; width:100%; height:132px; position:absolute; left:0; right:0; top:-130px; background:url('images/bg-main-top.png?v=initial') no-repeat top center; z-index:1;}
#scroll-link {display:inline-block; width:70px; position:absolute; left:0; right:0; margin:auto; bottom:-35px; top:auto; text-align:center; z-index:1000;}
#scroll-link>span {display:inline-block; width:70px; height:70px; text-align:center; line-height:70px; border-radius:70px; margin-top:10px;}
#scroll-link:hover>span {background:#F4A872;}
#scroll-link:hover>span svg * {fill:#fff;}

#accelerateurs {padding-bottom:60px; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align:start; -ms-flex-align:start; align-items:flex-start; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#accelerateurs>a {width:300px; height:620px; position:relative;}
#accelerateurs>a>.img {width:100%; height:310px; background-position:center bottom; background-repeat:no-repeat;  text-align:center; background-size: contain; position: relative;}
#accelerateurs>a.psy>.img {background-image:url('images/bg-accelerateur-3.png');}
#accelerateurs>a.peri>.img {background-image:url('images/bg-accelerateur-1.png');}
#accelerateurs>a.addict>.img {background-image:url('images/bg-accelerateur-2.png');}

#accelerateurs>a>.img>img {width: 100%; max-height: 100%; position: absolute; object-fit: contain; bottom: 0; left: 50%; transform: translateX(-50%);}

#accelerateurs>a>.txt {margin-top:40px; text-align:center; padding:0 10px;}
#accelerateurs>a>.txt strong {letter-spacing:normal;}

#accelerateurs>a>.bouton {position:absolute; margin:auto; width:180px; left:0; right:0; bottom:-20px; opacity:0;}
#accelerateurs>a>.bouton span {width:170px;}

#accelerateurs>a:hover>.img img {opacity:.25;}
#accelerateurs>a:hover>.txt strong {color:#F4A872!important;}

#accelerateurs>a:hover>.bouton {-webkit-transition-delay:.2s;transition-delay:.2s; bottom:0; opacity:1;}

body>footer {width:100%; background:url('images/background-footer.png') no-repeat center top / cover; padding-top:90px; position:relative; z-index:20; margin-top:-130px;}
.bt-top {display:block; width:70px; height:70px; line-height:65px; text-align:center; border-radius:70px; background:none; position:absolute; top:-35px; margin:auto; left:0; right:0;}
.bt-top:hover svg{-webkit-animation:scroll .6s linear infinite;animation:scroll .6s linear infinite;}

body>footer>nav.width940 {border-bottom:solid 1px rgba(255,255,255,.2); height:70px; z-index:10;}
body>footer>nav>ul {display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-box-align:center; -ms-flex-align:center; align-items:center; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between; height:70px; font:15px 'heimat-l'; color:#fff; letter-spacing:.05em;}
body>footer a:hover, body>footer>nav>ul li.active a, body>footer>div a:hover svg *  {color:#B89DD6; fill:#B89DD6;}
body>footer>nav>.social {display:inline-block; height:40px; position:absolute; top:100%; right:0;}
body>footer>nav>.social>a {display:inline-block; width:40px; height:40px; text-align:center; background:#B89DD6; line-height:40px;}
body>footer>nav>.social>a svg * {fill:#2D3561;}
body>footer>nav>.social>a:last-child {background:#9B7EBD;}
body>footer>nav>.social>a:hover {background:rgba(255,255,255,.5);}
body>footer>div a svg *  {fill:rgba(255,255,255,.5);}

body>footer>div {display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-box-align:end; -ms-flex-align:end; align-items:flex-end; padding:75px 0; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
body>footer>div>p {color:rgba(255,255,255,.5);}

/* ---------------------------------------------------------------------------------------------------- PAGE PRESENTATION ------------------------------------------------------------------------------------------*/

#main-content.presentation {background:url('images/background-main-presentation.png?v=blanc1') no-repeat center top;}

img.illus {position:absolute; z-index:10;}
img.illus.presentation-1 {top:30px; right:0px;}
img.illus.presentation-2 {top:-20px; left:-10px;}
img.illus.presentation-3 {top:20px; right:-25px;}
img.illus.presentation-4 {top:40px; left:-55px;}

#accelerateurs.alt {margin-top:20px;}
#accelerateurs.alt>a {height:460px;}

/* ---------------------------------------------------------------------------------------------------- PAGE PSYCHOLOGUE ------------------------------------------------------------------------------------------*/

#main-content.psychologue {background:url('images/background-main-psychologue.png') no-repeat center top;}

img.illus.psy-1 {right:-10px; top:25px;}
img.illus.psy-2 {left:-70px; top:50px;}
img.illus.psy-3 {right:-10px; top:0px;}

/* ---------------------------------------------------------------------------------------------------- PAGE ICV EMDR ------------------------------------------------------------------------------------------*/
#main-content.icv {background-color: #fff;}
#main-content.icv:after {display: block; width: 100%; height: 100%; position: absolute; top:0; left: 0; z-index: 2; content:'';background:url('images/background-main-icv.jpg') no-repeat center top; background-size: 120% auto;}

img.illus.icv-2 {left:-100px; top:50px;}
img.illus.icv-3 {right:-80px; top:110px;}

/* ---------------------------------------------------------------------------------------------------- PAGE PÉRINATALITÉ ------------------------------------------------------------------------------------------*/

#main-content.perinatalite {background:url('images/background-main-perinatalite.png') no-repeat center top;}

img.illus.peri-1 {right:0px; top:-30px;}
img.illus.peri-2 {left:-110px; top:60px;}
img.illus.peri-3 {right:-65px; top:100px;}
img.illus.peri-4 {left:0px; top:-25px;}
img.illus.peri-5 {right:-55px; top:35px;}
img.illus.peri-6 {left:-35px; top:-15px;}

.txt-cadre {background:none; border:solid 1px; padding:40px 80px 55px 80px; margin-bottom:80px;}
.txt-cadre .bouton {background:#FBF5EE; width:210px; position:absolute; bottom:-28px; left:0; right:0; margin:auto;}
.txt-cadre .bouton span {width:200px;}

/* ---------------------------------------------------------------------------------------------------- PAGE ADDICTIONS ------------------------------------------------------------------------------------------*/

#main-content.addictions {background:url('images/background-main-addictologie.png') no-repeat center top;}

img.illus.addict-1 {right:-100px; top:110px;}
img.illus.addict-2 {left:-35px; top:-25px;}
img.illus.addict-3 {right:0px; top:0px;}
img.illus.addict-4 {left:-15px; top:0px;}
img.illus.addict-5 {right:-75px; top:60px;}
img.illus.addict-6 {left:0px; top:-30px;}

/* ---------------------------------------------------------------------------------------------------- PAGE HONORAIRES ------------------------------------------------------------------------------------------*/

#main-content.honoraires {background:url('images/background-main-honoraires.png') no-repeat center top; padding-top:0;}
.blocs-honoraires {display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-box-align:center; -ms-flex-align:center; align-items:center; -ms-flex-pack:distribute; justify-content:space-around; text-align:center; padding-top:20px; margin:0 -140px;}
.blocs-honoraires>p svg {margin:15px 0 25px 0;} .blocs-honoraires>p svg * {fill:#fff;}
.blocs-honoraires>p span.font24 {letter-spacing:normal;}
.blocs-honoraires>p.cabinet {width:276px; height:422px; background:url('images/bloc-consultations-au-cabinet.png') no-repeat center center; margin:0px 10px; padding-top:115px; line-height:18px; padding-right:5px; margin-top:20px;}
.blocs-honoraires>p.specialisee {width:241px; height:394px; background:url('images/bloc-consultations-domicile.png') no-repeat center center; margin:0px 10px; padding-top:105px; line-height:18px; padding-left:15px;}
.blocs-honoraires>p.domicile {width:276px; height:422px; background:url('images/bloc-consultations-au-cabinet.png') no-repeat center center; margin:0px 10px; padding-top:115px; line-height:18px; padding-right:5px; margin-top:20px;}
.blocs-honoraires>p.bilan {width:241px; height:394px; background:url('images/bloc-consultations-domicile.png') no-repeat center center; margin:0px 10px; padding-top:105px; line-height:18px; padding-left:15px;}
.blocs-honoraires>p.bilan span.font24 {line-height:28px;}

/* ---------------------------------------------------------------------------------------------------- PAGE PARTENAIRES ------------------------------------------------------------------------------------------*/

#main-content.partenaires {background:#fff; padding-top:0;}

/* ---------------------------------------------------------------------------------------------------- PAGE CONTACT ------------------------------------------------------------------------------------------*/

#main-content.contact {background:#fff; padding-top:0;}

#formcontact {padding:0px 80px; padding-bottom:50px;}
#formcontact>div {display:inline-block; width:49%; vertical-align:top; padding:0px 5px;}

#formcontact input[type=text], #formcontact textarea {width:100%; height:50px; padding:0px 20px; border:solid 1px #bbc7cb; background:#fff; font:14px 'alright'; color:#4D5878; margin-bottom:10px; -webkit-transition:all .4s ease; transition:all .4s ease;}
#formcontact textarea {height:170px; padding-top:15px; margin-bottom:2px;}
#formcontact input[type=text]:focus, #formcontact textarea:focus {box-shadow:inset 0px 0px 7px rgba(0,0,0,.1); background:#f7f7f7;}

#formcontact button[type=submit]:hover {border-color:#F4A872;}
#formcontact button[type=submit]:hover span {background:#F4A872;}

#formcontact div.consentement.error p.consentement{color:red}

#map {position:relative; width:75%; margin:auto; z-index:10; overflow:hidden; margin-bottom:70px; border:solid 1px #2D3561; padding:10px;}
#map #carte {display:block; width:100%; margin:auto; position:relative; top:0px; margin-bottom:0px; height:600px; border:0; border:solid 1px #9B7EBD}

.picto-contact {
    display:inline-flex;
    align-items:center;
    justify-content: center;
    background:#F4A872;
    border-radius:50%;
    width:60px;
    height:60px;
    margin:10px;
    vertical-align: middle;
}

.picto-contact svg {
    width:50%;
    height:auto;
}

.picto-contact svg * {
    fill:#fff;
}

/* ==========================================================================
   END OF FOOTER
   ========================================================================== */

   .grecaptcha-badge {
    opacity:0;
    position:absolute;
    z-index:-1;
}

/* BOUTON CONTACT FLOTTANT */

.bouton_contact {
    position:fixed;
    z-index:100000;
    color:#F4A872;
    bottom:60px;
    right:60px;
    display:inline-flex;
    align-items:center;
    justify-content: flex-end;
    font-family: 'alright', sans-serif;
    font-size:16px;
    line-height:1;
}

.bouton_contact_img {
    width:50px;
    height:50px;
    margin-left:10px;
    border-radius:50%;
    background:#F4A872;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.bouton_contact_img svg {
    width:26px;
    height:auto;
}
.bouton_contact_img svg * {
    fill:#fff;
}

.bouton_contact:hover {
    color:rgba(255,255,255,0);
}
.bouton_contact:hover .bouton_contact_img {
    background:#2D3561;
    margin-left:-30px;
}

/******************************* RESPONSIVE */

@media (max-width:780px) {
    
    .hidden-xs {
        display:none;
    }
    
    .font10,.font11,.font12,.font13,.font14 {font-size:14px;} 
    .font15,.font16,.font17,.font18 {font-size:16px;} 
    .font19,.font20,.font22 {font-size:18px;} 
    .font24,.font26,.font28 {font-size:20px;} 
    .font30,.font32,.font34,.font36 {font-size:24px;} 
    .font40,.font44,.font48 {font-size:26px;} 
    .font50,.font55,.font60 {font-size:32px;}
    .font70,.font80,.font85 {font-size:36px;}
    
    p,div {line-height:1.5; letter-spacing:.025em;} 
    
    h1,h2 {font:normal 40px 'heimat-sb'; line-height:0.8;}
    h2 {font-size:26px; margin-bottom:25px; margin-top:20px;}
    
    .bouton {height:45px;}
    .bouton>span {padding:0px 17px; font:16px 'heimat-i'; line-height:35px;}
    .bouton svg {width:15px; }

    .width960,.width940 {width:100%;}

    .col-big, .col-small, .column {width:100%; padding:50px 30px;}
    
    .col-big+.col-small {
        padding-top:0;
    }
    
    body {min-width:0px;}
    
    body>header {height:auto; z-index:1000; padding-bottom:100px;}
    
    body>header.index:after {
        content:'';
        display:block;
        position:absolute;
        z-index:-1;
        top:0; bottom:0; left:0; right:0;
        background:#F4A872; 
        opacity:.5;
    }
    
    body>header.index {height:100vh;}
    
    #logo {
        padding:45px 30px 25px;
        position:static;
    }
    
    #logo>a>svg {
        width:200px;
        height:auto;
    }
    
    body>header .social {
        position:fixed;
        z-index:10000;
        top:0;
        left:0;
        right:0;
        height:75px;
        display:flex;
        align-items:flex-start;
        justify-content: flex-end;
        padding:15px 15px 0 0;
    }
    
    
    /**********************************/ 
    /* NAVIGATION MENU */
    /**********************************/ 
    
    .burger {
        width:48px;
        height:48px;
        border-radius:50%;
        background:#fff;
        display:inline-flex;
        align-items:center;
        justify-content: center;
        flex-direction:column;
        margin-left:15px;
        vertical-align: top;
    }
    
    .burger_bar {
        width:20px;
        height:2px;
        display:block;
        background:#F4A872;
        transition:all .25s ease-out .25s, transform .25s ease-out 0s;
    }
    
    .burger_bar+.burger_bar {
        margin-top:4px;
    }
    
    .active .burger_bar {
        transform: rotate(-45deg);
        transition:all .25s ease-out, transform .25s ease-out .25s;
    }
    .active .burger_bar+.burger_bar {
        margin-top:-2px!important;
    }
    .active .burger_bar:last-child {
        transform:rotate(45deg);
    }
    
    #menu {
        position:fixed; 
        z-index:9999; 
        top:0; 
        right:0; 
        width:0; 
        overflow:hidden;
        height:100vh;
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        flex-direction:column;
        padding:70px 0px;
        transition:all .35s ease-out .2s;
    }
    
    #menu>li {
        display:block; 
        font:18px 'heimat-l'; 
        text-align:left;
        width:100%;
        transition:all .2s ease-out 0s;
        color:#2D3561;
        transform:translateX(-20%);
        opacity:0;
    }
    
    #menu>li.active {background:none; color:#4D5878;}
    #menu>li:hover>a {color:#F4A872;}

    #menu>li#barre {display:none;}
    
    #menu>li.social a {
        display:inline-flex;
        width:40px;
        height:40px;
        border-radius:50%;
        align-items: center;
        justify-content: center;
    }
    
    #menu>li.social a+a {
        margin-left:15px;
    }
    
    .active #menu {
        width:100%;
        padding:70px 30px;
        transition-delay: 0s;
    }
    
    .active #menu>li {
        transform: none;
        transition-delay: .3s;
        opacity:1;
    }
    
    /**********************************/ 
    /* HEADER HOME */
    /**********************************/ 
    
    header h1 {margin-top:45px;}
    header.index h1 {font-size:45px; line-height:38px; margin-bottom:30px; margin-top:30px;}
    header.index h1>span {letter-spacing:.2em;}

    header.index>div.column {margin-top:0px;}
    
    
    /**********************************/ 
    /* MAIN CONTENT */
    /**********************************/ 
    
    #main-content {padding-bottom:150px; padding-top:70px;}
    #main-content.index {background:#fff; padding-top:30px;}
    #main-content:before {display: none;}
    
    #accelerateurs {padding-bottom:80px; display:flex; align-items:center; flex-direction:column; padding:0 30px;}
    #accelerateurs>a {width:100%; height:auto; position:relative; padding:30px 0; text-align: center;}
    #accelerateurs>a>.img {width:80%; margin:auto; padding-bottom:80%; height:auto;}

    #accelerateurs>a>.img>img {width: 100%; max-height: 100%; position: absolute; object-fit: contain; bottom: 0; left: 50%; transform: translateX(-50%);}

    #accelerateurs>a>.txt {margin-top:40px; text-align:center; padding:0 0px;}
    #accelerateurs>a>.txt strong {letter-spacing:normal;}

    #accelerateurs>a>.bouton {position:relative; margin:auto; width:180px; left:0; right:0; bottom:0px; opacity:1; margin-top:15px; margin-bottom: 30px;}

    #accelerateurs>a:hover>.img img {opacity:.25;}
    #accelerateurs>a:hover>.txt strong {color:#F4A872!important;}
    
    /**********************************/ 
    /* FOOTER */
    /**********************************/ 
    
    body>footer {padding-top:70px; margin-top:-90px;}

    body > footer > nav.width940 {
        height: auto;
        padding-bottom:15px;
    }

    body > footer > nav > ul {
        display:flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: column;
        height:auto;
    }
    body > footer > nav > ul li {
        margin-bottom: 15px;
    }

    body > footer > div {
        display:flex;
        align-items:center;
        justify-content: flex-start;
        flex-direction: column;
        padding: 30px;
    }

    body > footer > div > p {
        color: rgba(255, 255, 255, .5);
        width:100%;
    }
    body > footer > div > svg {
        display: none;
    }
    
    /* ---------------------------------------------------------------------------------------------------- PAGE PRESENTATION ------------------------------------------------------------------------------------------*/

    #main-content.presentation {background:url('images/background-main-presentation.png?v=blanc1') no-repeat center top, #fff;}

    img.illus {position:relative; width:70%; display:block; margin:auto; top:0!important; left:0!important; right:0!important; bottom:0!important;}
    

    #accelerateurs.alt {margin-top:20px;}
    #accelerateurs.alt>a {height:auto;}
    
    /* ---------------------------------------------------------------------------------------------------- PAGE PSYCHOLOGUE ------------------------------------------------------------------------------------------*/

    #main-content.psychologue {background:url('images/background-main-psychologue.png') no-repeat center top, #FBF5EE;}
    
    /* ---------------------------------------------------------------------------------------------------- PAGE PÉRINATALITÉ ------------------------------------------------------------------------------------------*/

    #main-content.perinatalite {background:url('images/background-main-perinatalite.png') no-repeat center top, #fff;}

    .txt-cadre {background:none; border:solid 1px; padding:30px 30px 45px; width:calc(100% - 60px); margin:auto; margin-bottom:80px;}
    .txt-cadre .bouton {background:#FBF5EE; width:180px; position:absolute; bottom:-25px; left:0; right:0; margin:auto;}
    .txt-cadre .bouton span {width:170px;}
    
    /* ---------------------------------------------------------------------------------------------------- PAGE ADDICTIONS ------------------------------------------------------------------------------------------*/

    #main-content.addictions {background:url('images/background-main-addictologie.png') no-repeat center top, #fff;}

    /* ---------------------------------------------------------------------------------------------------- PAGE ICV EMDR ------------------------------------------------------------------------------------------*/
    
    #main-content.icv {background:url('images/background-main-icv.jpg') no-repeat center -50px, #fff;}
    #main-content.icv:after {display: none;}
    
    /* ---------------------------------------------------------------------------------------------------- PAGE CONTACT ------------------------------------------------------------------------------------------*/

    #formcontact {padding:0px 30px; padding-bottom:50px;}
    #formcontact>div {display:block; width:100%; padding:0;}

    
    #map {position:relative; z-index:10; margin-bottom: 50px; width:95%;}
    #map #carte {display:block; height:75vw;}
    
    .bouton_contact {
        right:20px;
        bottom:20px;
    }

    .bouton_contact_img {
        margin-left:0px;
    }

    .bouton_contact_img svg {
        width:24px;
        height:auto;
    }
    .bouton_contact:hover .bouton_contact_img {
        margin-left:0px;
    }
}

@media (min-width:781px) {
    .hidden-xl {
        display:none!important;
    }
}
/* ======================================================================
   OVERRIDES ANAÏS — adaptations pixel-perfect Laetitia
   ====================================================================== */

/* Menu centré + bouton CTA */
#menu { text-align: center; }
#menu > li { text-align: center; }
#menu > li.cta-menu > a {
  background: #F4A872;
  color: #fff !important;
  border-radius: 999px;
  padding: 0 18px;
  margin: 0 4px;
  height: 40px;
  line-height: 40px;
  font-family: 'alright-sb' !important;
  letter-spacing: 0.04em;
  display: inline-block;
}
#menu > li.cta-menu > a:hover { background: #2D3561; color: #fff !important; }
#menu > li.cta-menu { width: auto; padding: 0; }

/* Hero H1 — taille adaptée pour "Psychopraticienne & sophrologue" */
header.index h1 {
  font-size: 48px !important;
  line-height: 50px !important;
  margin-bottom: 30px !important;
  letter-spacing: -0.01em;
}
header.index h1 > span.font13 {
  font-size: 13px !important;
  display: block;
  margin-bottom: 16px;
  letter-spacing: 0.22em !important;
}
@media (max-width: 720px) {
  header.index h1 { font-size: 34px !important; line-height: 38px !important; }
}

/* Cards "œuf" — adapter les JPG rectangulaires */
#accelerateurs > a {
  width: 300px;
  height: auto;
  padding-bottom: 60px;
}
#accelerateurs > a > .img {
  background-image: none !important;
  width: 240px;
  height: 290px;
  margin: 0 auto;
  border-radius: 50% 50% 45% 45% / 60% 60% 40% 40%;
  overflow: hidden;
  position: relative;
  box-shadow: 0 8px 24px rgba(45, 53, 97, 0.12);
}
#accelerateurs > a > .img > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  transform: none !important;
  max-height: none !important;
}
#accelerateurs > a > .img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent 0%, transparent 60%, rgba(45, 53, 97, 0.18) 100%);
  pointer-events: none;
}
#accelerateurs > a.peri > .img { box-shadow: 0 8px 24px rgba(244, 168, 114, 0.30); }
#accelerateurs > a.addict > .img { box-shadow: 0 8px 24px rgba(155, 126, 189, 0.28); }
#accelerateurs > a.psy > .img { box-shadow: 0 8px 24px rgba(242, 201, 76, 0.30); }

#accelerateurs > a:hover > .img > img { opacity: 1 !important; transform: none !important; }
#accelerateurs > a:hover > .img { transform: translateY(-4px); }
#accelerateurs > a > .img { transition: transform .25s ease, box-shadow .25s ease; }

/* Position du bouton hover sur les cards */
#accelerateurs > a > .bouton { bottom: 0; }

/* ======================================================================
   OVERRIDES v20 — Bouton flottant "Me contacter" repensé
   Fix : carré abricot avec icône invisible (fill abricot sur fond abricot)
   Améliorations : rond pastel propre, icône blanche, hover doux
   ====================================================================== */
.bouton_contact {
  position: fixed !important;
  right: 28px !important;
  bottom: 28px !important;
  left: auto !important;
  background: #2D3561 !important;
  color: #fff !important;
  padding: 12px 14px 12px 24px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  z-index: 9000 !important;
  box-shadow: 0 10px 28px rgba(45, 53, 97, 0.28) !important;
  font-family: 'alright-sb', 'Helvetica Neue', sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease !important;
}
.bouton_contact:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 34px rgba(45, 53, 97, 0.38) !important;
  background: #232a4d !important;
  color: #fff !important;
  margin: 0 !important;
}
.bouton_contact > span:first-child,
.bouton_contact .hidden-xs {
  color: #fff !important;
  white-space: nowrap;
}

/* Le pictogramme à droite : rond abricot pastel propre avec enveloppe blanche */
.bouton_contact .bouton_contact_img {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  background: #F8C8A1 !important;
  transition: background-color .25s ease, transform .25s ease !important;
  flex-shrink: 0 !important;
}
.bouton_contact .bouton_contact_img svg {
  width: 16px !important;
  height: 16px !important;
  display: block !important;
}
/* Surcharge la règle .bouton_contact_img svg * { fill:#fff } et le fill abricot pour avoir une enveloppe blanche bien visible */
.bouton_contact .bouton_contact_img svg path,
.bouton_contact .bouton_contact_img svg * {
  fill: #fff !important;
}

/* Hover : le rond passe en jaune pastel, micro-rotation */
.bouton_contact:hover .bouton_contact_img {
  background: #F7DA85 !important;
  transform: rotate(-6deg) scale(1.05) !important;
  margin-left: 0 !important;
}

/* Responsive : on garde le bouton bien lisible sur mobile (le texte se cache via .hidden-xs déjà géré) */
@media (max-width: 780px) {
  .bouton_contact {
    right: 16px !important;
    bottom: 16px !important;
    padding: 10px !important;
    gap: 0 !important;
  }
  .bouton_contact .bouton_contact_img {
    width: 36px !important;
    height: 36px !important;
  }
  .bouton_contact .bouton_contact_img svg {
    width: 18px !important;
    height: 18px !important;
  }
}

/* Bandeau coordonnées en haut : centrer + padding correct */
body > header > aside.bgrose { padding: 0; }
body > header > aside.bgrose > div { justify-content: center !important; padding: 0 28px; }

/* ======================================================================
   OVERRIDES v2 — Menu compact + hero recentré + scroll fluide
   ====================================================================== */

/* Retirer définitivement le CTA du menu (déjà retiré du HTML) */
#menu > li.cta-menu { display: none !important; }

/* Menu compact, ajusté à la taille des items, centré sur la page */
#menu {
  display: block !important;
  width: fit-content !important;
  max-width: 940px !important;
  margin: 0 auto !important;
  padding: 4px 6px !important;
  text-align: center;
  border-radius: 4px;
}
#menu > li { width: 132px; }

/* Remonter le contenu du hero — moins d'espace top */
header.index > div.column {
  margin-top: 0 !important;
  padding: 30px 80px 20px !important;
}

/* Hero H1 — moins d'écart pour fluidifier la lecture */
header.index h1 {
  margin-bottom: 22px !important;
  margin-top: 8px !important;
}

/* Paragraphe hero — line-height plus aérée + max-width pour éviter texte qui mord */
header.index p {
  line-height: 28px !important;
  font-size: 16px !important;
  max-width: 620px;
  margin: 0 auto !important;
}
header.index p em {
  display: block;
  padding: 0;
}

/* Hero : plus de hauteur pour que tout respire + plus d'espace en bas pour le bouton "Défiler" */
header.index {
  padding-bottom: 140px !important;
  min-height: 720px;
}

/* Bouton "Défiler" : positionné plus bas pour ne pas mordre sur le texte */
#scroll-link {
  bottom: 30px !important;
}

/* Responsive : adapter le hero sur mobile */
@media (max-width: 720px) {
  header.index { min-height: auto; padding-bottom: 100px !important; }
  header.index > div.column { padding: 20px 24px !important; }
  header.index p { font-size: 15px !important; line-height: 26px !important; }
  #menu { width: 100% !important; max-width: none !important; }
  #menu > li { width: 50%; display: inline-block; }
}

/* ======================================================================
   OVERRIDES v3 — Images ovoïdes + Hero des sous-pages
   ====================================================================== */

/* === Toutes les images illustratives en forme ovoïde === */
.col-small > img.illus,
.col-small > img {
  width: 100%;
  max-width: 280px;
  height: 340px;
  object-fit: cover;
  border-radius: 50% 50% 45% 45% / 60% 60% 40% 40%;
  display: block;
  margin: 0 auto;
  box-shadow: 0 10px 30px rgba(45, 53, 97, 0.18);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.col-small > img.illus:hover,
.col-small > img:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(45, 53, 97, 0.22);
}

/* Alternance de teinte d'ombre par section (variation visuelle) */
.width940:nth-of-type(1) .col-small > img { box-shadow: 0 10px 30px rgba(244, 168, 114, 0.30); }
.width940:nth-of-type(2) .col-small > img { box-shadow: 0 10px 30px rgba(155, 126, 189, 0.28); }
.width940:nth-of-type(3) .col-small > img { box-shadow: 0 10px 30px rgba(242, 201, 76, 0.32); }
.width940:nth-of-type(4) .col-small > img { box-shadow: 0 10px 30px rgba(244, 168, 114, 0.28); }
.width940:nth-of-type(5) .col-small > img { box-shadow: 0 10px 30px rgba(155, 126, 189, 0.28); }

/* === Hero des sous-pages : forme ovoïde abricot derrière le H1 === */
header.index > .width940.column {
  position: relative;
  z-index: 5;
}
header.index > .width940.column::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 620px;
  max-width: 90vw;
  height: 220px;
  background: radial-gradient(ellipse at center, rgba(244, 168, 114, 0.85) 0%, rgba(244, 168, 114, 0.55) 60%, transparent 100%);
  border-radius: 50% / 70%;
  transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
}

/* H1 sur les sous-pages : reste blanc mais ajoute text-shadow pour mieux ressortir */
header.index h1.blanc {
  color: #fff;
  text-shadow: 0 2px 12px rgba(45, 53, 97, 0.45);
  position: relative;
  z-index: 2;
}

/* Variation d'overlay par page pour différencier */
body.presentation header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(244, 168, 114, 0.85) 0%, rgba(244, 168, 114, 0.55) 60%, transparent 100%);
}
body.therapie header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(155, 126, 189, 0.85) 0%, rgba(155, 126, 189, 0.55) 60%, transparent 100%);
}
body.contact header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(242, 201, 76, 0.85) 0%, rgba(242, 201, 76, 0.55) 60%, transparent 100%);
}

/* Responsive */
@media (max-width: 720px) {
  .col-small > img.illus,
  .col-small > img {
    max-width: 220px;
    height: 270px;
  }
  header.index > .width940.column::before {
    width: 360px;
    height: 160px;
  }
}

/* ======================================================================
   OVERRIDES v4 — Fix overlay hero démesuré + neutraliser bg main sur sous-pages
   ====================================================================== */

/* Overlay ovoïde hero : taille raisonnable (autour du H1, pas envahissant) */
header.index > .width940.column::before {
  width: 380px !important;
  max-width: 70vw !important;
  height: 150px !important;
  border-radius: 50% / 65%;
}

@media (max-width: 720px) {
  header.index > .width940.column::before {
    width: 280px !important;
    height: 120px !important;
  }
}

/* Pas de background-image sur #main-content.therapie et #main-content.contact
   (sinon preview.ps1 génère un placeholder SVG abricot envahissant) */
#main-content.therapie,
#main-content.contact {
  background: none !important;
  background-image: none !important;
}

/* Pour la page Présentation, on a maintenant le vrai PNG background-main-presentation
   donc l'image se chargera. Mais on s'assure que si elle n'est pas trouvée, on n'a pas
   un fond cassé */
#main-content.presentation {
  background-color: var(--fond, #FBF5EE);
}

/* ======================================================================
   OVERRIDES v5 — Backgrounds Laetitia spécifiques pour Thérapie et Contact
   (cohérence visuelle avec la page Présentation)
   ====================================================================== */

#main-content.therapie {
  background: url('images/background-main-therapie.png?v=blanc1') no-repeat center top !important;
  background-color: var(--fond, #FBF5EE) !important;
}

#main-content.contact {
  background: url('images/background-main-contact.png?v=blanc1') no-repeat center top !important;
  background-color: var(--fond, #FBF5EE) !important;
  padding-top: 0;
}

/* ======================================================================
   OVERRIDES v6 — Aplat de couleur sur tout le hero des sous-pages
   (le galet ovoïde disparaît, le hero entier prend la couleur identitaire)
   ====================================================================== */

/* Supprimer définitivement l'overlay ovoïde derrière le H1 */
header.index > .width940.column::before {
  display: none !important;
}

/* Hero entier coloré selon la page */
body.presentation header.index {
  background-color: #F4A872 !important;  /* abricot */
  background-image: none !important;
}
body.therapie header.index {
  background-color: #9B7EBD !important;  /* violet */
  background-image: none !important;
}
body.contact header.index {
  background-color: #F2C94C !important;  /* jaune doré */
  background-image: none !important;
}

/* Aside du haut : prendre la même teinte que le hero (au lieu du rose Laetitia) */
body.presentation header.index > aside.bgrose,
body.therapie header.index > aside.bgrose,
body.contact header.index > aside.bgrose {
  background-color: transparent !important;
  border-bottom: 1px solid rgba(255,255,255,0.25);
}

/* H1 du hero : blanc renforcé pour bien ressortir sur les aplats colorés */
header.index h1.blanc {
  color: #fff !important;
  text-shadow: 0 2px 16px rgba(45, 53, 97, 0.45);
  font-size: 64px !important;
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

/* Sur fond jaune (Contact), forcer un peu plus de contraste sur le H1 */
body.contact header.index h1.blanc {
  color: #2D3561 !important;  /* bleu nuit, ressort mieux sur jaune */
  text-shadow: 0 2px 8px rgba(255,255,255,0.4);
}

/* Logo et sous-titre dans le header : adapter les couleurs pour la lisibilité */
body.presentation #logo a > span:first-child,
body.therapie #logo a > span:first-child {
  color: #fff !important;
}
body.contact #logo a > span:first-child {
  color: #2D3561 !important;
}
body.presentation #logo a > span:last-child,
body.therapie #logo a > span:last-child {
  color: rgba(255,255,255,0.85) !important;
}
body.contact #logo a > span:last-child {
  color: #2D3561 !important;
}

/* Menu : garder fond blanc pour rester lisible sur l'aplat coloré */
#menu.bgblanc {
  background-color: #fff !important;
}

/* Scroll-link "Défiler" : adapter la couleur */
header.index #scroll-link {
  color: #fff !important;
}
body.contact header.index #scroll-link {
  color: #2D3561 !important;
}

/* ======================================================================
   OVERRIDES v7 — Réintroduire le petit ovoïde derrière le H1 (subtil)
   par-dessus l'aplat de couleur pleine
   ====================================================================== */

/* Forme ovoïde subtile derrière le H1 — halo lumineux/profondeur */
header.index > .width940.column {
  position: relative;
}
header.index > .width940.column::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 420px !important;
  max-width: 75vw !important;
  height: 170px !important;
  border-radius: 50% / 65% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Halo blanc lumineux pour les fonds abricot et violet (H1 blanc dessus) */
body.presentation header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(255,255,255,0.32) 0%, rgba(255,255,255,0.14) 55%, transparent 100%) !important;
}
body.therapie header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(255,255,255,0.32) 0%, rgba(255,255,255,0.14) 55%, transparent 100%) !important;
}
/* Halo plus sombre pour le fond jaune (H1 bleu nuit dessus) */
body.contact header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(45,53,97,0.22) 0%, rgba(45,53,97,0.10) 55%, transparent 100%) !important;
}

/* S'assurer que le H1 passe au-dessus du halo */
header.index > .width940.column > h1 {
  position: relative;
  z-index: 1;
}

/* ======================================================================
   OVERRIDES v8 — Renforcer la visibilité de l'ovoïde derrière le H1
   ====================================================================== */

/* Halo plus dense et plus serré pour qu'il soit vraiment perceptible */
header.index > .width940.column::before {
  width: 360px !important;
  max-width: 70vw !important;
  height: 150px !important;
}

/* Halo blanc renforcé (50%→25%→0) pour abricot et violet */
body.presentation header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0.25) 55%, transparent 100%) !important;
}
body.therapie header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0.25) 55%, transparent 100%) !important;
}
/* Halo bleu nuit renforcé pour le fond jaune (Contact) */
body.contact header.index > .width940.column::before {
  background: radial-gradient(ellipse at center, rgba(45,53,97,0.32) 0%, rgba(45,53,97,0.15) 55%, transparent 100%) !important;
}

/* ======================================================================
   OVERRIDES v9 — ANNULATION des aplats colorés + halo + adaptations logo
   Retour au rendu Laetitia natif sur les 3 sous-pages
   ====================================================================== */

/* 1) Annuler les aplats colorés sur les 3 sous-pages (revenir au fond natif) */
body.presentation header.index,
body.therapie header.index,
body.contact header.index {
  background-color: transparent !important;
  background-image: none !important;
}

/* 2) Annuler le halo ovoïde derrière le H1 */
header.index > .width940.column::before {
  display: none !important;
}

/* 3) Aside.bgrose : revenir à l'abricot Laetitia (au lieu de transparent) */
body.presentation header.index > aside.bgrose,
body.therapie header.index > aside.bgrose,
body.contact header.index > aside.bgrose {
  background-color: #F4A872 !important;
  border-bottom: none !important;
}

/* 4) Logo : revenir aux couleurs natives (bleu nuit + violet) */
body.presentation #logo a > span:first-child,
body.therapie #logo a > span:first-child,
body.contact #logo a > span:first-child {
  color: #2D3561 !important;
}
body.presentation #logo a > span:last-child,
body.therapie #logo a > span:last-child,
body.contact #logo a > span:last-child {
  color: #9B7EBD !important;
}

/* 5) H1 : couleur foncée par défaut (lisible sur fond clair Laetitia) */
header.index h1 {
  color: #2D3561 !important;
  text-shadow: none !important;
}

/* 6) Scroll-link défiler : revenir à l'abricot */
header.index #scroll-link {
  color: #F4A872 !important;
}

/* 7) Petite décoration 3 pétales colorées au-dessus du H1 du hero */
.hero-deco {
  display: block !important;
  margin: 0 auto 24px !important;
  width: 76px !important;
  height: auto !important;
  opacity: 0.95;
}

/* ======================================================================
   OVERRIDES v10 — Pages légales (mentions, confidentialité, cookies)
   Étend le rendu Laetitia épuré aux 3 pages légales + style lisibilité
   ====================================================================== */

body.legal header.index {
  background-color: transparent !important;
  background-image: none !important;
}
body.legal header.index > aside.bgrose {
  background-color: #F4A872 !important;
  border-bottom: none !important;
}
body.legal #logo a > span:first-child { color: #2D3561 !important; }
body.legal #logo a > span:last-child  { color: #9B7EBD !important; }
body.legal header.index h1 {
  color: #2D3561 !important;
  text-shadow: none !important;
}
body.legal #scroll-link { display: none !important; }

body.legal section#main-content {
  background: #FBF5EE;
  padding: 50px 0 80px;
}
body.legal section#main-content > section.width940 {
  max-width: 760px;
  margin: 0 auto;
}
body.legal section#main-content h2 {
  font-family: 'heimat-sb', serif;
  font-size: 26px;
  color: #2D3561;
  margin: 36px 0 14px;
  line-height: 1.3;
}
body.legal section#main-content h2:first-of-type { margin-top: 8px; }
body.legal section#main-content h3 {
  font-family: 'alright-sb', sans-serif;
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #9B7EBD;
  margin: 22px 0 8px;
}
body.legal section#main-content p,
body.legal section#main-content ul {
  font-family: 'alright', sans-serif;
  font-size: 16px;
  line-height: 1.75;
  color: #3A3A3A;
  margin-bottom: 14px;
}
body.legal section#main-content ul {
  padding-left: 22px;
  list-style: disc;
}
body.legal section#main-content ul li { margin-bottom: 6px; }
body.legal section#main-content strong {
  color: #2D3561;
  font-family: 'alright-sb', sans-serif;
  font-weight: normal;
}
body.legal section#main-content a {
  color: #9B7EBD;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.legal section#main-content a:hover { color: #F4A872; }
body.legal section#main-content .legal-meta {
  font-style: italic;
  color: #6B6B6B;
  font-size: 14px;
  margin: 0 0 30px;
  border-left: 3px solid #F4A872;
  padding: 6px 0 6px 14px;
  background: #FFFFFF;
}
body.legal section#main-content em {
  color: #9B7EBD;
  font-style: italic;
}

/* ======================================================================
   OVERRIDES v11 — Pages légales : hero compact + centrage cohérent
   Le hero Laetitia fait 800px (height) + 720px (min-height) + 140px padding.
   Pour les pages légales c'est démesuré : on réduit et on centre tout.
   ====================================================================== */

body.legal header.index,
body>body.legal header.index {
  height: auto !important;
  min-height: 0 !important;
  padding-bottom: 70px !important;
}

body.legal header.index > .width940.column {
  margin-top: 40px !important;
  padding: 0 24px !important;
  text-align: center !important;
}

body.legal header.index .hero-deco {
  width: 72px !important;
  height: auto !important;
  display: block !important;
  margin: 8px auto 20px !important;
  opacity: 1 !important;
}

body.legal header.index h1 {
  font-size: 48px !important;
  line-height: 1.1 !important;
  color: #2D3561 !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
  max-width: 760px;
  padding: 0;
}

body.legal header.index h1 > span.font13 {
  display: block !important;
  font-size: 12px !important;
  letter-spacing: 0.25em !important;
  color: #9B7EBD !important;
  margin-bottom: 16px !important;
  font-family: 'alright-sb', sans-serif !important;
  text-align: center !important;
}

@media (max-width: 720px) {
  body.legal header.index h1 { font-size: 32px !important; line-height: 1.15 !important; }
  body.legal header.index { padding-bottom: 40px !important; }
  body.legal header.index > .width940.column { margin-top: 20px !important; }
}

/* ======================================================================
   OVERRIDES v12 — Ultra prioritaire : force hero compact pages légales
   Selector "html body.legal" pour bypasser toute spécificité antérieure.
   ====================================================================== */

html body.legal header.index,
html body.legal > header.index,
html body.legal header.index.index {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding-top: 0 !important;
  padding-bottom: 50px !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body.legal header.index > aside.bgrose {
  position: relative !important;
}

html body.legal header.index > .width940.column {
  margin: 30px auto 0 !important;
  padding: 0 24px !important;
  text-align: center !important;
  min-height: 0 !important;
}

html body.legal header.index .hero-deco {
  display: block !important;
  width: 72px !important;
  height: auto !important;
  margin: 0 auto 18px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body.legal header.index h1 {
  font-size: 48px !important;
  line-height: 1.1 !important;
  color: #2D3561 !important;
  margin: 0 auto 24px !important;
  padding: 0 !important;
  text-align: center !important;
  max-width: 760px !important;
  display: block !important;
  visibility: visible !important;
  text-shadow: none !important;
}

html body.legal header.index h1 > span.font13 {
  display: block !important;
  font-size: 12px !important;
  letter-spacing: 0.25em !important;
  color: #9B7EBD !important;
  margin-bottom: 14px !important;
  font-family: 'alright-sb', sans-serif !important;
  text-align: center !important;
  visibility: visible !important;
}

/* ======================================================================
   OVERRIDES v13 — Chirurgie : bloc titre déplacé hors header
   La cascade Laetitia rendait le bloc titre invisible dans le header.
   On masque l'ancien bloc et on style le nouveau qui vit dans main-content.
   ====================================================================== */

/* Masquer l'ancien bloc titre (resté dans le header pour compat) */
html body.legal header.index > .width940.column {
  display: none !important;
}

/* Bloc titre légales : sobre, centré, fond cream */
.legal-title-block {
  background: #FBF5EE;
  padding: 30px 24px 40px;
  text-align: center;
  border-bottom: 1px solid rgba(155, 126, 189, 0.12);
}
.legal-title-inner {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
.legal-title-block .hero-deco {
  display: block;
  width: 72px;
  height: auto;
  margin: 0 auto 18px;
  opacity: 1;
}
.legal-title-block .legal-eyebrow {
  font-family: 'alright-sb', sans-serif;
  font-size: 12px;
  letter-spacing: 0.25em;
  color: #9B7EBD;
  text-transform: uppercase;
  margin: 0 0 14px;
  text-align: center;
}
.legal-title-block .legal-h1 {
  font-family: 'heimat-i', serif;
  font-size: 56px;
  line-height: 1.1;
  color: #2D3561;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  max-width: 760px;
  display: block;
  font-style: normal;
}

/* Adapter le main-content sur les pages légales : pas de wave divider lourde */
html body.legal section#main-content {
  padding-top: 0 !important;
}
html body.legal section#main-content::before {
  display: none !important;
}

@media (max-width: 720px) {
  .legal-title-block .legal-h1 { font-size: 36px; }
  .legal-title-block { padding: 24px 16px 30px; }
}

/* ======================================================================
   OVERRIDES v19 — Typo titres : Heimat Didone → Cormorant Infant Italic
   Chirurgical : seuls les selecteurs precis sont touches. Aucun selecteur
   global div/span/a. Le corps de texte reste en Alright Sans.
   ====================================================================== */

/* Classes utilities heimat-* + tous les titres concernes */
.heimat-l, .heimat-sb, .heimat-i,
h1, h2,
header.index h1,
.legal-title-block .legal-h1,
body.legal section#main-content h2,
#logo a > span:first-child,
#accelerateurs strong,
nav#accelerateurs strong,
.bouton span,
.bouton.orange span,
.bouton.noir span {
  font-family: 'Cormorant Infant', serif !important;
  font-style: italic !important;
  font-weight: 500 !important;
}

/* Preserver les caps eyebrow en sans-serif (pas en Cormorant) */
header.index h1 > span.font13,
header.index h1 > span.alright-sb,
.legal-title-block .legal-eyebrow,
.font13 {
  font-family: 'alright-sb', 'Alright Sans', sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
}

/* ======================================================================
   OVERRIDES v15 — Index hero : texte cream lisible + scroll-link décollé
   Le bleu nuit ne tenait pas la photo de fond. Retour à un blanc cassé
   cream (palette) avec halo foncé marqué pour lisibilité maximale.
   Padding-bottom doublé et scroll-link poussé sur le wave divider.
   ====================================================================== */

body.home header.index h1.blanc,
body.home header.index h1.blanc > span,
body.home header.index p.blanc,
body.home header.index p.blanc em {
  color: #FBF5EE !important;
  text-shadow:
    0 2px 14px rgba(45, 53, 97, 0.85),
    0 1px 4px rgba(0, 0, 0, 0.45) !important;
}

/* Air sous le paragraphe : 190px pour garantir aucun chevauchement */
body.home header.index > .width940.column {
  padding-bottom: 190px !important;
}

/* Scroll-link "Défiler" poussé clairement sur le wave divider */
body.home header.index #scroll-link {
  bottom: -65px !important;
}

@media (max-width: 720px) {
  body.home header.index > .width940.column { padding-bottom: 130px !important; }
  body.home header.index #scroll-link { bottom: -45px !important; }
}

/* ======================================================================
   OVERRIDES v17 — Hero index : léger assombrissement de l'image bg
   Overlay subtil via pseudo-element pour faire ressortir le texte cream
   du hero (H1 + manifesto) sans altérer l'image elle-même.
   ====================================================================== */

body.home header.index {
  position: relative;
}
body.home header.index::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: none;
  pointer-events: none;
  z-index: 1;
}
body.home header.index > aside.bgrose,
body.home header.index > #logo,
body.home header.index > ul#menu,
body.home header.index > .width940.column,
body.home header.index > #scroll-link {
  position: relative;
  z-index: 2;
}

/* ======================================================================
   OVERRIDES v21 — Harmonisation courbure blanche accueil
   Sur les sous-pages, bg-main-top.png (#main-content::before) tombe sur
   un body.background.jpg cream — ses zones transparentes revelent du cream
   et le PNG dessine sa courbe blanche convexe par-dessus.
   Sur l'accueil, body.home porte l'aquarelle mountain (sombre) en
   background-attachment:fixed : les zones transparentes du PNG revelent du
   sombre, d'ou une courbure sale et peu visible.
   Fix : ajouter un background-color cream directement sur le pseudo
   #main-content::before uniquement sur body.home — la couleur fait office
   de fond solide derriere le PNG, ses zones transparentes revelent du cream
   comme sur les sous-pages. Aucun changement sur le PNG, le hero aquarelle,
   ni les sous-pages.
   ====================================================================== */

body.home #main-content.index::before {
  background: url('images/bg-main-top.png?v=initial') no-repeat top center;
}
