

.icon-block {
  padding: 0 15px;
}
.icon-block .material-icons {
	font-size: inherit;
}

body{
font-size:1.1em;
max-width:1980px;
font-family: "Playfair Display", serif;
margin:auto;
background-color:#f8f4f1;
background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.30),transparent 55%), url("../img/deco/texture-coton04.png");
}

/* ------------------  nav  ---------------------------- */

	
	
nav{
background: rgba(255,255,255,0);
	  -webkit-box-shadow: none;
	  box-shadow: none;
	  position: relative;
  z-index: 10; 
}	
	
nav .sidenav-trigger i {
  color: #ffffff;
}	
#logo-container{
margin-left:3%;
display:inline-block;
width:120px;
height:60px;
margin-top:2px;
background-image: url("../img/logo.png");
background-size:100%;
background-repeat:no-repeat;
}	
	
	
	
	
nav ul li a{
	font-size:1.05em!important;
}	
	
nav ul li a img{
	display:inline-block;
	width:30px;
	margin-right:10px;
	top:8px;
	position:relative;
	margin-right:10px;
}	
	
	
	
	
	
	
	
	
/*  */

@media only screen and (min-width: 1401px) {

    nav {
        position: relative;
        top: 10px;
    }

    nav ul:not(.sidenav) {
        border-radius: 30px 0 0 30px;
    }

    #logo-container {
        width: 160px;
    }

    nav ul:not(.sidenav) li {
        text-align: center;
        min-width: 180px;
        border-right: 1px solid rgba(255,255,255,0.15);
        overflow: hidden;
    }

    nav ul:not(.sidenav) li a {
        opacity: 0.85;
        color: #ffffff !important;
        transition: all 0.3s;
    }

    nav ul:not(.sidenav) li:hover a {
        opacity: 1;
    }

    nav ul:not(.sidenav) li a img {
        width: 40px;
        top: 12px;
        opacity: 1;
        filter: brightness(0) invert(1);
    }
}
	
@media screen and (max-width: 1400px) {
    nav .hide-on-med-and-down {
        display: none !important;
    }

    nav .sidenav-trigger {
        display: block !important;
    }
}	
	
	/* MENU MOBILE */
#nav-mobile.sidenav {
    background-color: #f8f4f1;
}

#nav-mobile.sidenav li {
    min-width: 0;
    border: 0;
    overflow: visible;
}

#nav-mobile.sidenav li a {
    color: #333 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

#nav-mobile.sidenav li a img {
    width: 30px;
    filter: none !important;
    opacity: 1 !important;
}
	
	






/* ------------------  Global  ---------------------------- */



.p0{
padding:0;
}
.p5{
padding:5%;
}

.mt2{
margin-top:2%;
}

.mt5{
margin-top:5%;
}

.mb2{
margin-bottom:2%;
}

.mb5{
margin-bottom:5%;
}

.brad20{
	border-radius:20px;
}




h1{
	max-width:500px;
	text-align:left;
	font-weight:600;
	font-size:5.3em;
	padding-bottom:20px;
}

h1 span{
	display:block;
	font-size:0.35em;
}


/* Titre du bandeau */
.static-banner__content h1 {
    font-size: clamp(3rem, 5vw, 6rem);
    line-height: 0.98;
    margin-top: 0;
}

/* Texte sous le titre */
.static-banner__content .chapo {
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    line-height: 1.45;
}

@media screen and (max-width: 1140px) {

    .static-banner__content {
        width: 46%;
    }

    .static-banner__content h1 {
        font-size: clamp(3rem, 5.5vw, 4.5rem);
        line-height: 1;
    }

    .static-banner__content .chapo {
        font-size: 1.35rem;
        line-height: 1.4;
    }
}

@media screen and (max-width: 768px) {

    .static-banner__content {
        width: 80%;
    }

    .static-banner__content h1 {
        font-size: clamp(2.7rem, 10vw, 4rem);
    }
}

h2{
  xfont-family: "Playfair Display", serif;
  
  xfont-family: "Uncial Antiqua", system-ui;
  
  xfont-family: "Great Vibes", cursive;
}



h3{
font-size:30px;
letter-spacing:-1px;
}

.bordLeft{
border-left:5px solid #D8C0C2;
padding-left:10px;
}



strong{
font-weight:700;
}

a.btn{
	border-radius:20px 20px;
	padding-right:30px;
	padding-left:30px;
	text-transform: initial;
	letter-spacing:1px;
}

a.btn2{
	border-radius:20px 20px;
	padding:5px 20px;
	text-transform: initial;
	letter-spacing:1px;
	border:1px solid #333333;
	background-color:rgba(255,255,255,0.3);
	color:#333333;
}

a.btn2:hover{
	border-radius:20px 20px;
	padding:5px 20px;
	text-transform: initial;
	letter-spacing:1px;
	border:1px solid #333333;
	background-color:rgba(255,255,255,0.5);
	color:#333333;
	box-shadow: 0 3px 7px rgba(0,0,0, 0.15);
}

a.btn:hover{
	 box-shadow: 0 6px 10px rgba(0,0,0, 0.35);
  transform: translateY(-1px);
  background-color:#777961;
}

.typhand{
	font-family: "Great Vibes", cursive;
	font-size:1.8em;
	padding:0;
	margin:0;
	line-height:0.8em;
}

.lettrine{
	font-family: "Great Vibes", cursive;
	font-size:1.8em;
	padding-right:5px;
}

.divid{
	 width: 255px;
  text-align: left;
  display: block;
  margin-left: 0;
  margin-right: auto;
    border:none !important;
    border:none !important;

}
.divid4{
	width: 340px !important;
  text-align: center;
  margin-top:0 !important;
  padding-top:0 !important;
  border:none !important;
}
.divid4s{
	display:inline-block;
	width: 240px !important;
  text-align: center;
  margin:auto;
  margin-top:0 !important;
  padding-top:0 !important;
  border:none !important;
}



/* ------------------  Index  ---------------------------- */



/* ------------------  HERO ---------------------------- */
 .static-banner {
  position: relative;
  width: 100%;
  height: 85vh;
  min-height: 340px;
  overflow: hidden;
   top:-76px;
   z-index:0;
}

.static-banner picture {
  position: absolute;
  inset: 0;
}

.static-banner__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.static-banner__overlay {
  position: absolute;
  inset: 0;
  background: rgba(64, 66, 42, 0.15);
  display: flex;
  align-items: flex-end;      /* au lieu de center */
  justify-content: center;
  text-align: center;
  padding-bottom: 10%;       /* respiration avec le bas de l'image */
  
  
  background:
    linear-gradient(
      to bottom,
      rgba(20, 20, 15, 0.55) 0%,
      rgba(20, 20, 15, 0.25) 15%,
      rgba(20, 20, 15, 0) 30%
    ),
    linear-gradient(
      to top,
      rgba(20, 20, 15, 0.65) 0%,
      rgba(20, 20, 15, 0.35) 35%,
      rgba(20, 20, 15, 0) 70%
    );
  
}

.static-banner__content {
  color: #fff;
  padding: 0 28px;
  max-width: 640px;
	margin-left:30%;
}

.static-banner__content p {
  font-style: italic;
  font-size: 1.75rem;
  opacity: 0.95;
  text-align: left;
}

@media (max-width: 600px) {
  .static-banner {
    height: 65vh;
  }
  .static-banner__overlay {
    padding-bottom: 30px;
  }
  .static-banner__content {
    max-width: 80%;
    margin: 0 auto;
  }
  .static-banner h1 {
    font-size: 3em;
    text-align: center;
  }
  .static-banner__content p {
    font-size: 1.15em;
    text-align: center;
  }
}

@media screen and (max-width: 1700px) {
    .static-banner__content h1{
        font-size: clamp(2rem, 4vw, 5rem);
    }
	.static-banner__content p{
        font-size: 1.35rem;
    }
	
}




/* ------------------  PRESTATIONS  ---------------------------- */


#prestations .desc2{
	margin:auto;
	max-width:50%;
	letter-spacing:1px;
}

#prestations .prestation-card{
	margin:auto;
	max-width:65%;
}
#prestations .prestation-icon{
	width:150px;
	height:150px;
	margin:auto;
}

#prestations a.btn{
	background-color:#777961;
	margin-bottom:12%;
}






/* ------------------  PORTRAIT + courrier ---------------------------- */

#camille-portrait, #courrier{
	background-color:#f3eee7;
	padding:3.5% 8%;
	margin-top:3%;
	position:relative;
	background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.50),transparent 55%), url("../img/deco/texture-coton03.png");
}

#camille-portrait img:first-child{
	border-radius:50% 50% 10% 10%;
	border:dotted 2px #88733f;
	padding:1px;
}
#feuille01{
	position:absolute;
	right:7.6%;
}
@media screen and (max-width: 1840px) {
	#feuille01, #feuille03, #feuille04{
	display:none;
	}
    
}


#camille-portrait .chapo, #courrier .chapo{
	letter-spacing:0.5px;
	line-height:1.7em;
	font-size:1.05em;
}

#camille-portrait a.btn{
	background-color:#777961;
		margin-bottom:5%;
}

#camille-portrait .typhand{
		margin-top:5%;
}

#courrier img:first-child, #courrier img:last-child{
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
}

#courrier .desc2{
	margin-bottom:20px;
	letter-spacing:1px;
	text-align:left;
	font-size:2.3em;
	font-family: "Great Vibes", cursive;
}

#courrier .formule-courrier {
	padding: 30px !important;
	text-align: center;
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
}

#courrier .formule-titre {
	font-family: "Playfair Display", serif;
	font-size: 1.4rem;
	margin-top: 0;
	margin-bottom: 25px;
}

#courrier .formule-prix {
	margin: 20px 0;
}

#courrier .formule-prix strong {
	display: block;
	font-family: "Playfair Display", serif;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.1;
}

#courrier .formule-prix span {
	display: block;
	margin-top: 5px;
}

#courrier .formule-separateur {
	width: 45px;
	height: 1px;
	background: currentColor;
	opacity: 0.4;
	margin: 22px auto;
}

#courrier .formule-note {
	font-size: 0.85rem;
	font-style: italic;
	line-height: 1.5;
	margin-top: 20px;
}




/* ------------------  REASSUR ROW  ---------------------------- */

.reassur-row {
  background-color: transparent;
  background-image: radial-gradient(ellipse closest-side at center, rgba(255,255,255,0.75), rgba(255,255,255,0) 100%);
}

.reassur-row .titleh7{
  font-size:2em;
	xpadding-bottom:10%;

}

.reassur-row .consulter-item {
  padding: 10px 18px 20px;
  position:relative;
  
}

.reassur-row .prestation-icon  {
  width:70px;
  height:70px;
	margin:auto;
	margin-bottom:10px;
}

#page-massage .reassur-row .prestation-icon  {
  width:110px;
  height:110px;
}

.reassur-row .consulter-item-title {
  xborder:1px solid red;
  xpadding-right:20px;
  font-weight: 600;
  font-size:1.05em;
  margin:auto;
  margin-bottom: 0px;
}

.reassur-row .consulter-item-text {
  font-size: 0.95rem;
  line-height: 1.55;
  xpadding-right:20px;
}

/* la ligne verticale : uniquement a partir du desktop */
@media (min-width: 992px) {
	.reassur-row .consulter-item:not(:first-of-type) {
    border-left: 1px solid #ddd6c7;
  }
	.reassur-row .consulter-item-title{
    max-width:78%;
  }
  .reassur-row .consulter-item:not(:first-of-type)::before{
    content:"";
    position:absolute;
    left:0;
    top:20px;
    bottom:20px;
    width:1px;
    background:#ddd6c7;
    transform:translateX(-9px); /* moitié du padding de 18px */
}

	.reassur-row .consulter-item:not(:first-of-type){
		border-left:none;
	}
}

.reassur-row .consulter-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.reassur-row .consulter-row > .col {
  float: none;
}


#page-cartomancie .reassur-row, #page-soins .reassur-row, #page-massage .reassur-row, #page-camille .reassur-row{
color:#ffffff;
background-color:#A8B49F;
background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.30),transparent 55%), url("../img/deco/texture-coton.png");
padding-top:3%;
padding-bottom:1.8%;
color:#000000;
}
@media (min-width: 992px) {

  #page-cartomancie .reassur-row .consulter-item:not(:first-of-type)::before, #page-soins .reassur-row .consulter-item:not(:first-of-type)::before, #page-atelier .reassur-row .consulter-item:not(:first-of-type)::before{
    content:"";
    position:absolute;
    left:0;
    top:20px;
    bottom:20px;
    width:1px;
    background:rgba(0,0,0,0.2);
    transform:translateX(-15px); /* moitié du padding de 18px */
}
}







/* ------------------  AVIS ---------------------------- */

#avis{
xxxbackground-color:#74765f;
color:#ffffff;
background-color:#A8B49F;
background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.30),transparent 55%), url("../img/deco/texture-coton.png");
}

.avis-carousel .carousel-item.avis-card {
  xwidth: 500px;
  xheight: 300px;
  background: #ffffff;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 40px 34px;
  box-shadow: 0 6px 18px rgba(64, 66, 42, 0.08);
  border-radius:10px;
  border:dotted 2px #74765f;
  background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.10),transparent 55%), url("../img/deco/texture-coton05.png");
}

@media (min-width: 992px) {
  .avis-carousel .carousel-item.avis-card{
	width: 500px;
	height: 300px;  
  }
}

.avis-text {
  font-style: italic;
  color: #55544a;
  font-size: 1.28rem;
  line-height: 1.65;
  margin-bottom: 18px;
  max-width:90%;
}

.avis-author {
  font-family: 'EB Garamond', serif;
  color: #A5763C;
  font-size: 0.85rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

@media (max-width: 600px) {
  .avis-carousel .carousel-item.avis-card {
    width: 260px;
    height: 320px;
    padding: 30px 24px;
  }
}
















/* ------------------ LOCAL ---------------------------- */


#local{
	padding:2%;
	position:relative;
}

#local .desc2{
	margin:auto;
	display:inline-block;
	xxxpadding-top:20px;
	xxxpadding-top:8%;
	max-width:80%;
	xxxbackground-image:url("../img/deco/divider01.png");
	xxxbackground-repeat:no-repeat;
	xxxbackground-position:center -10px;
	xborder:1px solid red;
	xxxmargin-bottom:20px;
	letter-spacing:1px;
}

#local a.btn{
	background-color:#777961;
	background-color:#7a2732;
	margin-bottom:10%;
	
	background: linear-gradient(
    90deg,
    #d39f82 0%,
    #fae2d6 16%,
    #b36840 32%,
    #d39f82 48%,
    #fde2d7 64%,
    #b46d43 80%,
    #9a552e 100%
	);
	  box-shadow: 0 6px 16px rgba(154, 85, 46, 0.35);
	  transition: box-shadow 0.3s ease, transform 0.2s ease;
	  
	  background: linear-gradient(
    100deg,
    #5c1a22 0%,
    #7a2732 16%,
    #b95460 30%,
    #7a2732 46%,
    #5c1a22 100%
  );
}

#local a.btn:hover{
	 box-shadow: 0 6px 18px rgba(122, 39, 50, 0.45);
  transform: translateY(-1px);
}

#local img{
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
	border-radius:20px;
}

#feuille02{
	position:absolute;
	right:-30px;
	top:15%;
	width:150px;
	border:none !important;
}


/* ------------------  FOOTER ---------------------------- */
footer{
	background-color:#74765f;
	color:#ffffff;
	margin:auto;
	background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.14),transparent 55%), url("../img/deco/texture-coton.png");
	padding-top:20px;
}

footer .footer-top {
	padding-bottom: 10px;
}

footer .footer-top .logo{
	max-width:200px;
}

footer .icon-social {
	padding-bottom: 15px;
}

footer .icon-social a{
	display:inline-block;
	width:55px;
	height:55px;
	border-radius:30%;
	padding:4px;
	margin-bottom:2px;
	border:1px solid rgba(255,255,255,0);
	transition:all, 0.3s;
	transform-origin:center;
}
footer .icon-social a:hover{
	border-radius:50%;
	border:1px solid rgba(255,255,255,1);
}

footer .slogan{
	letter-spacing:2px;
	font-style:italic;
	margin-right:auto;
	margin-left:auto;
	max-width:90%;
}

footer .bot-foot{
	background-color:rgba(0,0,0,0.3);
	padding-top:30px;
	padding-bottom:20px;

}

footer .row{
	margin-bottom:0 !important;
}

footer .bot-foot a{
	color:#ffffff;
	border-bottom:1px solid rgba(255,255,255,0);
	transition:all, 0.3s;
}
footer .bot-foot a:hover{
	border-bottom:1px solid #ffffff;
}

footer .bot-foot p{
	letter-spacing:0.5px;
	font-weight:500;
	margin-bottom: 14px;
	margin-left:20px;
}

footer .coord i{
	padding-right:8px;
	position:relative;
	top:6px;
	font-size: 20px;
}

footer .navig{
	margin-top:20px;
}

footer .navig ul{
	text-align:center;
	list-style:none;
	padding:0;
	margin:0;
	line-height: 2.2;
}

footer .navig ul li{
	text-align:center;
	padding-left:20px;
	xborder-left:1px solid red;
	display:inline-block;
	width:100%;
}

footer .navig .row .col:not(:first-child) ul{
	border-left:1px solid rgba(255,255,255,0.25);
}
	
	
@media (max-width: 992px) {
	footer .coord {
		border-bottom:1px solid rgba(255,255,255,0.25);
	}
	footer .navig ul{
		text-align:left;
	}
}

/* separateur vertical : uniquement quand les colonnes sont cote a cote */
@media (min-width: 993px) {
	footer .coord {
		border-right: 1px solid rgba(255,255,255,0.25);
	}
	footer .navig ul{
		text-align:left;
	}
}

footer .footer-copyright{
	background-color:rgba(0, 0, 0, 0.45);
	padding: 12px 0;
	font-size: 0.95rem;
	letter-spacing:1px;
}

footer .footer-copyright a{
	color:#ffffff;
	transition:all,0.3s;
	font-size:1.05em;
	border-bottom:1px solid rgba(255,255,255,0);
}
footer .footer-copyright a:hover{
	  border-bottom:1px solid rgba(255,255,255,1);
}


/* ------------------  PAGE CARTOMANCIE ---------------------------- */


.cartomancie .static-banner__overlay{
	text-align:left;
	justify-content: left;
}

.cartomancie .static-banner__content {
	color: #fff;
	padding: 0 28px;
	max-width: 640px;
	margin-left:10%;
}

.cartomancie a.btn{
	background-color:#777961;
	margin-bottom:12%;
	xxxz-index:300;
}

@media (max-width: 600px) {
  .cartomancie .static-banner__content {
    max-width: 80%;
    margin: 0 auto;
	text-align:center;

  }
}

#carte h2{
	text-align:left;
}
#carte img:first-child{
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
	border-radius:20px;
}

#carte .desc2{
	xmargin:110px auto 0 auto;
	xdisplay:inline-block;
	xxxpadding-top:20px;
	xmax-width:50%;
	xxxbackground-image:url("../img/deco/divider01.png");
	xxxbackground-repeat:no-repeat;
	xxxbackground-position:left -10px;
	margin-bottom:20px;
	letter-spacing:1px;
	
	text-align:left;
	font-size:2.3em;
		font-family: "Great Vibes", cursive;
}
#carte p{
	text-align:left;
}

#carte .col{
	position:relative;
}

#feuille03{
	position:absolute;
	left:-7.6%;
	transform:scaleX(-1);
}

#carte .chapo{
	letter-spacing:0.5px;
	line-height:1.7em;
	font-size:1.05em;
}










#carto-seance{
	padding:3.5% 8%;
	position:relative;
	xxxbackground-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.50),transparent 55%), url("../img/deco/texture-coton03.png");
	xxxborder-bottom:1px solid red;
	 padding: 60px 20px;
}

#carto-seance h2 {
  xxxfont-family: 'Playfair Display', serif;
  xfont-size: 1.7rem;
  xline-height: 1.3;
  xcolor: #2f2f2a;
  xmargin-bottom: 14px;
}


#carto-seance img:first-child{
	border-radius:50% 50% 10% 10%;
	border:dotted 2px #88733f;
	padding:1px;
}
#feuille04{
	position:absolute;
	right:4.3%;
	top:20%;
}




.steps-list {
  list-style: none;
  padding-left: 0;
  margin: 0;

}

.steps-list li {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 25px; 
  letter-spacing:0.5px;
	line-height:1.7em;
	font-size:1.05em;
}

.steps-list li:last-child {
  margin-bottom: 0;
}

.steps-list .num {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  xxxbackground-color: #40422A;
  background-color: #777961;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  
  line-height: 1;
  padding-bottom: 6px;
  
}

.steps-list .step-title {
	font-weight: 700;
	margin: 0 0 4px;
	letter-spacing:0.5px;
	line-height:1.7em;
	font-size:1.05em;
}

.steps-list .step-text {
  font-size: 1em;
  line-height: 1.55;
  margin: 0;
}



#cita{
	background-image:linear-gradient(rgba(0,0,0,0.25), rgba(0,0,0,0.3)), url("../img/deco/para01.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	box-shadow:0px 2px 10px rgba(0,0,0,0.5);
	color:#ffffff;
	padding:1%;
	font-size:1.2em;
	padding-top:0;
	backdrop-filter: brightness(20%);
	text-align:center;
}
#cita p span{
	font-size:6em;
	xmargin-top:15%;
	padding-top:0;
	xline-height:12px;
	xborder:1px solid red;
	display:block;
	height:100px;
	xtop:50px;
	font-family: "Great Vibes", cursive;
	xtext-align:center;
	xmargin:auto;
	margin-left:-50px;
}

#cita p{
	font-size:1.2em;
	letter-spacing:1px;
	font-style:italic;
}



#neweclai{
	margin-top:3%;
	margin-top:0;
	padding:1%;
	padding-top:3%;
	background-image:linear-gradient(rgba(0,0,0,0.25), rgba(0,0,0,0.3)), url("../img/deco/para02.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	box-shadow:0px 2px 10px rgba(0,0,0,0.5);
	color:#ffffff;
	font-size:1.2em;
	backdrop-filter: brightness(20%);
}
#neweclai p span{
	font-size:2em;
	display:inline-block;
	max-width:60%;
}
#neweclai .btn{
background-color:#777961;
	margin-bottom:3%;
}



/* ------------------  CARTOMANCIE FORMULE  ---------------------------- */


#deux-formules {
  padding: 60px 20px 2%;
}

#deux-formules h2 {
  xxxfont-family: 'Playfair Display', serif;
  xcolor: #2f2f2a;
  xxxbackground-image:url("../img/deco/divider01.png");
	xxxbackground-repeat:no-repeat;
	xbackground-position:left -10px;
	xmargin:5% auto 0 auto;
	xxxbackground-position:49% 70px;
	xxxpadding-bottom:50px;
	
}

#deux-formules .pricing-row span{
  display:inline-block;
  width:50px;
  font-size:13px;
}




/* === l'astuce pour l'egalite de hauteur === */
.pricing-row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;   /* etire les colonnes a la meme hauteur */
    justify-content: center;
  gap: 20px;
}


@media (min-width: 992px) {
  .pricing-row {
    gap: 40px;
  }
}

.pricing-row > .col {
  float: none;
  display: flex;         
}

.pricing-col {
  flex: 0 1 540px;   
  display: flex;
}

.pricing-card {
  background-color: rgba(255,255,255,0.3);
  border-radius: 20px;
  padding: 40px 30px;
  text-align: center;
  width: 100%;            
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 14px rgba(64,66,42,0.08);
}

.bgcard{
	background-color: rgba(224,222,209,1);
	xxxborder:10px solid red !important;
}



.pricing-icon {
  width: 250px;
  margin: 0 auto 16px;
	
}

.pricing-card h3 {
  xfont-family: 'Playfair Display', serif;
  font-size: 2.6em;
  color: #2f2f2a;
  margin-bottom: 6px;
  margin-top: -10px;
}

.pricing-price {
  xfont-family: 'Playfair Display', serif;
  xfont-family: 'Great Vibes', cursive;
  font-size: 2.6em;
  color: #40422A;
  margin-bottom: 7px;
  
    padding-top:0;
  margin-top:0;
  xborder:1px solid red;
  xline-height:14px;
}

.pricing-divider {
  xwidth: 40px;
  xheight: 1px;
  xbackground-color: #8a8d72;
  xmargin: 0 auto 20px;
  
  
  xwidth:100%;
	background-image:url("../img/deco/divider01.png");
	background-position:center;
	background-repeat:no-repeat;
	height:30px;
	margin-bottom:10px;
	margin-top:0;
	padding-top:0;
}

.pricing-desc {
  font-size: 1em;
  line-height: 1.6;
  xcolor: #55544a;
  margin-bottom: 16px;
  max-width:60%;
  margin:auto;
}


.pricing-list {
  list-style: none;
  padding: 0;
  margin: 0 0 auto;      
  text-align: left;
  xmax-width: 320px;
  margin-top:15px;
  margin-left: auto;
  margin-right: auto;
 
}

.pricing-list li {
  font-size: .95rem;
  color: #55544a;
  margin-bottom: 10px;
  padding-left: 24px;
  position: relative;
}

.pricing-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #8a8d72;
}

.pricing-btn {
  background-color: #6f7259;
  margin-top: 30px;       
  margin-bottom: 20px;    
  align-self: center;
}














/* contact  */


#hero-contact .static-banner__content{
  margin:auto;
}
#hero-contact .static-banner__overlay{
  padding-bottom: 0;
}

#hero-contact .static-banner__content h1{
  margin:auto;
  text-align:center;
}

#hero-contact .static-banner__content p{
  margin:auto;
  text-align:center;
}
#hero-contact .btn{
  background-color:#777961;
}


#contact-pratique{
	border-radius:20px;
	
}
#contact-pratique .step-title{
  xxxcolor:#666;
  xxxcolor:red !important;
}
#contact-pratique .step-text{
  font-weight:700;
  xxxcolor:red !important;
}

#contact-pratique a{
  color:#777961;
  border:1px solid #777961;
  background-color:rgba(121,121,98,0);
  padding:10px 30px;
  border-radius:5px;
  position:relative;
  font-weight:500;
}
#contact-pratique i{
  padding-right:15px;
  padding-left:15px;
  xpadding-top:30px;
  position:relative;
  top:5px;
}

#contact-pratique li:not(:first-child){
  border-top:1px solid rgba(0,0,0,0.1);
  padding-top:25px;
}
#contact-pratique img{
  border-radius:20px;
  xxxborder-radius:50% 50% 10% 10%;
	border:dotted 2px #88733f;
	padding:1px;
}

#contact-reassuricon{
	xxxbackground-color:#74765f;
	xxxcolor:#ffffff;
	margin:auto;
	xxxbackground-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.14),transparent 55%), url("../img/deco/texture-coton.png");
	padding-top:20px;
	xxxbackground-color:#D4D2C0;
	margin-bottom:3%;
}

#contact-reassuricon img{
	xbackground-color:#ffffff;
	xbackground-color:rgba(255,255,255,0.3);
	xxxborder-radius:50%;
	xborder:2px dotted #94987F;
	xbox-shadow:0px 0px 15px rgba(255,255,255,1);
	padding:5px;
	margin:20px;
	width:120px;
}
#contact-reassuricon h3{
	margin-bottom:5px;
	margin-top:0px;
}


#contact-reassuricon p{
	margin:auto;
	margin-bottom:20px;
	xborder:1px solid red;
	max-width:70%;
}


#contact-form {
  padding: 70px 20px 90px;
  	background-color:#f3eee7;
	padding:3.5% 8%;
	margin-top:3%;
	position:relative;
	background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.50),transparent 55%), url("../img/deco/texture-coton03.png");
  
  
}

#contact-form .contact-intro {
  padding-top: 20px;
}

#contact-form .contact-intro h2 {
  font-family: 'Playfair Display', serif;
  color: #2f2f2a;
  margin-bottom: 18px;
}

#contact-form .contact-intro .chapo {
  font-size: 1.05em;
  line-height: 1.65;
  color: #55544a;
  margin-bottom: 16px;
}



#contact-form .contact-card {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 40px 34px 24px;
  box-shadow: 0 4px 14px rgba(64,66,42,0.08);
}

#formMsg {
  font-size: 0.9rem;
  margin-top: 10px;
}


.type-demande {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

/* Couleur du bouton radio sélectionné */
[type="radio"]:checked + span:after,
[type="radio"].with-gap:checked + span:after {
    background-color: #333333;
    border-color: #333333;
}

/* Cercle extérieur */
[type="radio"]:checked + span:after,
[type="radio"]:checked + span:before {
    border-color: #333333;
    border-color: #333333;
}

/* Texte de l'option sélectionnée */
[type="radio"]:checked + span {
    color: #333333;
    color: #333333;
    font-weight: 600;
}


/* Champs texte actifs */
.input-field input[type=text]:focus,
.input-field input[type=email]:focus,
.input-field input[type=tel]:focus,
.input-field textarea.materialize-textarea:focus {
    border-bottom: 1px solid #333333 !important;
    box-shadow: 0 1px 0 0 #333333 !important;
}

/* Label du champ actif */
.input-field input[type=text]:focus + label,
.input-field input[type=email]:focus + label,
.input-field input[type=tel]:focus + label,
.input-field textarea.materialize-textarea:focus + label {
    color: #333333 !important;
    color: #333333 !important;
}

/* Radio sélectionné */
[type="radio"]:checked + span:after,
[type="radio"].with-gap:checked + span:after {
    background-color: #333333;
    background-color: #333333;
    border-color: #333333;
}

[type="radio"]:checked + span:before {
    border-color: #333333;
}

/* Texte du choix sélectionné */
[type="radio"]:checked + span {
    color: #333333;
    font-weight: 600;
}

/* Checkbox cochée */
[type="checkbox"]:checked + span:not(.lever):before {
    border-right-color: #333333;
    border-bottom-color: #333333;
}

/* Bouton validation au survol */
.contact-card .btn:hover,
.contact-card .btn:focus {
    background-color: #333333 !important;
}

.contact-card .btn {
    transition: background-color 0.3s ease;
}

#horloge-icon{
	padding-bottom:20px;
} 
#horloge-icon .num{
	margin-top:11%;
} 
#horloge-icon .num i{
	margin-top:-2px;
	margin-left:2px;
} 
#horloge-icon .ferme{
	color:#999999;
} 
.horaires-grid {
    display: grid;
    grid-template-columns: max-content max-content;
    column-gap: 25px;
    row-gap: 2px;
}

.horaires-grid em {
    grid-column: 1 / -1;
}




#deroulement-seance {
  padding: 60px 20px 80px;
  xxxbackground-color: #f4efe9;
}

#deroulement-seance h2 {
  font-family: 'Playfair Display', serif;
  color: #2f2f2a;
  xxxmargin-bottom: 50px;
}


.seance-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
  margin: 0 auto;
  gap: 40px;
}

.seance-col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 50px;
  padding: 20px 30px;
  flex: 1 1 280px;   /* peut grandir un peu, base 280px */
}

.seance-col-left {
  text-align: left;
}

.seance-col-right {
  text-align: left;
}

.seance-step .seance-num {
  xxxfont-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  color: #8a8d72;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}

.seance-step h3 {
  xxxfont-family: 'Playfair Display', serif;
  font-size: 1.35rem;
  color: #2f2f2a;
  display: inline-block;
  margin: 0 0 10px;
  vertical-align: middle;
  border-bottom: 1px solid #d8cdb8;
  padding-bottom: 6px;
}

.seance-step p {
  font-size: 0.97em;
  line-height: 1.6;
  xxxcolor: #6b6a5e;
  color: #1a1a1a;
  margin: 0;
  xxxmax-width: 280px;
  max-width: none;   /* laisse le texte suivre la largeur de la colonne plutot que d'etre bride a 280px */
}

.seance-step p {

}

.seance-photo {
  display: flex;
  justify-content: center;
  padding: 20px;
   flex: 0 0 320px;   /* la photo, elle, ne bouge jamais de taille */
}

.seance-photo img {
  border-radius: 50%;
  width: 320px;
  height: 320px;
  object-fit: cover;
}

@media (max-width: 992px) {
  .seance-row {
    flex-direction: column;
  }
  .seance-col {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
  }
  .seance-step {
    text-align: center;
    max-width: 280px;
  }
  .seance-step p {
    margin: 0 auto;
  }
  .seance-photo {
    order: -1;
  }
}

/* 
#page-atelier .icon-row{
	xxxborder:1px solid red;
}

#page-atelier .icon-row h3{
	text-transform:uppercase;
	font-size:1.3em;
	letter-spacing:1px;
	line-height:0.6em;
}
#page-atelier .icon-row .prestation-card p{
	font-size:1.2em;
	font-weight:600;
	letter-spacing:1px;
}
#page-atelier .icon-row .prestation-card img{
	max-width:150px;
}


 */
 
#page-atelier #carto-seance img:first-child{
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
}
#page-atelier #neweclai{
font-size:0.9em;
}

/* ____________________________ATELIER______________________________________________________________ */



  #page-atelier .sec-desc img{
	border-radius:20px;
	border:dotted 2px #88733f;
	padding:1px;
	border-radius:20px;
}
  #page-atelier a.btn{
	background-color:#777961;
}

#page-atelier .reassur-row{
	background-color:none !important;
	xxxcolor:#ffffff;
	xxxbackground-color:#fffffF;
	background-color:none;
	background-image:none;
}

#page-atelier .consulter-item-text{
	font-size:1.2em;
}


.ateliers-cal {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
}

.atelier-cal {
    min-width: 0;
}

#my-cal-inline-atelier-01,
#my-cal-inline-atelier-02,
#my-cal-inline-atelier-03 {
    width: 100%;
    height: 520px;
    overflow: auto;
}

@media screen and (max-width: 992px) {
    .ateliers-cal {
        grid-template-columns: 1fr;
    }
}



/* mention  */

#mention{
line-height:19px;
}

#mention a{
color:#9e797c;
font-weight:700;
}

#sommaire a{
color:#333;
font-weight:500;
}

#mention h2{
font-size:28px;
border-left:0;
padding-left:0;
margin-bottom:0;
padding:0;
}

#sommaire .modal-trigger{
position:fixed;
top:40%;
left:23px;
}

#sommaire .modal-content h4{
background:#aaaaaa;
text-indent:55px;
color:#ffffff;
font-family: 'Playfair Display', serif;
font-size:20px;
line-height:36px;
border-bottom:3px solid #D8C0C2;
}

.modal .modal-content{
padding:0;
}



.sidenav-overlay {
    display: none !important;
}



/* ==================================================
                    MENTIONS LEGALES
================================================== */

#page-mentions a{
	color:#333333;
	font-weight:600;
}

.mentions-header {
    padding: 150px 0 70px;
    text-align: center;
}

.mentions-header h1 {
    margin: 0 0 15px;
}

.mentions-header p {
    max-width: 650px;
    margin: 0 auto;
    font-size: 1.1rem;
    opacity: 0.8;
}


.mentions-content {
    padding: 30px 0 100px;
}


.mentions-section {
    max-width: 950px;
    margin: 0 auto;
    padding: 45px 0;
    border-bottom: 1px solid rgba(0,0,0,0.12);
}


.mentions-section:last-child {
    border-bottom: none;
}


.mentions-section h2 {
    font-family: "Playfair Display", serif;
    font-size: 1.8rem;
    font-weight: 400;
    margin: 0 0 30px;
}


.mentions-section h2 span {
    display: inline-block;
    margin-right: 15px;
    font-family: inherit;
    font-size: 0.8rem;
    opacity: 0.45;
    vertical-align: middle;
}


.mentions-section h3 {
    font-size: 1.15rem;
    font-weight: 500;
    margin: 35px 0 15px;
}


.mentions-section p,
.mentions-section li {
    font-size: 1rem;
    line-height: 1.8;
}


.mentions-section ul {
    margin: 20px 0 25px 25px;
}


.mentions-section li {
    margin-bottom: 7px;
}


.mentions-section a {
    text-decoration: underline;
}


.mentions-infos {
    margin: 25px 0;
    padding: 25px 30px;
    border-left: 2px solid currentColor;
    background: rgba(255,255,255,0.25);
}


.mentions-infos p:first-child {
    margin-top: 0;
}


.mentions-infos p:last-child {
    margin-bottom: 0;
}


/* MOBILE */

@media screen and (max-width: 600px) {

    .mentions-header {
        padding: 110px 20px 45px;
    }

    .mentions-header h1 {
        font-size: 2.3rem;
    }

    .mentions-content {
        padding-top: 10px;
    }

    .mentions-section {
        padding: 35px 5px;
    }

    .mentions-section h2 {
        font-size: 1.5rem;
        line-height: 1.3;
    }

    .mentions-infos {
        padding: 20px;
    }

} 


/* ==================================================
                        COOKIES
================================================== */

.cookie-banner {
    position: fixed;
    left: 25px;
    right: 25px;
    bottom: 25px;
    z-index: 99999;

    max-width: 1150px;
    margin: auto;

    background: rgba(250, 247, 242, 0.97);
    border: 1px solid rgba(90, 70, 60, 0.18);
    border-radius: 8px;

    box-shadow: 0 10px 40px rgba(50, 35, 30, 0.13);

    padding: 22px 28px;

    backdrop-filter: blur(8px);
}


.cookie-inner {
    display: flex;
    align-items: center;
    gap: 22px;
}


.cookie-icon {
    flex: 0 0 auto;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(90, 70, 60, 0.25);
    border-radius: 50%;

    font-size: 18px;
}


.cookie-content {
    flex: 1;
}


.cookie-title {
    font-family: "Playfair Display", serif;
    font-size: 1.25rem;
    margin: 0 0 5px;
}


.cookie-text {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.55;
}


.cookie-text a {
    color: inherit;
    text-decoration: underline;
    white-space: nowrap;
}


.cookie-actions {
    flex: 0 0 auto;

    display: flex;
    align-items: center;
    gap: 10px;
}


.cookie-btn {
    min-width: 125px;
    padding: 11px 17px;

    border-radius: 3px;
    cursor: pointer;

    font-family: inherit;
    font-size: 0.88rem;

    transition: all 0.25s ease;
}


/* REFUSER */

.cookie-btn-refuse {
    background: transparent;
    border: 1px solid #6f625c;
    color: #4c433f;
}

.cookie-btn-refuse:hover {
    background: rgba(80, 65, 60, 0.06);
}


/* ACCEPTER */

.cookie-btn-accept {
    background: #7b2639;
    border: 1px solid #7b2639;
    color: #fff;
}

.cookie-btn-accept:hover {
    background: #682030;
}


/* MOBILE */

@media screen and (max-width: 700px) {

    .cookie-banner {
        left: 12px;
        right: 12px;
        bottom: 12px;

        padding: 20px;
    }

    .cookie-inner {
        display: block;
    }

    .cookie-icon {
        margin-bottom: 12px;
    }

    .cookie-actions {
        margin-top: 18px;
        width: 100%;
    }

    .cookie-btn {
        flex: 1;
        min-width: 0;
    }

}



#faq .collapsible-header{
	border-radius:20px;
}

/* OUVERTURE _________________________________________ */

/* BANDEAU OUVERTURE */

.opening-banner {
    background-color: #7d8061;
    color: #fff;
	position:relative;
    text-align: center;
    padding: 50px 20px;
	top: -76px;
}

.opening-banner .container {
    width: 100%;
    max-width: 1200px;
}

.opening-banner strong {
    font-size: 1.4em;
    font-weight: 600;
	display:inline-block;
	padding-bottom:10px;
}

.opening-banner span {
    font-size: 1.1em;
}





