/*
Kate style
*/

/******************/
/*******VAR********/
/******************/
:root{
/*colors*/
--wh: #ffffff;
--blk: #32373B;
--bleu: #1B2550;
--rouge: #EE755A;
--beige: #F6E7D7;


/*radius*/
--r12: 12px;
--r20: 20px;
--r90: 90px;

/*gap*/
--g10: 10px;
--g20: 20px;
--g42: 42px;
--g100: 100px;

/*cols*/
--c2: 2;
--c3: 3;
--c4: 4;
/*width*/
--2-20: calc((100% / var(--c2)) - var(--g20) + (var(--g20) / var(--c2)));
--3-20: calc((100% / var(--c3)) - var(--g20) + (var(--g20) / var(--c3)));
--4-20: calc((100% / var(--c4)) - var(--g20) + (var(--g20) / var(--c4)));

}


/******************/
/*******LIENS******/
/******************/
a:link {
color: var(--bleu);
}
a:visited {
color: var(--bleu);
}
a:active,
a:hover {
color: var(--bleu);
}

/******************/
/******POLICES*****/
/******************/
@font-face {
    font-family: 'sora';
    font-style: normal;
    font-weight: 300;
    src: local(''),
    url('../fonts/sora-v16-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
}
@font-face {
    font-family: 'sora';
    font-style: normal;
    font-weight: 400;
    src: local(''),
    url('../fonts/sora-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
}
@font-face {
    font-family: 'sora';
    font-style: normal;
    font-weight: 500;
    src: local(''),
    url('../fonts/sora-v16-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
}
@font-face {
    font-family: 'sora';
    font-style: normal;
    font-weight: 600;
    src: local(''),
    url('../fonts/sora-v16-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
}
@font-face {
    font-family: 'sora';
    font-style: normal;
    font-weight: 700;
    src: local(''),
    url('../fonts/sora-v16-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
}

/*global*/
body{
font-family: /*Arial, Helvetica, sans-serif*/ 'sora';
font-weight: 400;
font-size: 15px;
color: var(--bleu);
}
h1, h2, h3, h4, h5, h6{
display: block;
}

/******************/
/****STRUCTURE*****/
/******************/
.widzmain{
    width: 1228px;
    margin-right: auto;
    margin-left: auto;
}
.widzfull{
    width: 1668px;
    margin-right: auto;
    margin-left: auto;
}
.page_wrapper{
    display: block;
    position: relative;
}

/******************/
/******HEADER******/
/******************/
/*flash*/
.header_info_flash{
    display: block;
    background: var(--rouge);
    border-radius: var(--r12);
    justify-content: center;
}
.header_info_flash_content{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 16px 0 19px;
    color: var(--wh);
}
.header_info_flash_title{
    display: block;
    width: fit-content;
    line-height: 20px;
    margin-right: 11px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}
.header_info_flash_hentry{
    display: block;
    width: fit-content;
    line-height: 20px;
    font-size: 14px;
    font-weight: 400;
}
.header_info_flash_hentry p{
    line-height: 20px;
}
.header_info_flash_hentry a{
    color: var(--wh);
}
.header_info_flash_title,
.header_info_flash_hentry{
    padding-right: 16px;
    position: relative;
}
.header_info_flash_title:after,
.header_info_flash_hentry:after{
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    background: var(--wh);
    border-radius: var(--r90);
    position: absolute;
    top: 8px;
    right: 0;
}
/*header*/
#header{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 77;
}
#header_content{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g42);
    padding: 49px 0 0;
}
.single-product #header{
    position: relative;
    top: unset;
    right: unset;
    left: unset;
}
.single-product #header_content {
    padding: 20px 0 0;
}
/*logo*/
#logo{
    display: block;
    width: 193px;
    height: fit-content;
    position: relative;
}
#logo img{
    display: block;
    width: 100%;
    height: auto;
    filter: brightness(0) invert(1);
    position: relative;
    z-index: 2;
}
#logo a{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
}
.single-product #logo img {
    filter: unset;
}
/*navtop*/
#navtop{
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: var(--g10);
}
/*nav principale*/
.header_nav{
    flex: 1;
    background: var(--rouge);
    border-radius: var(--r20);
    position: relative;
}
.header_nav ul{
    display: flex;
    justify-content: space-around;
}
.header_nav ul li > a{
    display: block;
    line-height: 26px;
    padding: 18px 0;
    font-size: 15px;
    color: var(--wh);
    text-decoration: none;
    position: relative;
    z-index: 888;
}
.header_nav ul li:hover > a,
.header_nav ul li.current-menu-item > a{
    text-decoration: underline;
}
.header_nav ul ul{
    flex-wrap: wrap;
    justify-content: flex-start;
    box-sizing: border-box;
    padding: 32px 60px 30px;
    background: var(--beige);
    border-radius: var(--r20);
    opacity: 0;
    position: absolute;
    top: -500%;
    right: 0;
    left: 0;
    z-index: 88;
    /*transition: all 0.3s;*/
}
.header_nav ul li:hover ul{
    opacity: 1;
    top: 100%;
    transition: all 0.2s;
}
.header_nav ul ul li{
    width: calc(100% / var(--c2));
}
.header_nav ul ul li a{
    line-height: 32px;
    padding: 0;
    font-size: 16px;
    color: var(--bleu);
    text-decoration: none;
}
/*nav boutons*/
.header_bt{
    display: block;
    width: fit-content;
}
.header_bt ul{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g10);
}
.header_bt ul li{
    display: block;
    margin: 0;
}
.header_bt ul li a{
    display: block;
    line-height: 26px;
    padding: 17px 61px 17px 16px;
    background: var(--bleu);
    border: 1px solid var(--bleu);
    border-radius: var(--r90);
    font-size: 15px;
    color: var(--wh);
    font-weight: 400;
    text-decoration: none;
    position: relative;
    transition: all 0.3s;
}
.header_bt ul li a:before{
    content: '';
    display: block;
    width: 44px;
    height: 44px;
    background: var(--wh);
    border-radius: var(--r90);
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 9px;
    bottom: 0;
    z-index: 2;
    transition: all 0.3s;
}
.header_bt ul li a:after{
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    background-color: var(--bleu);
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 23px;
    bottom: 0;
    z-index: 3;
    transition: all 0.3s;
}
.header_bt ul li a:hover{
    background: var(--wh);
    color: var(--bleu);
    transition: all 0.3s;
}
.header_bt ul li a:hover:before{
    background: var(--bleu);
    transition: all 0.3s;
}
.header_bt ul li a:hover:after{
    background-color: var(--wh);
    transition: all 0.3s;
}

/******************/
/******FOOTER******/
/******************/
#footer_content{
    display: block;
    background: var(--beige) url('../img/pic_ill_footer.svg') no-repeat right center;
    border-radius: var(--r20);
}

.footer_top{
    display: flex;
    flex-wrap: wrap;
    padding: 48px 0 51px;
    margin: 0 6.76%;
}
.footer_top_cols:nth-of-type(1){
    flex: 7;
}
.footer_top_cols:nth-of-type(2){
    flex: 6;
    padding-top: 44px;
}
.footer_top_title{
    display: block;
    line-height: 69px;
    margin-bottom: 8px;
    font-size: 70px;
    font-weight: 600;
}
.footer_top_sub{
    display: block;
    line-height: 24px;
    margin-bottom: 34px;
    font-size: 16px;
    font-weight: 600;
}
/*adresse*/
.footer_top .ldg_datas_group p{
    color: var(--rouge);
}
.footer_top .ldg_datas_group p{
    line-height: 24px;
    margin-bottom: 14px;
}
.footer_top  .ldg_datas_group:before {
    background-color: var(--rouge);
}
.footer_top .ldg_datas_group a{
    color: var(--rouge);
    text-decoration: none;
}
.footer_top_social{
    display: block;
    padding-top: 13px;
}
.footer_top a.ldg_social_item_link{
    width: 40px;
    height: 40px;
    background: var(--rouge);
    border-radius: var(--r90);
    transition: all 0.3s;
}
.footer_top a.ldg_social_item_link:before {
    width: 20px;
    height: 20px;
    background-color: var(--wh);
}
.footer_top a.ldg_social_item_link.ldg_social_item_link_fb:before {
    width: 10px;
    mask: url(../img/pic_social_fb.svg) no-repeat 100% center;
    -webkit-mask: url(../img/pic_social_fb.svg) no-repeat 100% center;
}
.footer_top a.ldg_social_item_link.ldg_social_item_link_insta :before {
    mask: url(../img/pic_social_insta.svg) no-repeat 100% center;
    -webkit-mask: url(../img/pic_social_insta.svg) no-repeat 100% center;
}
.footer_top a.ldg_social_item_link:hover{
    background: var(--bleu);
    transition: all 0.3s;
}
.footer_top a.ldg_social_item_link:hover:before {
    background-color: var(--wh);
    transition: all 0.3s;
}

/*nav*/
.footer_top_nav{
    display: block;
    width: fit-content;
    margin: 0 auto 106px;
}
.footer_top_nav_title{
    display: block;
    line-height: 24px;
    margin-bottom: 3px;
    font-size: 16px;
    color: var(--rouge);
    font-weight: 600;
    text-transform: uppercase;
}
.footer_top_nav ul li a{
    display: block;
    line-height: 24px;
    font-size: 15px;
    color: var(--bleu);
    text-decoration: none;
}
.footer_top_nav ul li a:hover{
    text-decoration: underline;
}

/*cta*/
.footer_cta_strap{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g10);
}
a.footer_cta_single_link{
    display: block;
    line-height: 26px;
    padding: 17px 61px 17px 16px;
    background: var(--rouge);
    border: 1px solid var(--rouge);
    border-radius: var(--r90);
    font-size: 15px;
    color: var(--wh);
    font-weight: 400;
    text-decoration: none;
    position: relative;
    transition: all 0.3s;
}
a.footer_cta_single_link:before{
    content: '';
    display: block;
    width: 44px;
    height: 44px;
    background: var(--wh);
    border-radius: var(--r90);
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 9px;
    bottom: 0;
    z-index: 2;
    transition: all 0.3s;
}
a.footer_cta_single_link:after{
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    background-color: var(--rouge);
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 23px;
    bottom: 0;
    z-index: 3;
    transition: all 0.3s;
}
a.footer_cta_single_link:hover{
    background: var(--wh);
    color: var(--rouge);
    transition: all 0.3s;
}
a.footer_cta_single_link:hover:before{
    background: var(--rouge);
    transition: all 0.3s;
}
a.footer_cta_single_link:hover:after{
    background-color: var(--wh);
    transition: all 0.3s;
}

/*bottom*/
.footer_bottom{
    display: block;
    padding: 30px 0 42px;
    margin: 0 6.76%;
    border-top: 1px solid var(--wh);
}
.footer_nav ul{
    display: block;
    text-align: left ;
}
.footer_nav ul li{
    display: inline-block;
}
.footer_nav ul li:not(:last-of-type):after{
    content: '_';
    display: inline-block;
    margin: 0 1px 0 4px;
    font-size: 13px;
    color: var(--bleu);
}
.footer_nav ul li a{
    display: inline-block;
    line-height: 18px;
    font-size: 13px;
    color: var(--bleu);
    text-decoration: none;
}
.footer_nav ul li a:hover{
    text-decoration: underline;
}

/******************/
/*******PAGES******/
/******************/
.page_main{
    display: block;
    margin-top: -50px;
    position: relative;
    z-index: 3;
}
.page_hn_strap{
    display: block;
    line-height: 49px;
    margin-bottom: 17px;
    font-size: 35px;
    color: var(--bleu);
    font-weight: 700;
}
.list_single_mozaik{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g42) var(--g20);
}

/*breadcrumb*/
#breadcrumb_content{
display: block;
line-height: 15px;
padding: 20px 0;
font-size: 0;
}
.breadcrumb_item{
display: inline-block;
font-size: 12px;
color: var(--bleu);
}
.breadcrumb_item:last-of-type{
color: var(--bleu);
}
.breadcrumb_item:not(:last-of-type):after{
content: '';
display: inline-block;
height : 0;
width : 0;
border-top : 4px solid transparent;
border-bottom : 4px solid transparent;
border-left : 5px solid var(--bleu);
margin: auto 12px;
}
.breadcrumb_item a{
color: var(--bleu);
text-decoration: none;
}
.breadcrumb_item a:hover{
text-decoration: underline;
}

/*pic strap*/
.page_pic_strap{
    display: block;
    height: 412px;
    position: relative;
    z-index: 2;
}
.page_pic_strap img{
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    border-radius: var(--r12);
    margin: 0 auto auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}

/*title*/
.page_title_strap{
    display: block;
    box-sizing: border-box;
    padding: 30px 6.84%;
    background: var(--beige);
    border-radius: var(--r20);
}
.page_title{
    display: block;
    line-height: 46px;
    font-size: 35px;
    font-weight: 600;
}

/*chapo*/
.page_chapo{
    display: block;
    line-height: 26px;
    padding: 18px 0 32px;
    font-size: 16px;
    font-weight: 600;
}
.page_chapo p{
    line-height: 26px;
    margin: 0;
}

/*Hentry*/
.post_content{
padding: 44px 0 76px;
}
.single-post .page_hentry{
overflow: hidden;
}
.page_hentry h2{
line-height: 42px;
margin-bottom: 19px;
font-size: 30px;
color: var(--bleu);
font-weight: 600;
}
.page_hentry h3{
line-height: 22px;
margin-bottom: 19px;
font-size: 20px;
color: var(--rouge);
font-weight: 600;
text-transform: uppercase;
}
.page_hentry h4{
line-height: 24px;
margin-bottom: 3px;
font-size: 16px;
font-weight: 600;
}
.page_hentry p{
line-height: 24px;
margin-bottom: 33px;
}
.page_hentry ul{
padding: 0;
margin: 0 0 27px;
}
.page_hentry ul li{
line-height: 24px;
padding: 0 0 0 14px;
margin: 0;
position: relative;
}
.page_hentry ul li:before{
content: '';
width: 4px;
height: 4px;
background: var(--bleu);
border-radius: var(--r90);
position: absolute;
top: 11px;
left: 1px;
}
.page_hentry b,
.page_hentry strong{
font-weight: 700;
}
.page_hentry em{
font-style: italic;
}
.page_hentry img{
width: auto;
max-width: 100%;
height: auto;
    border-radius:  var(--r12);
}
.page_hentry a {
    position: relative;
    text-decoration: none;
    color: var(--bleu);
    background-image: linear-gradient(var(--rouge), var(--rouge)),/*survol*/ linear-gradient(var(--bleu), var(--bleu)); /*ligne fine statique*/
    background-repeat: no-repeat;
    background-size: 100% 0%, 100% 1px;
    background-position: bottom left, bottom left;
    transition: background-size 0.3s ease;
}
.page_hentry a:hover {
    background-size: 100% 100%, 100% 1px;
    color: var(--wh);
}
.page_hentry .gallery{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g20);
    margin: 0 0 52px;
}
.page_hentry .gallery .gallery-item{
    flex: 1;
    display: block;
    float: none!important;
    width: auto!important;
    margin: 0!important;
}
.page_hentry .gallery .gallery-item a{
    background: none!important;
}
.page_hentry .gallery .gallery-item img{
    border: none!important;
}
/*spé*/
.hentry_bt_bleu,
.hentry_bt_orange{
    display: inline-block;
}
.form_hentry_bt_block .hentry_bt_bleu{
    position: relative;
}
.hentry_bt_bleu input[type='submit'],
.hentry_bt_bleu a,
.hentry_bt_orange a{
    display: block;
    line-height: 30px;
    padding: 7px 53px 7px 15px;
    border-radius: var(--r90);
    font-size: 17px;
    color: var(--wh);
    font-weight: 300;
    text-decoration: none;
    position: relative;
    transition: all 0.3s;
}
.hentry_bt_bleu input[type='submit'],
.hentry_bt_bleu a{
    background: var(--bleu);
    border: 1px solid var(--bleu);
}
.hentry_bt_orange a{
    background: var(--rouge);
    border: 1px solid var(--rouge);
}
.form_hentry_bt_block .hentry_bt_bleu:before,
.hentry_bt_bleu a:before,
.hentry_bt_orange a:before{
    content: '';
    display: block;
    width: 34px;
    height: 34px;
    background: var(--wh);
    border-radius: var(--r90);
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 5px;
    bottom: 0;
    z-index: 2;
    transition: all 0.3s;
}
.form_hentry_bt_block .hentry_bt_bleu:after,
.hentry_bt_bleu a:after,
.hentry_bt_orange a:after{
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    margin: auto 0;
    position: absolute;
    top: 0;
    right: 16px;
    bottom: 0;
    z-index: 3;
    transition: all 0.3s;
}
.form_hentry_bt_block .hentry_bt_bleu:after,
.hentry_bt_bleu a:after{
    background-color: var(--bleu);
}
.hentry_bt_orange a:after{
    background-color: var(--rouge);
}
.hentry_bt_bleu input[type='submit']:hover,
.hentry_bt_bleu a:hover,
.hentry_bt_orange a:hover{
    background: transparent;
    transition: all 0.3s;
}
.hentry_bt_bleu input[type='submit']:hover,
.hentry_bt_bleu a:hover{
    color: var(--bleu);
}
.hentry_bt_orange a:hover{
    color: var(--rouge);
}
.form_hentry_bt_block .hentry_bt_bleu:hover:before,
.hentry_bt_bleu a:hover:before{
    background: var(--bleu);
    transition: all 0.3s;
}
.hentry_bt_orange a:hover:before{
    background: var(--rouge);
    transition: all 0.3s;
}
.form_hentry_bt_block .hentry_bt_bleu:hover:after,
.hentry_bt_bleu a:hover:after,
.hentry_bt_orange a:hover:after{
    background-color: var(--wh);
    transition: all 0.3s;
}

/*404*/
#page_404{
display: flex;
flex-wrap: wrap;
padding: 94px 0 94px;
}
#page_404_ill_block{
width: 36.5%;
margin: 0 9.8% 0 0;
}
#page_404_ill_block object{
width: 100%;
max-width: 511px;
height: auto;
margin: auto;
}
#page_404_ill_main{
flex: 1;
padding-top: 53px;
}

/*******************/
/****CTA context****/
/*******************/
.cta_context_wrap{
    display: block;
    background: var(--beige);
    border-radius: var(--r20);
    margin: 0 0 70px;
}
.cta_context_main{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g20);
    padding: 40px 4.9% 41px;
}
.cta_context_cols{
    flex: 1;
}
.cta_context_title{
    display: block;
    line-height: 42px;
    margin-bottom: 14px;
    font-size: 30px;
    font-weight: 600;
}

/*******************/
/****Content SEO****/
/*******************/
.page_hentry_seo{
    display: block;
    padding: 49px 0 40px;
    border-top: 1px solid var(--beige);
}

/****************************/
/****Blog // Autres posts****/
/****************************/
.list_single_mozaik_posts_wrap{
    display: block;
    background: var(--rouge);
    border-radius: var(--r12);
    margin-bottom: 80px;
}
.list_single_mozaik_posts{
    display: block;
    padding: 60px 0;
}
.page_content_hn_strap{
    display: block;
}
.list_single_mozaik_bt_strap{
    display: block;
    padding: 40px 0 0;
    text-align: center;
}
/*cards posts*/
.list_single_post{
    display: block;
    width: var(--3-20);
    background: var(--beige);
    border-radius: var(--r20);
    position: relative;
}
.list_single_link{
    text-decoration: none;
}
.list_single_content{
    display: block;
    box-sizing: border-box;
    height: 512px;
    padding: 20px 20px 61px;
    position: relative;
}
.list_single_post_pic{
    display: block;
    height: 255px;
    margin-bottom: 20px;
    position: relative;
}
.list_single_post_pic img{
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--r12);
    margin: auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.list_single_tax{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g10);
    margin-bottom: 20px;
}
.list_single_tax_items{
    display: inline-block;
    line-height: 19px;
    padding: 3px 13px;
    background: var(--wh);
    border-radius: var(--r90);
    font-size: 13px;
    color: var(--bleu);
    font-weight: 400;
    text-transform: uppercase;
}
.list_single_title{
    display: block;
    line-height: 24px;
    font-size: 16px;
    color: var(--bleu);
    font-weight: 600;
    text-transform: uppercase;
}
.list_single_post:before{
    content: '';
    display: block;
    width: 39px;
    height: 39px;
    background: var(--beige);
    border: 1px solid var(--rouge);
    border-radius: var(--r90);
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 2;
    transition: all 0.3s;
}
.list_single_post:after{
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    background-color: var(--rouge);
    margin: auto 0;
    position: absolute;
    right: 33px;
    bottom: 36px;
    z-index: 3;
    transition: all 0.3s;
}

.list_single_post:hover:before{
    background: var(--rouge);
    transition: all 0.3s;
}
.list_single_post:hover:after{
    background-color: var(--wh);
    transition: all 0.3s;
}

/*******************/
/****Avis clients***/
/*******************/
.avis_clients_wrap{
    display: block;
    margin-bottom: 81px;
}
.avis_clients_main{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g42);
}
.avis_clients_iframe_wrap{
    display: block;
    box-sizing: border-box;
    width: 100%;
    padding: 60px 36px 65px;
    background: var(--beige);
    border-radius: var(--r20);
}

/*******************/
/****Reassurance****/
/*******************/
.reassurance_block{
    display: block;
    background: var(--rouge) url('../img/pic_ill_reassurance.svg') no-repeat left -16% bottom -60px;
    border-radius: var(--r20);
    margin-bottom: 80px;
}
.reassurance_block_main{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g100);
    padding: 60px 10.6% 53px 6.8%;
}
.reassurance_block_col{
    flex: 3;
}
.reassurance_block_col .cta_context_title,
.reassurance_block_col .page_hentry{
    color: var(--wh);
}
.reassurance_block_mozaik{
    flex: 5;
}
.reassurance_mozaik{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g20) var(--g42);
}
.reassurance_mozaik_single{
    display: block;
    width: 45%;
}
.reassurance_mozaik_single_number{
    display: block;
    margin-bottom: 9px;
}
.reassurance_mozaik_single_number_span{
    display: block;
    width: 30px;
    line-height: 24px;
    padding: 3px 0px;
    background: url('../img/pic_ill_reass_number.svg') no-repeat center;
    font-size: 16px;
    color: var(--rouge);
    font-weight: 700;
    text-align: center;
}
.reassurance_mozaik_single .page_hentry p{
    margin: 0;
}

/*******************/
/******Services*****/
/*******************/
.product_service_block{
    flex: 1;
    display: block;
}
.product_service_block_content{
    display: block;
    padding: 40px 40px 30px;
    background: var(--wh);
    border: 1px solid var(--rouge);
    border-radius: var(--r20);
}
.product_service_block_title{
    display: block;
    line-height: 28px;
    margin-bottom: 13px;
    font-size: 20px;
    color: var(--rouge);
    font-weight: 600;
    text-transform: uppercase;
}
.product_service_single_title{
    display: block;
    line-height: 24px;
    margin-bottom: 3px;
    font-size: 16px;
    color: var(--bleu);
    font-weight: 600;
}
.product_service_single .page_hentry p{
    margin-bottom: 11px;
}

/******************/
/*****HOMEPAGE*****/
/******************/
/*entête*/
.page-template-page_accueil .page_pic_strap{
    height: 762px;
}
.page_pic_strap_content{
    display: flex;
    height: 762px;
    position: relative;
    z-index: 3;
}
.page_pic_strap_text{
    display: block;
    line-height: 82px;
    margin: auto 20% 20% 0;
    font-size: 70px;
    color: var(--wh);
    font-weight: 600;
}
/*chapo*/
.page_title_strap_content{
    display: flex;
    flex-wrap: wrap;
}
.page_title_strap_title{
    flex: 7;
}
.homepage_title{
    display: block;
    line-height: 34px;
    font-size: 24px;
    color: var(--rouge);
    font-weight: 700;
    text-transform: uppercase;
}
.page_title_strap_chapo{
    flex: 15;
    padding-left: 38px;
    border-left: 1px solid var(--wh);
    margin-left: 38px;
}
.page_title_strap_chapo .page_chapo{
    padding: 0;
}
/*product cat*/
.page-template-page_accueil .list_single_mozaik_product_cat_wrapper {
    display: block;
    padding: 40px 0;
}
/*services*/
.home_svces_strap{
    display: block;
    height: fit-content;
    margin-bottom: 62px;
    position: relative;
}
img.home_svces_strap_pic{
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--r12);
    margin: auto auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.home_svces_strap_content{
    display: block;
    padding: 76px 0 80px;
    position: relative;
    z-index: 3;
}
.home_svces_strap_content .page_hn_strap{
    color: var(--wh);
}
.home_svces_strap_single{
    display: block;
    width: var(--4-20);
}
.home_svces_strap_single_top{
    display: flex;
    height: 116px;
    background: var(--bleu);
    border-radius: var(--r12);
    margin-bottom: 14px;
}
.home_svces_strap_single_title{
    display: block;
    line-height: 24px;
    padding: 0 40px;
    margin: auto;
    font-size: 16px;
    color: var(--beige);
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
}
.home_svces_strap_single_content{
    display: block;
    box-sizing: border-box;
    min-height: 316px;
    padding: 40px 30px 81px;
    background: var(--wh);
    border-radius: var(--r12);
    position: relative;
    text-align: center;
}
.home_svces_strap_single_content:before {
    content: '';
    display: block;
    width: 39px;
    height: 39px;
    background: var(--rouge);
    border: 1px solid var(--rouge);
    border-radius: var(--r90);
    margin: 0 auto;
    position: absolute;
    right: 0;
    bottom: 40px;
    left: 0;
    z-index: 2;
    transition: all 0.3s;
}
.home_svces_strap_single_content:after {
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: auto;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    background-color: var(--wh);
    margin: 0 auto;
    position: absolute;
    right: 0;
    bottom: 57px;
    left: 0;
    z-index: 3;
    transition: all 0.3s;
}
.home_svces_strap_single_link{
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5;
}
.home_svces_strap_single_content:hover:before {
    background: var(--wh);
    transition: all 0.3s;
}
.home_svces_strap_single_content:hover:after {
    background-color: var(--rouge);
    transition: all 0.3s;
}
/*aide*/
.hentry_accordion_wrapp{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g100);
    margin-bottom: 60px;
}
.hentry_accordion_col_left{
    flex: 8;
}
.hentry_accordion_col_right{
    flex: 9;
}
.hentry_accordion_single{
    display: block;
    border: 1px solid var(--beige);
    border-radius: var(--r12);
    margin-bottom: 9px;
}
.hentry_accordion_single_title{
    display: block;
    line-height: 24px;
    padding: 20px 116px 18px 31px;
    font-size: 16px;
    color: var(--bleu);
    font-weight: 600;
    position: relative;
    cursor: pointer;
}
.hentry_accordion_single_title:before{
    content: '';
    display: block;
    width: 39px;
    height: 39px;
    background: var(--rouge);
    border: 1px solid var(--rouge);
    border-radius: var(--r90);
    margin: auto 0 auto auto;
    position: absolute;
    top: 0;
    right: 30px;
    bottom: 0;
    z-index: 2;
    transition: all 0.3s;
}
.hentry_accordion_single_title:after{
    content: '';
    display: block;
    width: 13px;
    height: 8px;
    mask: url('../img/pic_arrow_base.svg') no-repeat center;
    -webkit-mask: url('../img/pic_arrow_base.svg') no-repeat center;
    mask-size: 100% auto;
    -webkit-mask-size: 100% auto;
    background-color: var(--wh);
    margin: auto 0 auto auto;
    position: absolute;
    top: 0;
    right: 43px;
    bottom: 0;
    z-index: 3;
    transition: all 0.3s;
}

.hentry_accordion_single_title:hover:before{
    background: var(--wh);
    transition: all 0.3s;
}
.hentry_accordion_single_title:hover:after{
    background-color: var(--rouge);
    transition: all 0.3s;
}
.hentry_accordion_single_hentry{
    display: none;
    padding: 10px 31px 20px;
}
.hentry_accordion_single_hentry.page_hentry p{
    margin-bottom: 10px;
}
.current .hentry_accordion_single_hentry{
    display: block;
}
.current .hentry_accordion_single_title:after{
    transform: rotate(-90deg);
}

/******************/
/*******BLOG*******/
/******************/
.list_single_mozaik_post_wrapper{
    display: block;
    padding: 60px 0;
    background: #FDF8F3;
    border-radius: var(--r12);
    margin-bottom: 79px;
}
/*nav blog*/
.nav_blog{
    display: block;
    margin-bottom: 40px;
}
.nav_blog ul{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g10);
}
.nav_blog ul li a{
    display: block;
    line-height: 19px;
    padding: 11px 19px;
    background: var(--bleu);
    border-radius: var(--r90);
    border: 1px solid var(--bleu);
    font-size: 13px;
    color: var(--wh);
    text-transform: uppercase;
    font-weight: 400;
    text-decoration: none;
    transition: all 0.3s;
}
.nav_blog ul li.current-menu-item a,
.nav_blog ul li a:hover{
    background: transparent;
    color: var(--bleu);
    transition: all 0.3s;
}
/*pagination*/
.pagination_strap{
    display: block;
    padding: 42px 0 0;
}
ul.pagination{
    display: flex;
    gap: var(--g20);
    justify-content: center;
}
ul.pagination li{
}
ul.pagination li a,
ul.pagination li span{
    display: inline-block;
    line-height: 24px;
    padding: 0;
    font-size: 16px;
    color: var(--rouge);
    font-weight: 600;
    text-decoration: none;
}
ul.pagination li a:hover,
ul.pagination li span.current{
    color: var(--bleu);
}
ul.pagination li:not(:last-of-type) a:not(.item_prev):not(.item_next):after,
ul.pagination li span:not(.item_prev):not(.item_next):after{
    content: '.';
    display: inline-block;
}

/*****************/
/*****SOCIETE*****/
/*****************/
/*histoire*/
.page_content_wizpic{
    display: block;
    margin-bottom: 60px;
}
.page_content_wizpic_content{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g100);
}
.page_content_wizpic_cols:nth-of-type(1){
    flex: 5;
}
.page_content_wizpic_cols:nth-of-type(2){
    flex: 3;
}
.page_content_wizpic_pic{
    border-radius: var(--r12);
}
.page_content_wizpic_pic img{
    display: block;
    width: 100%;
    height: auto;
    border-radius: var(--r12);
}
/*team*/
.page_team_block{
    display: block;
    margin-bottom: 60px;
}
.list_single_mozaik_team:nth-of-type(1){
    margin-bottom: 60px;
}
.list_single_mozaik_team_title{
    display: block;
    line-height: 35px;
    margin-bottom: 9px;
    font-size: 20px;
    color: var(--rouge);
    font-weight: 600;
    text-transform: uppercase;
}
.list_single_team{
    display: block;
    box-sizing: border-box;
    width: var(--3-20);
    padding: 20px 20px 96px;
    background: var(--beige);
    border-radius: var(--r12);
    position: relative;
}
.list_single_team_pic{
    display: block;
    height: 255px;
    margin-bottom: 20px;
    position: relative;
}
.list_single_team_pic img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--r12);
    margin: auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.list_single_team .page_hentry p{
    margin-bottom: 10px;
}
.list_single_team_name{
    display: block;
    line-height: 24px;
    margin-bottom: 4px;
    font-size: 16px;
    color: var(--bleu);
    font-weight: 600;
    text-transform: uppercase;
}
.list_single_team_why{
    display: block;
    padding: 20px 20px;
    background: var(--wh);
    border-radius: var(--r20);
    color: var(--rouge);
}
.list_single_team_why .page_hentry h4{
    color: var(--rouge);
}
.list_single_team_why .page_hentry ul{
    margin-bottom: 0;
}
.list_single_team_why .page_hentry ul li:before {
    background: var(--rouge);
}
.list_single_team .hentry_bt_orange{
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 3;
}
/*product cat*/
.list_single_mozaik_product_cat_wrapper{
    display: block;
    padding: 20px 0;
}
/*2 text + pic*/
.page_two_content_wizpic{
    padding: 60px 0 108px;
    border-top: 1px solid var(--beige);
}
.page_two_content_wizpic_content{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g100);
}
.page_two_content_wizpic_cols:nth-of-type(1){
    flex: 9;
}
.page_two_content_wizpic_cols:nth-of-type(2){
    flex: 10;
}
.page_hentry_framed{
    display: block;
    padding: 40px 30px 20px;
    border: 1px solid var(--beige);
    border-radius: var(--r20);
}
.page_hentry.page_hentry_framed p{
    margin-bottom: 20px;
}
.page_two_content_wizpic_pic{
    display: block;
    padding: 65px 56px;
    background: var(--beige);
    border-radius: var(--r20);
}
.page_two_content_wizpic_pic img{
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

/*****************/
/*****CONTACT*****/
/*****************/
/*form*/
.choice_form{
    display: flex;
    flex-wrap: wrap;
    gap: var(--g20);
    margin-bottom: 51px;
}
.choice_form_hentry_wrapp{
    flex: 1;
}
.choice_form_hentry{
    display: block;
    padding: 40px;
    background: var(--wh);
    border: 1px solid var(--rouge);
    border-radius: var(--r20);
}
.choice_form_datas_group{
    display: flex;
    min-height: 49px;
    padding: 0 0 0 68px;
    background-position: center left;
    background-repeat: no-repeat;
    font-size: 16px;
    color: var(--bleu);
    font-weight: 600;
}
.choice_form_datas_add{
    background-image: url('../img/pic_ill_contact_address.svg');
}
.choice_form_datas_tel{
    background-image: url('../img/pic_ill_contact_tel.svg');
}
.choice_form_datas_hour{
    background-image: url('../img/pic_ill_contact_hour.svg');
}
.choice_form_datas_group:not(:last-of-type){
    margin-bottom: 21px;
}
.choice_form_datas_group p{
    line-height: 24px;
    margin: auto 0;
}
.choice_form_datas_group a{
    text-decoration: none;
}
.choice_form_cta_strap{
    padding-top: 20px;
}
.choice_form_wrapp{
    flex: 2;
}
.choice_form_block{
    display: block;
    padding: 40px 84px;
    background: var(--beige);
    border-radius: var(--r20);
}
/*team*/
.list_single_team.list_single_team_small{
    width: var(--4-20);
}

/*****************/
/***FORMULAIRES***/
/*****************/
.wpcf7-spinner{
    position: absolute;
}
.wpcf7 p{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    /*line-height: 50px;*/
}
.wpcf7 .form_label{
    display: block;
    line-height: 20px;
    font-size: 20px;
    font-family: 'sora';
    text-transform: uppercase;
}
.wpcf7 span.wpcf7-form-control-wrap{
    display: inline-block;
    width: 49%;
    margin-bottom: 20px;
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="message"]{
    width: 100%;
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="acceptance"]{
    flex: 1;
    line-height: 19px;
    margin-right: 21px;
    font-size: 12px;
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="client"],
.wpcf7 span.wpcf7-form-control-wrap[data-name="marque"],
.wpcf7 span.wpcf7-form-control-wrap[data-name="logement"]{
    padding-top: 28px;
    position: relative;
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="client"]:before,
.wpcf7 span.wpcf7-form-control-wrap[data-name="marque"]:before,
.wpcf7 span.wpcf7-form-control-wrap[data-name="logement"]:before{
    display: block;
    line-height: 18px;
    font-size: 14px;
    font-family: 'sora';
    position: absolute;
    top: 4px;
    left: 0;
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="client"]:before{
    content: 'Etes vous client ?';
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="marque"]:before{
    content: 'Quelle est la marque de votre équipement ?';
}
.wpcf7 span.wpcf7-form-control-wrap[data-name="logement"]:before{
    content: 'Quel est votre projet ?';
}
.wpcf7 span[data-name="rgpd"]{
    display: inline-block;
    margin-bottom: 9px;
}
.wpcf7 span[data-name="rgpd"] span.wpcf7-checkbox{
    display: inline-block;
}
.wpcf7 span[data-name="rgpd"] span.wpcf7-list-item{
    margin: 0;
}
.wpcf7 span input:not([type='radio']):not([type='checkbox']):not([type='submit']):not([type='file']),
.wpcf7 span select,
.wpcf7 span textarea{
    display: block;
    box-sizing: border-box;
    width: 100%;
    line-height: 15px;
    background: var(--wh);
    border: 2px solid var(--wh);
    font-size: 15px;
    font-family: 'sora';
    color: var(--bleu);
}
.wpcf7 span select,
.wpcf7 span input{
    padding: 13px 23px;
    border-radius: 4px;
}
.wpcf7 span input[type='checkbox'],
.wpcf7 span input[type='radio']{
    margin-left: 0;
    font-family: 'nunito';
}
.wpcf7 span select{
    height: 50px;
    /*appearance: none;*/
}
.wpcf7 span textarea{
    height: 175px;
    padding: 24px;
    border: 1px solid var(--wh);
    border-radius: 4px;
}
.wpcf7 .wpcf7-form-control.wpcf7-radio{
    display: block;
    width: 100%;
}
.wpcf7 .wpcf7-form-control .wpcf7-list-item{
    display: block;
    width: 100%;
    margin: 0;
}
.wpcf7 input[type="checkbox"]{
    display: inline-block;
    width: auto;
}
.wpcf7 .wpcf7-list-item-label{
    line-height: 19px;
}

.wpcf7 span input[type='file']{
    box-sizing: border-box;
    width: 100%;
    height: 36px;
    background: var(--bleu);
    font-family: 'sora';
    color: var(--wh);
}
.wpcf7-form input[type='submit']{
    font-size: 15px;
    font-family: 'sora';
    color: var(--wh);
    cursor: pointer;
    transition: all 0.4s;
}
.wpcf7-form input[type='submit']:hover{
    background: var(--wh);
    color: var(--bleu);
    transition: all 0.4s;
}
.wpcf7_form_control_value{
    display: block;
    lien-height: 17px;
    margin-bottom: 8px;
    font-size: 14px;
    color: var(--gris);
}