/*
Theme Name: SMthème
Description: Theme enfant pour le site de Sophie
Author: NGcrea
Template: generic
*/

@import url("../generic/style.css");


/*color*/
.blanc, .blanc strong, .has-blanc-color {color: #ffffff !important }
.noir, .noir strong, .has-noir-color {color: #000000 !important }
.bleu, .bleu strong, .has-bleu-color {color: #66cccc !important}
.bleufonce, .bleufonce strong, .has-bleufonce-color {color: #339999 !important}
.vert, .vert strong, .has-vert-color {color: #33ffcc !important}
.vertfonce, .vertfonce strong, .has-vertfonce-color {color: #2be5b7 !important}
.grisfonce, .grisfonce strong, .has-grisfonce-color {color: #666666 !important}
.grisclair, .grisclair strong, .has-grisclair-color {color: #f5f5f5 !important}
.has-blanc-background-color {background-color: #ffffff !important }
.has-noir-background-color {background-color: #000000 !important }
.has-bleu-background-color {background-color: #66cccc !important }
.has-bleufonce-background-color {background-color: #339999 !important }
.has-vert-background-color {background-color: #33ffcc !important }
.has-vertfonce-background-color {background-color: #2be5b7 !important }
.has-grisfonce-background-color {background-color: #666666 !important }
.has-grisclair-background-color {background-color: #f5f5f5 !important}


body {font-family: 'Raleway', sans-serif !important;  font-weight: 400  ;  text-align: left ; font-size: 16px !important  ; line-height: 30px !important ; color: #666666 ; margin: 0  ; padding: 0 ; word-wrap: normal ; word-break: normal !important ;  background-attachment: fixed; background: #ffffff}

#header, #container, #footer {    padding: 0% !important;}

header {padding: 0 !important}
.container {position: relative; z-index: 1; }
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {  padding-right: 0px;    padding-left: 0px;    margin-right: auto;    margin-left: auto;}
.uagb-columns__wrap { margin-top: 0px !important;    margin-bottom: 0px !important;}
strong, b {font-weight: 600 ; }
p {margin: 0 0 20px 0 !important;}
ul li, ul {list-style-type: none !important; font-family: 'Oswald', sans-serif;  }
ul  {margin: 0 0 0 0 !important; text-indent: 0px; }
.wp-block-image {    margin-bottom: 0;}
.aligncenter {margin: 0px auto;    }

a{text-decoration: none; color: inherit;}
p a{color: inherit !important;}
a:hover{text-decoration: none; color: inherit}
p a:hover, li a:hover{text-decoration: underline; color: inherit}
.row, [class*="col"] {margin: 0 ; padding: 0 }
* { transition: all 0.3s ease; }
.coin_arrondi img {border-radius: 25px !important}

/*hack li*/
ul.has-background {border-radius: 20px; padding: 20px 0 }
.entry-content ul, .widget-container ul, .comment-body ul, .entry-content ol, .widget-container ol, .comment-body ol, ul li, ul  {
    font-family: 'Raleway', sans-serif !important;  font-weight: 400  ;    }
.entry-content ul {margin: -10px 0 20px 0 !important}
.entry-content li { margin: 0px 30px;}
.entry-content .bio li { margin: 0px 0px;}
.entry-content li { margin-bottom: auto !important; line-height: 32px !important ;}

.entry-content ul li::before, .widget-container ul li::before, .comment-body ul li::before {    content: "\f105";    font-family: "Font Awesome 5 Free";    color: #339999;   display: inline-block; font-weight: 900; position: relative; margin-right: 5px !important; margin-left: 0px; }


.invisible {display: none}
.cap {text-transform: uppercase}
.right {text-align: right}
.left {text-align: left }
.center {text-align: center}
.col2 {columns: 2}
.col3 {columns : 3}

.wp-block-column:not(:first-child) {    margin-left: 0em;}





/*titres*/
h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background {  padding: 20px 50px 20px 0;}
h1, h2, h3, h4, h5, h6 {padding: 0 ; margin: 0; display: block; }
h1, h2 {font-family: 'Pacifico', cursive; font-weight: normal !important}
h2 { font-size: 36px; line-height: 42px; display: inline-block;  border-radius: 0 50px 50px 0; padding: 15px 30px 15px 0; margin-bottom: 40px  }



/*bouton*/
.wp-block-button__link, .formulaire input[type="submit"], .formulaire button, .formulaire .button {font-family: inherit; font-weight: 700; color: #ffffff; padding: 10px 20px 10px 20px !important; box-shadow: 0px 0px 0px 0px #ffffff; border-radius: 50px; font-size: 16px; text-align: center; min-width: 250px; text-transform: uppercase   }


/* header */
.headsoph {padding: 100px 100px 0 100px; background-size: cover; background-repeat : no-repeat; background-position: center center; box-shadow:inset 0px -10px 20px 0px rgba(0,0,0,0.3); }
.logo_container {background-image: linear-gradient(to bottom, #F3F3F3 0%, #FFFFFF 100%); width: 100%;  box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.3); position: relative; padding: 10px 10px 0 10px; z-index: 2; bottom: -10px}
.logo {border-top: 1px dashed #b2e5e5; border-left: 1px dashed #b2e5e5;border-right: 1px dashed #b2e5e5; width: 100%;  background: url(/wp-content/uploads/2021/09/logo_sophie.png) no-repeat center center; background-size: 90% auto; min-height: 400px;  }
.logo_container:after {content: ""; width: 100%; background: #ffffff; height: 20px;  position: absolute; bottom: -20px; left: 0px}
.accroche {  padding-top: 100px !important}
.accroche h1 {font-size: 48px; line-height: 54px; display: block; margin-bottom: 40px; color: #ffffff }
.accroche .wp-block-button__link {font-size: 20px !important}
.accroche .wp-block-button__link:hover {background: #ffffff !important; color: #2be5b7 !important}
.page-id-188 .accroche .wp-block-button__link {display: none}

/*contenu*/
.pagesite {padding-top: 10px }
.contenu {border-top: 1px dashed #b2e5e5; padding: 60px 100px 0px 100px;  }
/*.contenu h2 {background: #33ffcc; color: #ffffff; box-shadow: -100px 0px 0px 0px #33ffcc; }*/
.contenu h2.has-vert-background-color {  box-shadow: -100px 0px 0px 0px #33ffcc; }
.contenu h2.has-blanc-background-color {  box-shadow: -100px 0px 0px 0px #ffffff; }
.sepondule {height: 13px; width: 100%; display: block; background-repeat: repeat-x; margin: 30px 0}
.wavert {background: url(images/sep_ondulation_verte)}
.wavebleu {background: url(images/sep_ondulation_bleu)}
.waveblanche {background: url(images/sep_ondulation_blanche)}
.col_main {padding-right: 60px}
.part2 {
	position: relative; box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.3); 
	/*background: url(images/back_arcenciel_25.png); */
	margin: 0 -100px 0 -100px !important; 
	padding: 0px 100px;  z-index: 2  }
/*.contenu .part2 h2 {background: #ffffff; color: #66cccc; box-shadow: -100px 0px 0px 0px #ffffff; }*/
.part2 .col_main {padding: 40px 60px 40px 0;   }
.col_main li a {text-decoration: underline; color: inherit}
p.titreinfo {font-size: 36px; line-height: 42px; font-weight: 300; text-transform: uppercase; padding: 0 ; margin: 0 !important; margin-bottom: 0px !important; display: block;}

.wp-block-image .alignleft {margin : 0px 30px 0px 0px !important;  }
.wp-block-image .alignright {margin : 0px 0px 0px 30px !important;  }



/*sidebar*/
.col_side {overflow: hidden; padding: 40px; position: relative}
.col_side h2 {background: rgba(0,0,0,0) !important; box-shadow: -100px 0px 0px 0px rgba(0,0,0,0) !important; }
.col_side .sepondule {margin: 20px 0}

.col_qui {box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.3); margin-top : -85px ; 
/*background: url(images/back_cube_25.png*/);  }
.col_qui .col_contenu {p padding-top: 80px}
.col_qui h2 {color: #33ffcc; padding-top: 10px  }
.photosoph {position: relative; top: 0px; display: block}
.col_contenu .wp-block-image .alignleft { margin : 0px 20px 0px 0px !important; margin-top: 0px !important}
.col_contenu .wp-block-image .alignright { margin : 0px 0px 0px 20px !important; margin-top: 0px !important}
.photosoph img { border: 1px solid #33ffcc !important; width: 100px !important; height: auto}

/*
.col_info li em:before {content: "ci-contre"; display: inline-block; font-style: normal}
.col_info li em:after {content: "ci-dessous"; display: none ; font-style: normal; margin-right: 5px}*/

.col_contact  { background-color: rgba(255,255,255,0.8) !important; padding-top: 20px; }
.col_contact h2 {color: #66cccc; margin-bottom: 0 }


/*formulaire*/
.formulaire label p {margin-bottom: 10px !important}
.nom_champs {display: block ; font-size: 22px; color:#2be5b7 ;  padding-bottom: 0; font-family: 'Pacifico', cursive; font-weight: normal   }
.nom_champs i.fas {color:#66cccc ; }
.formulaire input::placeholder, .formulaire textarea::placeholder {font-style: italic}
.wpcf7 .fullsize, .wpcf7 label {width: 100%;  }
.fullsize {background: #ffffff; border: 1px solid #33ffcc; padding: 10px 10px; border-radius: 7px !important; margin-top: 5px !important; margin-bottom: 5px }
.formulaire input, .formulaire textarea {font-family: inherit !important; font-weight: 300  ;  text-align: left ; font-size: 14px !important  ; line-height: 22px !important ; color: inherit ;}
.formulaire textarea {height: 200px }
.formulaire input[type="submit"], .formulaire button, .formulaire .button  { background: #66cccc; margin-top: -10px; margin-bottom: 20px  }
.formulaire input:hover[type="submit"], .formulaire button:hover, .formulaire .button:hover  {background: #339999 !important ; color: #ffffff; opacity: 1  }
.wpcf7-response-output { color: #ff6600 !important; font-weight: 700 !important; text-align: center !important}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.sent .wpcf7-response-output { color: #66cccc !important; line-height: 22px !important;    border-color: rgba(0,0,0,0) !important; margin: 20px 0em 0em;padding: 0em 0em;} 
.wpcf7-not-valid-tip {color: #ff6600 !important}

/*footer*/
#footer {padding: 0 100px !important; z-index: -1 ; overflow: hidden}
.col_infofoot {text-align: center; padding: 40px 40px; background: rgba(102,204,204,0.9) !important; font-size: 16px; line-height: 24px}
.col_tof {padding-right: 0; }
.foot_contenu {position: relative; background: url(images/visuel_footer_hp.jpg) left center no-repeat; background-size: cover; margin: 0 -100px 0 -100px !important; padding: 0px 100px; }


@media screen and (max-width: 1800px) {
.headsoph {padding: 90px 90px 0 90px;  }
.accroche {  padding-top: 60px !important}
.contenu {border-top: 1px dashed #b2e5e5; padding: 60px 90px 0px 90px;  }
.part2, .foot_contenu {margin: 0 -90px 0 -90px !important; padding: 0px 90px;   }
#footer {padding: 0 90px !important;  }
.col_side { padding: 30px; }
.col_infofoot {padding: 30px 30px;}
.logo { min-height: 350px;  }
	
}


@media screen and (max-width: 1650px) {
.headsoph {padding: 80px 80px 0 80px;  }
.accroche {  padding-top: 60px !important}
.contenu {border-top: 1px dashed #b2e5e5; padding: 50px 80px 0px 80px;  }
.part2, .foot_contenu {margin: 0 -80px 0 -80px !important; padding: 0px 80px;   }
#footer {padding: 0 80px !important;  }
.col_side { padding: 20px; }
.col_infofoot {padding: 20px 20px; font-size: 14px; line-height: 24px  }

.logo { min-height: 300px;  }

body {font-size: 16px !important  ; line-height: 32px !important ; }
h2 { font-size: 32px; line-height: 36px;  margin-bottom: 20px  }
p.titreinfo {font-size: 32px; line-height: 36px; }	
.accroche h1 {font-size: 42px; line-height: 50px; margin-bottom: 30px;  }
.accroche .wp-block-button__link {font-size: 24px !important}
.nom_champs {font-size: 20px;   }
}


@media screen and (max-width: 1480px) {
.headsoph {padding: 50px 50px 0 50px;  }
.accroche {  padding-top: 40px !important}
.contenu {border-top: 1px dashed #b2e5e5; padding: 40px 50px 0px 50px;  }
.part2, .foot_contenu {margin: 0 -50px 0 -50px !important; padding: 0px 50px;   }
#footer {padding: 0 50px !important;  }
.logo { min-height: 250px;  }

h2, p.titreinfo { font-size: 28px; line-height: 32px;   }
.accroche h1 {font-size: 38px; line-height: 46px;   }
.accroche .wp-block-button__link {font-size: 20px !important}
.wp-block-button__link, .formulaire input[type="submit"], .formulaire button, .formulaire .button { min-width: 200px;    }

.wp-block-image .alignleft { margin : 0px 20px 0px 0px !important; }
.wp-block-image .alignright { margin : 0px 0px 0px 20px !important; }
.col_contenu .wp-block-image .alignleft { margin : 0px 10px 0px 0px !important; }
.col_contenu .wp-block-image .alignright { margin : 0px 0px 0px 10px !important; }


}

@media screen and (max-width: 1280px) {
.logo { min-height: 230px;  }
.accroche h1 {font-size: 32px; line-height: 42px;   }
.accroche .wp-block-button__link {font-size: 16px !important}
.nom_champs {font-size: 16px;   }
.col_contenu .wp-block-image .alignleft, .col_contenu .wp-block-image .alignright { float: none; margin : 0px 0px 0px 0px !important; display: inline-block}
.photosoph {display: flex; justify-content: center; width: 100% !important; }
.photosoph img {  width: 170px !important; height: auto}
.wp-block-button__link, .formulaire input[type="submit"], .formulaire button, .formulaire .button { min-width: 160px;    }
.col2 {columns: 1}
.col3 {columns : 2}
}

@media screen and (max-width: 960px) {
h2, p.titreinfo { font-size: 26px; line-height: 30px;   }
.logo { min-height: 180px;  }
.accroche {  padding-top: 0px !important}
.wp-block-columns {    flex-wrap: wrap;}
.wp-block-column {    min-width: 100%;}
.col_main, .col_side  { display: block !important; width: 100%; padding-right: 0; flex-basis: 100% !important; }
.part2 .col_main {    padding: 40px 0px 40px 0;   }
	.col_contact {padding-right: 50px; padding-left: 50px}
.col_infofoot {    padding: 20px 50px;}
.col_qui { padding: 50px; margin-top: 0px}
.wp-block-column:not(:first-child) {
	margin-left: -50px; margin-right: -50px !important; width: 100%; position: relative}
.wp-block-column[style*="flex-basis"] {    flex-grow: 1;}
.col_contenu .wp-block-image .alignleft { float: left; margin : 0px 10px 10px 0px !important; }
.col_contenu .wp-block-image .alignright { float: right; margin : 0px 0px 10px 10px !important; }
.photosoph {display: block;  }
.photosoph img {  width: 100px !important; height: auto}
	
}

@media screen and (max-width: 770px) {
	.col_logo {display: flex; justify-content: center;}
	.logo_container { width: 300px !important;   }
	.logo {min-height: 280px}
	.contenu { padding: 30px 30px 0px 30px;  }
.part2, .foot_contenu {margin: 0 -30px 0 -30px !important; padding: 0px 30px;   }
.part2 .col_main {    padding: 30px 0px 30px 0;   }
		.col_contact {padding-right: 30px; padding-left: 30px}
	.col_infofoot {    padding: 20px 30px;}
#footer {padding: 0 30px !important;  }
	.col_qui { padding: 30px; }
	.wp-block-column:not(:first-child) {	margin-left: -30px; margin-right: -30px !important; }

}

@media screen and (max-width: 500px) {
	.col_main .wp-block-image .alignleft, 	.col_main .wp-block-image .alignright  { float: none; margin : 0px 0px 0px 0px !important; display: inline-block}
	.col_main .coin_arrondi {display: flex; justify-content: center}
		.col_main .coin_arrondi figure, .col_main .wp-block-image .alignleft img,  .col_main .wp-block-image .alignright img {width: 100% !important; max-height: 300px; object-fit: cover;    object-position: center center; }
	.col_main .coin_arrondi  {margin-bottom: 20px; margin-top: 10px }
	.col3 {columns : 1}
}

/* marge au-dessus du calendrier Amelia */
.amelia-v2-booking #amelia-container.am-fs__wrapper {
    margin: 10px auto !important;
    }

.su-spoiler-style-fancy {  border: 0px solid #ccc !important;  border-radius: 20px !important;  background: #fff !important;  color: #000 !important;}
.su-spoiler-style-fancy > .su-spoiler-title {  border-radius: 20px !important;  background: #fff !important;  font-size: 16px !important;  border: 0px !important; 10px 10px 10px 30px; color: #399 !important;}
.su-spoiler-title:focus {  outline: none !important;}

