/*
Theme Name: Visionic
Description: Theme enfant du theme Divi.
Author: Agoralink
Author URI: https://agoralink.fr
Template: Divi
Version: 1.0
*/

body {font-weight:400!important;}

/* Grid custom */

.ten-columns .et_pb_module {width: 10%; float: left;}
.nine-columns .et_pb_module {width: 11.11%; float: left;}
.eight-columns .et_pb_module {width: 12.5%; float: left;}
.seven-columns .et_pb_module {width: 14.28%; float: left;}
.six-columns > .et_pb_module {width: 16.66%; float: left;}
.five-columns > .et_pb_module {width: 20%; float: left;}
.three-columns > .et_pb_module {width: calc(100% / 3); display:inline-block; padding:15px; vertical-align: middle;}

@media screen and (max-width:768px) {
    .ten-columns .et_pb_module,
    .nine-columns .et_pb_module,
    .eight-columns .et_pb_module,
    .seven-columns .et_pb_module,
    .six-columns .et_pb_module,
    .five-columns > .et_pb_module {
        width:50%;
        float:left;
    }
    .et_pb_button_module_wrapper.et_pb_button_alignment_right, .et_pb_button_module_wrapper.et_pb_button_alignment_left {
        text-align:center;
    }
}

@media screen and (max-width:950px) {
    .mobile-height {height:250px;display:block!important;}
    .align-center-mobile h2, .align-center-mobile h1 {text-align: center;}
    .et_pb_specialty_fullwidth>.et_pb_row {width:100%!important;}
}
@media all and (max-width: 980px) {
    /*** wrap row in a flex box ***/
    .custom_row > .et_pb_row, .custom_row {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
    -webkit-flex-wrap: wrap; /* Safari 6.1+ */
    flex-wrap: wrap;
    }

    /*** custom classes that will designate the order of columns in the flex box row ***/
    .first-on-mobile {
    -webkit-order: 1;
    order: 1;
    }

    .second-on-mobile {
    -webkit-order: 2;
    order: 2;
    }

    .third-on-mobile {
    -webkit-order: 3;
    order: 3;
    }

    .fourth-on-mobile {
    -webkit-order: 4;
    order: 4;
    }
    /*** add margin to last column ***/
    .custom_row:last-child .et_pb_column:last-child {
    margin-bottom: 30px;
    }
}

@media all and (max-width:400px) {
    #footer-widgets .footer-widget li.phone ul li:last-child {
        margin-left:0!important;
        display:block;
    }
}


/* Colors */

:root {
	-principal-color: #00acc7;
}

.title-line h2:after, .title-line h1:after, h2.title-line:after {
    content:' ';
    width:40px;
    height:8px;
    display:block;
    margin: 25px auto 0 auto;
    background:var(--principal-color);
}
.title-line.line-white h2:after, .title-line.line-white h1:after {
    background:white;
}
.degrade-parallax .et_parallax_bg {
    opacity:0.15;
}

/* Nav */

.nav li ul, #top-menu li li a {
    width:330px;
    line-height: 1.4em!important;  
} 
.et-fixed-header #top-menu ul.sub-menu li a {
    color:white!important;
}

/* Slider */

.n2-ss-slide-active .n2-ss-slide-background:after {
    content: ' ';
    display: block;
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 81;
}

/* Blocs services */
.service-bloc {
    overflow: hidden;
} 
.service-bloc img {
    transition:all 0.4s ease-out;
}
.service-bloc .et_pb_module_inner {
    margin-bottom:-6px;
}
.service-bloc .et_pb_main_blurb_image {
    margin-bottom:0;
}
.service-bloc .et_pb_blurb_container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
}
.service-bloc .et_pb_blurb_container .et_pb_blurb_container_content {
     margin: auto;   
}
.service-bloc h2 {
    opacity:0;
    transition:all 0.8s ease-out;
}
.service-bloc:hover {
    cursor:pointer;
}
.service-bloc:hover img {
    opacity: 0.2;
}
.service-bloc h2:before, .service-bloc h2:after {
    content:' ';
    display:block;
    width:40px;
    height:8px;
    background:white;
    margin:30px auto;
}
.service-bloc h2:before {
    transform:translate3d(-1000%, 0, 0);
    transition:all 0.5s ease-out;
}
.service-bloc h2:after {
    transform:translate3d(1000%, 0, 0);
    transition:all 0.5s ease-out;
}
.service-bloc:hover h2:before, .service-bloc:hover h2:after {
    transform:translate3d(0, 0, 0);
}
.service-bloc:hover h2 {
    opacity:1;
}

/* Custom blog */

.custom-blog .et_pb_image_container, .custom-blog .et_pb_post .entry-featured-image-url {
    margin-bottom:0;
}
.custom-blog article {
    position:relative;
    padding-bottom:0!important; 
}
.custom-blog .et_overlay {
    display:none;
}
.custom-blog .blog-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
}
.custom-blog .blog-content .blog-content-center {
    margin:auto;
        background: rgba(255, 255, 255, 0.7);
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    border:10px solid rgba(255,255,255, 1);
    display:flex;
    transition:all 0.5 ease-out;
}
.custom-blog .blog-content .blog-content-center-align {
    margin:auto;
    text-align:center;
    padding: 35px;
}
.custom-blog .blog-content .blog-content-center-align .post-content {
    display:none;
}
.custom-blog .blog-content:hover .blog-content-center {
    background: rgba(255, 255, 255, 0.9);
}

/* Footer */

.footer-widget .widget_media_image {
    width:150px;
}
#footer-widgets .footer-widget li:before {
    content:none;
}
#footer-widgets .footer-widget:nth-of-type(1) {
    width:35%;
}
#footer-widgets .footer-widget:nth-of-type(2) {
    width:22%;
}
#footer-widgets .footer-widget:nth-of-type(3) {
    width:18%;
}
#footer-widgets .footer-widget:nth-of-type(4) {
    width:16%;
}
#footer-widgets .footer-widget {
    font-size:13px;
}
#footer-widgets .footer-widget li:before{
    display:inline-block;
    vertical-align: middle;
    position:initial;
    width:15px;
    border:none;
    margin-right:10px;
}
#footer-widgets .footer-widget li.adresse:before{
    content: url('images/pictogramme-localisation.svg');
}
#footer-widgets .footer-widget li.phone ul li {
    display:inline-block;
    vertical-align: middle;
    margin-left:0;
    padding-left:0;
}
#footer-widgets .footer-widget li.phone ul li:last-child {
    margin-left:15px;
}
#footer-widgets .footer-widget li.phone ul li:first-child:before {
    content: url('images/pictogramme-telephone.svg');
}
#footer-widgets .footer-widget li.phone ul li:last-child:before {
    content: url('images/pictogramme-fax.svg');
}
#footer-widgets .footer-widget li.mail:before{
    content: url('images/pictogramme-mail.svg');
}
#footer-widgets .footer-widget .widget_media_image {
    margin-bottom:15px;
}
#footer-widgets .footer-widget ul.menu li.menu-item-has-children, #footer-widgets .footer-widget ul.menu li.menu-item-209 {
    margin-bottom:15px;
}
#footer-widgets .footer-widget ul.menu li.menu-item-has-children > a, #footer-widgets .footer-widget ul.menu li.menu-item-209 > a, #footer-widgets .footer-widget ul.menu li.menu-item-2025 > a {
    font-size:18px;
    font-weight: bold;
    margin-bottom:5px;
}
#footer-widgets .footer-widget ul.menu li.menu-item-has-children ul.sub-menu li {
    margin-left:0;
    padding-left:0;
    font-size:12px!important; 
    margin-bottom:0;
}
#footer-widgets .footer-widget .widget_polylang ul li {
    display:inline-block;
}
#footer-widgets .footer-widget .widget_polylang ul li:not(.lang-item-first) {
    padding-left:5px;
}
@media (min-width: 981px) {
    .et_pb_gutters2.et_pb_footer_columns4 .footer-widget .fwidget {
        margin-bottom: 0;
    }
}
#footer-widgets .footer-widget.last .et_pb_widget {
    width:100%;
    margin-bottom:0;
    float:none;
}
#footer-widgets .footer-widget:nth-of-type(1) .et_pb_widget {
    margin-bottom:15px;
}
#footer-widgets .footer-widget:nth-of-type(1) #text-2 .textwidget {
    margin-left:15px;
}
#footer-bottom {
    display:none;
}
#footer-widgets .footer-widget ul.menu li.menu-item-has-children ul.sub-menu li a {
    transition:all 0.3s ease-out;
}
#footer-widgets .footer-widget ul.menu li.menu-item-has-children ul.sub-menu li a:hover {
    padding-left:5px;
}
/* Custom */
.btn-violet-mail {
    margin-top:20px;
}

.btn-violet-mail a {
    text-transform: uppercase;
    border: 2px solid #68055d;
    padding: 10px 20px;
    transition:all 0.3s ease-in-out;
    border-radius:2px;
}
.btn-violet-mail a:hover, .btn-violet-mail a:focus, .btn-violet-mail a:active {
    background:#68055d;
    color:white; 
}

.titre-separateur h1:after, .titre-separateur h2:after, .titre-separateur h3:after, .titre-separateur h4:after {
    content:'';
    width:40px;
    height:8px;
    background:#68055d;
    display:block;
    margin:15px 0;
}
.titre-separateur.white h1:after, .titre-separateur.white h2:after, .titre-separateur.white h3:after, .titre-separateur.white h4:after {
    background:white;   
}
.titre-separateur.center h1:after, .titre-separateur.center h2:after, .titre-separateur.center h3:after, .titre-separateur.center h4:after {
    margin:15px auto;
}
.cadre img {
    margin-top: -50px;
    margin-left: -16px;
    padding-bottom: 15px;
} 
.cadre .et_pb_image_wrap {
    margin-left:-30px;
    margin-top: 35px;
}
.ds-vertical-align { 
    display: flex; 
    flex-direction: column; 
    justify-content: center;
} 

/* .service */

.service .et_pb_module_inner .et_pb_module {
    display:flex;
    cursor: pointer!important;
}
.service .et_pb_module_inner .et_pb_module .et_pb_blurb_content {
     margin:auto;   
}
.service {
    transition:all 0.5s ease-out;   
}
.service:hover .et_pb_blurb {
    background:#68055d!important;
}
.service:hover .et_pb_main_blurb_image {
    filter: saturate(0%) brightness(0%) contrast(200%) invert(100%);
    backface-visibility: hidden;
}
.service:hover .et_pb_blurb_container_content h2.et_pb_module_header a {
    color:white!important;
}
.service .et_pb_blurb_container_content h2.et_pb_module_header a {
    max-width:250px;
    display:block;
}

/* formulaire */ 
.form {
    margin:50px 0;
}
.form .row-input-flex {
    display:flex;
}
.form .row-input-flex .input-group, .form .row-input {
    padding:5px;
}
.form .row-input-flex .input-group {
    width:50%;
}
.form .row-input-flex .input-group input, .form .row-input select, .form .row-input textarea {
    width:100%; 
} 

.form input[type="text"], .form input[type="tel"], .form input[type="email"], .form select, .form textarea {
    border: 2px solid #67055d;
    height: 35px;
    border-radius:5px;
    background-color:transparent;
    transition:all 0.5s ease-in-out;
}
.form input[type="text"]:focus, .form input[type="tel"]:focus, .form input[type="email"]:focus, .form select:focus, .form textarea:focus {
    background-color:white;   
}
.form textarea {
    height:150px;
    resize: vertical;
}

.form .rgpd-form {
    text-align:center;
    margin:30px 0;
}
.form .btn-contact {
    text-align:center;
}
.form .btn-contact input:disabled {
   background:transparent;
   cursor: not-allowed;
   color:#67055d;
}
.form .btn-contact input {
   /* background:#67055d;*/
	background:#00acc7;
    border:2px solid #67055d;
    border-radius:5px;
    padding: 10px 20px;
    text-transform: uppercase;
    color:white;
    font-size:16px;
    transition:all 0.2s ease-in-out;
}

@media screen and (max-width:768px) {
    .form {
        margin: 0;
    }
    .form .row-input-flex {
        display:block;   
    }
    .form .row-input-flex .input-group {
        width:100%;   
    }
}

/* blog */

#recent-posts-3 h4, #categories-3 h4 {
    color:#67055d;
    border-bottom: 1px solid #e5e5e5;
    margin-bottom:20px;
}
#post-151 .et_pb_post h2 {
    color:#67055d;
}
.et_pb_post .more-link {
    background: #68055d;
    color: white;
    padding: 5px 19px;
    margin-top: 20px;
    display: inline-block;
}

/* custom */

ul.caracteristiques {
    list-style-type:none;
    padding:0;
}
ul.caracteristiques li {
    border-bottom: 1px solid #c5c4c4;
    margin-bottom: 10px;
    line-height: initial;
    padding-bottom: 5px;
}
ul.listing > li {
    font-size: 16px;
    font-weight: bold;
   /* color: #67055d; */
	color: #00acc7!important;
}

ul.listing > li > ul li {
    color: #272727;
    font-size: 14px;
    font-weight:normal;
}


@media screen and (min-width:0\0) {
    body #page-container .et_pb_button_1 {
        padding-left: 3em!important;
    }
    body #page-container .et_pb_button_1::before {
        line-height:1em!important;
    }
    #footer-widgets .footer-widget li::before {
        position:inherit;
        top:0!important;
    }
}