/* Add here all your CSS customizations */

.pad-top-0 {
	padding-top: 0px !important;
}

.pad-bot-0 {
	padding-bottom: 0px !important;
}

.pad-top-10 {
	padding-top: 10px !important;
}

.pad-top-20 {
	padding-top: 20px !important;
}

.pad-top-30 {
	padding-top: 30px;
}

.pad-top-60 {
	padding-top: 60px;
}

.pad-bot-10 {
	padding-bottom: 10px !important;
}

.mt-20 {
	margin-top: 20px;
}

.mt-30 {
	margin-top: 30px;
}
.mb-30 {
	margin-bottom: 30px;
}
.mt-40 {
	margin-top: 40px;
}

.portrait_60 {
	max-width: 75%;
} 

.bg-primary {
	background-color: #ffcb04 !important;
}

.bg-green {
	background-color: #0AB04A !important;
}

.bg-red {
	background-color: #dc3545 !important;
}

.bg-0089CF {
	background-color: #0089CF !important;
}

.bg-grey {
	background-color: #bdbdbd !important;
}

.bg-transp {
	background-color: transparent !important;
}

.process .process-step:hover .process-step-circle {
	background-color: transparent !important;
}

.process .process-step:hover .process-step-circle .bg-primary {
	background-color: #ffcb04 !important;
}

.process .process-step:hover .process-step-circle .bg-red {
	background-color: #dc3545 !important;
}

.process .process-step:hover .process-step-circle .bg-green {
	background-color: #0AB04A !important;
}
 
.font-black {
	color: black !important;
}

.font-white {
	color: white !important;
}

.font-green {
	color: #0AB04A !important;
}

.font-red {
	color: #dc3545 !important;
}

.font-grey {
	color: darkgrey !important;
}

.font-18 {
	font-size: 18px !important;
}

.font-size-small {
	font-size: 0.7em !important;
}

.font-size-xl {
	font-size: 2em !important;
}

.center {
	text-align: center ;
}


.min-h-500 {
	min-height: 500px;
}

.border-darkgrey {
    border-color: darkgrey !important;
}

.text-align-left {
	text-align: left;
}

.float-right {
	float: right ;
}
.text-align-right {
	text-align: right;
}

.text-shadow-white {
	text-shadow: 0 0 1px grey, 0 0 1px grey, 0 0 1px grey, 0 0 1px grey;
}

.pad-20 {
padding: 20px 0 !important;
}

button.mfp-close:before {
    content: 'fermer ';
    color: #ffcb04;
    font-size: smaller;
	vertical-align: top;
}

.dis-in-bl {
	display: inline-block;
}

.nohover{
    pointer-events: none;
}

.input {
	font-size: 16px !important;
}


.v-al-ttop {
    vertical-align: text-top !important;
}

.h5var {
    font-size: 1.1em !important;
    font-weight: 800 !important;
    line-height: 18px;
    margin: 0 0 14px 0;
    text-transform: uppercase;
}

.l-h-5 {
	line-height: 5px !important;
}




.thumb-info .thumb-info-wrapper:after {
	content: "";
	background: #ffcb04a3 !important;
	transition: all 0.3s;
	border-radius: 4px;
	bottom: -4px;
	color: #FFF;
	left: -4px;
	position: absolute;
	right: -4px;
	top: -4px;
	display: block;
	opacity: 0;
	z-index: 1;
}

.thumb-info {
    background-color: transparent !important;
}

@media (max-width: 1199px) and (min-width: 992px){
.custom-section-padding-2 {
    padding-top: 80px !important;
}
}

@media (min-width: 992px){
.custom-section-padding-2 {
    padding-top: 80px !important;
}
}

.thumb-info .wrap-y .thumb-info-wrapper:after {
    background: #ffcb04a3 !important;
}
 
.call-to-action {
    padding: 132px 55px !important;
}

.max-55 img {
    max-width: 50px !important;
}

.is_mandatory {
    background-color: #dc3545 !important;
}

.recent-posts .date .month {
    color: black !important;
    font-size: 1.0em !important;
	text-transform: uppercase;
}

.icon-red {
	border-color: #dc3545 !important;
	color: #dc3545 !important;
}
.custom-feature-box-icon {
	border: 0px !important;
}

section.custom-timeline .timeline-box.right.nodot:before {
	display: none !important;
}





@media only screen and (max-width: 768px) {
	.mfp-content {
    position: fixed !important;
    top: 40px !important;
    left: 10px !important;
    bottom: 10px !important;
    right: 10px !important;
    /*height: 90% !important;*/
	}
	
	.mfp-close {
    text-align: center !important;
	}
	.mfp-iframe-holder {
	  -webkit-overflow-scrolling: touch!important;
	  overflow-y: scroll;
	  width: 100%;
	  height: 150vh;
	  z-index: 9999;
	}	
	.mfp-iframe-holder iframe {
	/* nada! */
	}
	
}

.custom .row {
	margin-right: 0px !important;
    margin-left: 0px !important;
	padding-right: 15%;
	background: #403f3d !important;
}

.custom .toggle-title::before {
	border-top: 3px solid;
	border-right: 3px solid;
	width: 12px;
	height: 12px;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 479px) {
  .portraitresp {
		max-width: 50% !important;		
	}
	.btn-resp {
		width:100%;
		padding:2px !important;
		font-size:100%;
	}
	.picproj-resp {
		top: 0px;
	}
	.portrt {
		width: 200px;
	}
	.smallimg {
		display: none;
	}
	
	.timeline.row {
    margin-right: 0px !important;
    margin-left: 0px !important;
}
}

/* Small devices (portrait tablets and large phones, 576px/540 and up) */
@media only screen and (min-width: 479px) and (max-width: 768px) {
  .portraitresp {
		max-width: 50% !important;		
	}
	.picproj-resp {
		top: 0px;
	}
	.portrt {
		width: 300px;
	}
	.smallimg {
		display: none;
	}
	
	.timeline.row {
    margin-right: 0px !important;
    margin-left: 0px !important;
}
}

/* Medium devices (landscape tablets, 768px/720 and up) */
@media only screen and (min-width: 768px) and (max-width: 992px) {
  .portraitresp {
		max-width: 60% !important;		
	}
	.picproj-resp {
		top: 0px;
	}
	.portrt {
		width: 350px;
	}
	.smallimg {
		display: none;
	}
	section.custom-timeline {
    padding: 0 40px 0 0 !important;
	}

} 

/* Large devices (laptops/desktops, 992px/960 and up) */
@media only screen and (min-width: 992px) and (max-width: 1200px) {
	.portraitresp {
		max-width: 100%;		
	}
	.picproj-resp {
		top: -60px;
	}
	.portrt {
		width: 400px;
	}
	section.custom-timeline {
    padding: 0 40px 0 0 !important;
	}
	
	.v-align-middle {
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

	.v-align-40pc {
	position: absolute;
    top: 40%;
    transform: translateY(-50%);
}
   
} 

/* Extra large devices (large laptops and desktops, 1200px/1140 and up) */
@media only screen and (min-width: 1200px) {
	.portraitresp {
		max-width: 100%;		
	}
	.picproj-resp {
		top: -60px;
	}
	.portrt {
		width: 400px;
	}
	section.custom-timeline {
    padding: 0 40px 0 0 !important;
	}
	
	.v-align-middle {
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

	.v-align-40pc {
	position: absolute;
    top: 40%;
    transform: translateY(-50%);
}
  
} 


.custom .toggle-title {
    border-radius: 0px;
	padding: 0 !important;
	border-left: 0px !important;
}




@media only screen and (min-width: 768px) {
.custom .toggle-title .row::before {
    content: 'd\00E9tails';
    position: absolute;
    top: calc(20% + 1px);
    right: 84px;
    border-color: #CCC;
    border-top: 0px solid;
    border-right: 0px solid;
    width: 8px;
    height: 8px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: none;
    transform: none;
    transform-origin: 100%;
}
}

.contactformmessage {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.custom .arrow .hrb {
	left: -30px;
    top: 12px;
}

.inscrarrow {
	left: -30px;
    top: 12px;
}

.devistotalprix {
	padding: 20px 40px 10px 40px !important;
}

.devistotal {
	padding: 10px 40px 10px 40px !important;
}
.chiffrage {
	padding-top: 90px !important;
}	

.inclus {
	padding: 10px 40px 10px 40px !important;
}

.inclusprix {
	padding: 20px 40px 20px 40px !important;
}

.option {
    padding: 10px 40px 10px 40px !important;
}

.optionprix {
    padding: 20px 40px 20px 40px !important;
}

section.custom-timeline .timeline-box .experience-info .company > span {
    text-transform: none !important;
}

.medical-schedules {
    margin: 20 0 0 20 !important;
}


.dropcapicon {
    line-height: 85%;
    width: 1.2em;
    font-size: 300%;
    float: left;
}

.cg {
	color: grey;
	font-size: 12px;
	line-height: 20px;
}

.experience-info .company > span {
	line-height: 16px;
	margin-top: 10px;
}

.convertapi-btn {
	cursor: pointer;
}

.custom-button {
    padding: 0.4rem !important;
}

  section.section {
    border-top: 0 !important;
  }
  
  section.section.print {
    margin-top: 0px !important;
	margin-bottom: 0px !important;
}

section.custom-timeline .timeline-box .experience-info, section.custom-timeline .timeline-box .experience-description {
    padding: 40px 40px 20px 40px;
}

section.plan {
	margin-top: 150px;
}

section.section.citations {
    padding: 60px 60px !important;
}

blockquote {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 10px;
    margin-inline-end: 10px;
}
	
.testimonial blockquote p {
     font-size: 24px !important;
	 font-style: italic;
}

.testimonial blockquote {
    padding: 2.5rem 1rem 2.5rem 1.5rem !important;
}

.w-80 {
	width: 80%;
}

#footer .footer-copyright {
    border-top: 0px !important;
}

#devis .custom-nav-button i {
    float: unset !important;
}

.featured-box-full.featured-box-full-primary.custom {
    padding: 25px !important;
}

.mfp-image-holder .mfp-content {
    max-width: 900px;
}


@media screen {
 
	.screen-hide {
		display: none;
  }
  .screen-visible {
		display: block;
  }
  
  .sommaire {
	font-size: 18px;
	}
	
}

.annexe.list.list-borders li {
    margin-top: 0px !important;
    margin-bottom: 0 !important;
    padding-bottom: 0px !important;
}


@media print {

  .print-hide {
		display: none;
  }
  .print-visible {
		display: block;
  }
  
  page {                
    size: A4;
  }
  
  @page:first {
    margin: 0mm
 }

  html, body {
    //width: 1024px;
  }

  body {
    margin: 0 auto;
  }

  .container {
    margin: 0 20 0 20;
  }

  .print-width-100pc {
	  width: 100% !important;
  }
  
    section.top {
    padding-top: 80px !important;
}
  
  section.section.print {
    padding: 0px 0px;
}

	#cg .pad-top-60, #AN5 .pad-top-60, #AN4 .pad-top-60 {
	padding-top: 0px !important;
}



	.amcharts-zoom-control {
	display: none;
}

	.sommaire {
	font-size: 18px;
	}

  section.section.whiteprint {
    background-color: white !important;
  }
  
  .primaryprint {
    background-color: #ffcb04 !important;
	padding-top: 20px;
	padding-bottom: 20px;
  }
  
  .secundaryprint {
    background-color: #f7f7f7 !important;
  }
  .printcenter {
	  text-align: center;
  }
  
  .mt-30 {
	margin-top: 0px !important;
	}

	.mt-40 {
	margin-top: 0px !important;
	}
	
	.print-pl-30 {
		padding-left: 30px !important;
	}
	.owl-dots, .timeline-bar {
	display: none;
	}
	
	section.custom-timeline .timeline-box.right:before {
	display: none !important;
}
	.sig {
	text-decoration: overline #bdbdbd;
}
	.sigmt-30 {
	margin-top: 40px !important;
	font-size: 10px;
	line-height: 16px !important;
	}
	
	.sigmt-30 p  {
	font-size: 10px;
	line-height: 16px !important;
	}
	
	.sigmb-30 {
	margin-bottom: 30px !important;
	}
	
	.v-align-40pc {
	position: absolute;
    top: 40%;
    transform: translateY(-50%);
}

	.font-size-xl {
	font-size: 1.4em !important;
}
.membership-pricing-table table td {
    padding: 4px 10px !important;
}
.printheader {
	margin: 0px !important;
	padding: 0px !important;
	font-size: 80% !important;
}

strong.printmail {
    font-size: 1.4em !important;
}
	.membership-pricing-table table, .membership-pricing-table table td {
    border: 0px !important;
}
  
   .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
        float: left;
   }
   .col-lg-12 {
        width: 100%;
   }
   .col-lg-11 {
        width: 91.66666667%;
   }
   .col-lg-10 {
        width: 83.33333333%;
   }
   .col-lg-9 {
        width: 75%;
   }
   .col-lg-8 {
        width: 66.66666667%;
   }
   .col-lg-7 {
        width: 58.33333333%;
   }
   .col-lg-6 {
        width: 50%;
   }
   .col-lg-5 {
        width: 41.66666667%;
   }
   .col-lg-4 {
        width: 33.33333333%;
   }
   .col-lg-3 {
        width: 25%;
   }
   .col-lg-2 {
        width: 16.66666667%;
   }
   .col-lg-1 {
        width: 8.33333333%;
   }
   
    .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
        float: left;
   }
   .col-xl-12 {
        width: 100%;
   }
   .col-xl-11 {
        width: 91.66666667%;
   }
   .col-xl-10 {
        width: 83.33333333%;
   }
   .col-xl-9 {
        width: 75%;
   }
   .col-xl-8 {
        width: 66.66666667%;
   }
   .col-xl-7 {
        width: 58.33333333%;
   }
   .col-xl-6 {
        width: 50%;
   }
   .col-xl-5 {
        width: 41.66666667%;
   }
   .col-xl-4 {
        width: 33.33333333%;
   }
   .col-xl-3 {
        width: 25%;
   }
   .col-xl-2 {
        width: 16.66666667%;
   }
   .col-xl-1 {
        width: 8.33333333%;
   }
}




.membership-pricing-table {
    width: 100%;
	/*width: 920px*/
}

.membership-pricing-table table .icon-no,.membership-pricing-table table .icon-yes {
    font-size: 22px
}

.membership-pricing-table table .icon-no {
    color: #a93717
}

.membership-pricing-table table .icon-yes {
    color: #209e61
}

.membership-pricing-table table .plan-header {
    text-align: center;
    font-size: 48px;
    border: 1px solid #e2e2e2;
    padding: 25px 0
}

.membership-pricing-table table .plan-header-free {
    background-color: #eee;
    color: #555
}

.membership-pricing-table table .plan-header-primary {
    color: #fff;
    background-color: #007bff;
    border-color: #3989c6
}

.membership-pricing-table table .plan-header-warning {
    color: #fff;
    background-color: #ffc107;
    border-color: #3989c6
}

.membership-pricing-table table .plan-header-success {
    color: #fff;
    background-color: #28a745;
    border-color: #3989c6
}

.membership-pricing-table table .plan-header-standard {
    color: #fff;
    background-color: #ff9317;
    border-color: #e37900
}

.membership-pricing-table table td {
    text-align: center;
    width: 15%;
    padding: 7px 10px;
    background-color: #fafafa;
    font-size: 14px;
    -webkit-box-shadow: 0 1px 0 #fff inset;
    box-shadow: 0 1px 0 #fff inset
}

.membership-pricing-table table,.membership-pricing-table table td {
    border: 1px solid #ebebeb
}

.membership-pricing-table table tr td:first-child {
    background-color: transparent;
    text-align: right;
    width: 24%
}

.membership-pricing-table table tr td:nth-child(5) {
    background-color: #FFF
}

.membership-pricing-table table tr:first-child td,.membership-pricing-table table tr:nth-child(2) td {
    -webkit-box-shadow: none;
    box-shadow: none
}

.membership-pricing-table table tr:first-child th:first-child {
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: #e2e2e2
}

.membership-pricing-table table tr:first-child th .pricing-plan-name {
    font-size: 22px;
	font-style: normal !important;
}

.membership-pricing-table table tr:first-child th .pricing-plan-price {
    line-height: 35px
}

.membership-pricing-table table tr:first-child th .pricing-plan-price sup {
    font-size: 45%
}

.membership-pricing-table table tr:first-child th .pricing-plan-price span {
    font-size: 30%
}

.membership-pricing-table table tr:first-child th .pricing-plan-period {
    /*margin-top: -7px;*/
    font-size: 25%
}

.membership-pricing-table table .header-plan-inner {
    position: relative
}

.membership-pricing-table table .recommended-plan-ribbon {
    box-sizing: content-box;
    background-color: #dc3b5d;
    color: #FFF;
    position: absolute;
    padding: 3px 6px;
    font-size: 11px!important;
    font-weight: 500;
    left: -6px;
    top: -22px;
    z-index: 99;
    width: 100%;
    -webkit-box-shadow: 0 -1px #c2284c inset;
    box-shadow: 0 -1px #c2284c inset;
    text-shadow: 0 -1px #c2284c
}

.membership-pricing-table table .recommended-plan-ribbon:before {
    border: solid;
    border-color: #c2284c transparent;
    border-width: 6px 0 0 6px;
    bottom: -5px;
    content: "";
    left: 0;
    position: absolute;
    z-index: 90
}

.membership-pricing-table table .recommended-plan-ribbon:after {
    border: solid;
    border-color: #c2284c transparent;
    border-width: 6px 6px 0 0;
    bottom: -5px;
    content: "";
    right: 0;
    position: absolute;
    z-index: 90
}

.membership-pricing-table table .plan-head {
    box-sizing: content-box;
    background-color: #ff9c00;
    border: 1px solid #cf7300;
    position: absolute;
    top: -33px;
    left: -1px;
    height: 30px;
    width: 100%;
    border-bottom: none
}

