@media(min-width:1201px){
body.page *::before, body.page *::after, body.page a, body.page a span, body.page .btn, body.page .plus, body.page .slickavis .item, body.page .list-partenaire *, body.page .slick-arrow, body.page .sub-menu, body.page .srv, body.page .date-of-post { transition: all ease-in-out 300ms; -webkit-transition: all ease-in-out 300ms; -moz-transition: all ease-in-out 300ms; -ms-transition: all ease-in-out 300ms;}
body.page footer a:hover, body.page .menu-footer ul li a:hover, body.page .top-first a:hover,
body.page .header-nav .menu>li>a:hover { color: #e01c02; }
body.page .header-nav li a:hover::before { opacity: 1; left: 0; }
body.page .btn:hover { background-position:0 0; }
body.page .btn:hover span:after { right: -23px; }
body.page .plus:hover::after { box-shadow: 0 0 0 5px rgba(224,28,2,.3); }
body.page .rs a:hover { background-color: #e01c02; }
body.page .bg-grey .list-partenaire .item:hover { background-color: #fff; }
body.page .list-partenaire .item:hover img { filter: grayscale(0); }
body.page .list-partenaire .item:hover { box-shadow: -10px 20px 40px rgb(0 0 0 / 10%); -webkit-box-shadow: -10px 20px 40px rgb(0 0 0 / 10%); -moz-box-shadow: -10px 20px 40px rgb(0 0 0 / 10%); -ms-box-shadow: -10px 20px 40px rgb(0 0 0 / 10%);}
body.page .appservarrow .slick-arrow:hover { background-image: url('../images/arrow-slick-hover.svg'); background-color: #001233; box-shadow: 0 0 0 6px rgba(0, 18, 51, .1); }
body.page .header-nav li:hover .sub-menu { opacity:1; visibility:visible; z-index:999; }
body.page .sub-menu li a:hover { background-color: #001233; }
body.page .header-nav .sub-menu li.current-menu-item a { background:#001233; }
body.page .srv:hover .photo-bloc::after { width: 30%; }
body.page .srv a:hover { color: var(--red);}
body.page .srv a:hover::before { filter: invert(17%) sepia(81%) saturate(4520%) hue-rotate(7deg) brightness(91%) contrast(105%); right: 25px;}
body.page .single .art-heading a:hover,
body.page .actus-list .mdt-item h3 a:hover,
body.page .breadcrumbs a:hover { color: var(--red);}
body.page .mdt-item:hover .photo-bloc::after { width: 30%;}
body.page .mdt-item:hover .date-of-post,
body.page .art-small:hover .date-of-post { background-color: var(--red);}
body.page .mdt-item:hover h3 a { color: var(--red);}
body.page .pagination .wp-pagenavi a:hover { background-color: var(--blue); color: white; box-shadow: 0 0 0 5px rgb(0 18 51 / 30%);}
body.page .contact-infos .contacts .rs a:hover { color: white; box-shadow: 0 0 0 5px rgb(0 18 51 / 30%);}
body.page .wp-pagenavi .nextpostslink:hover,
body.page .wp-pagenavi .previouspostslink:hover { background-image: url('../images/arrow-slick-hover.svg')}
body.page .contact-infos .contacts a:hover { color: var(--red);}
body.page .lang-select a:hover { border-color: var(--red); color: var(--red);}
}
@media(max-width:1400px){
body.page .logo-menu, body.page .top-first { padding-left: 40px; padding-right: 40px; }
body.page .header-nav .menu>li>a { padding-right: 10px; }
}

@media(max-width: 1200px){
body.page .logo-menu { position: relative; padding-top: 20px; padding-bottom: 20px; }
body.page .top-first { position: relative; z-index: 100; }
body.page .custom-logo-link img { display: block; height: 40px; width: auto; }
body.page header .custom-logo-link { z-index: 105; }
body.page #menuMobile { width:80px; height:80px; background:#e21e27; display:inline-block; vertical-align:middle; cursor:pointer; position:absolute; right: 0; top: 0; z-index: 105; }
body.page #menuMobile div { width:30px; height:2px; background:#fff; position:absolute; right:50%; top:50%; margin:-1px -15px 0 0; transition: all ease-in-out 300ms; }
body.page #menuMobile div:before { width:100%; height:2px; background:#fff; position:absolute; right:0; top:8px; content:""; transition: all ease-in-out 300ms; }
body.page #menuMobile div:after { width:100%; height:2px; background:#fff; position:absolute; right:0; top:-8px; content:""; transition: all ease-in-out 300ms; }
body.page #menuMobile.active div { height:0; }
body.page #menuMobile.active div:before { top:0; transform:rotate(45deg);}
body.page #menuMobile.active div:after { top:0; transform:rotate(-45deg);}
body.page .header-nav { width:100vw; height:100vh; border-top:125px solid #fff; position:fixed; top:0; left: 0; overflow-y:scroll; z-index:90; transition:all ease-in-out 400ms; opacity: 0; visibility: hidden; background: #000000; padding-right: 0; }
body.page .header-nav::-webkit-scrollbar { display:none; }
body.page .header-nav .menu { width:100%; text-align:left; padding: 0 5vw; opacity:0; transition:opacity 400ms ease-in-out 400ms; margin-top: 50px; }
body.page .header-nav .menu li { width:100%; display:block; margin:0; }
body.page .header-nav .menu>li>a { line-height: 55px; height:auto; color:#fff; padding: 0; }
body.page .header-nav .menu li a:after, body.page .header-nav .menu li a:before { display: none; }
body.page .header-nav.active { opacity: 1; visibility: visible; }
body.page .header-nav.active .menu { opacity:1; transform:translateY(0); }
body.page .header-nav .menu li i { width:55px; height:55px; position:absolute; right:0; top:0; background: #001233; }
body.page .header-nav .menu li i:before { content: ''; position: absolute; width: 2px; height: 20px; background-color: #fff; top: 18px; left: 50%; margin-left: -1px; transition: opacity ease-in-out 300ms; } 
body.page .header-nav .menu li i:after { content: ''; position: absolute; width: 20px; height: 2px; background-color: #fff; left: 18px; top: 50%; margin-top: -1px; }
body.page .header-nav .menu li i.active::before { opacity:0; }
body.page .header-nav .menu .sub-menu { width:auto; visibility:visible; position:relative; left:auto; top:auto; padding:25px 0; margin:15px 0; opacity:1; background:#001233; display:none;}
body.page .header-nav .menu .sub-menu li a { font-size:16px; line-height:40px; background:none; text-align:left; height: initial; }
body.page .header-nav .menu .sub-menu li.current-menu-item a { background:none; color:#e21e27;}

body.page .list-partenaire { gap: 20px; }
body.page .list-partenaire .item { background-color: #fff; }
body.page .list-partenaire .item img { filter: grayscale(0); flex: 1; }
body.page .half.texte { gap: 40px; }
body.page .lang-select {
    right: 108px;
    top: 25px;
}
}
@media(max-width: 960px){	
body.page .partenaire, body.page .avis-client {padding-bottom: 180px;}
body.page .list-partenaire .item { height: auto}
body.page .list-partenaire .item img { width: 100%; flex: 1; height: auto; }
body.page #page .banner::after { width: 40%;}
body.page .cst-section { margin: 50px 0; }
body.page .phototexte .photo { padding-right: 40px; }
body.page .partenaire .d-grid { display: block; }
body.page .partenaire .left { padding: 0 0 20px; }
body.page .menu-footer { display: none; }
body.page h2 { margin-top: 0; }
body.page .icon-list { padding-left: 0;}
body.page #voir-egalement .photo-bloc {flex: 0 0 50%; margin-right: 25px;}
body.page #voir-egalement { padding-bottom: 204px; }
body.page .cl-33 { flex: 0 0 50%; max-width: 50%;}
body.page .single .breadcrumbs { margin-bottom: 40px;}
body.page .single-content .d-flex { display: block;}
body.page .single-content .left { padding-right: 0;}
body.page .single-content .sidebar { max-width: 100%;padding-top: 40px; }
body.page .sidebar .bandeau { max-width: 100%; padding: 30px 0 50px; }
body.page .single-content .sidebar .bandeau .btn { margin-top: 0; }
body.page .top-articles { margin-top: 0;padding-top: 40px;padding-bottom: 30px;}
body.page .single-content { padding-bottom: 0; }
body.page .art-small:last-of-type { border-bottom: none; }
body.page .related { padding-top: 50px; padding-bottom: 180px;}
body.page .related .actus-list { padding-top: 16px;}
body.page .related .media-text-layout { margin: 40px -20px 0; }
body.page .related .media-text-layout .media-text-item { padding: 20px;}

body.page .contact-page { padding: 54px 0 180px; }
body.page .contact-page .d-flex { display: block;}
body.page .contact-page h1 { text-align: center;}
/*.contact-page .wrapper { max-width: 620px;}*/
body.page .contact-page .cl-6 { max-width: 100%; padding-left: 0;}
body.page .contact-infos { margin-top: 35px;}
body.page .contact-infos .wrap { display: flex; max-width: 100%; flex-flow: row wrap;}
body.page .contact-infos .wrap .title { flex: 0 0 100%;}
body.page .contact-infos .contacts { padding-left: 0; padding-right: 40px; flex: 0 0 50%; max-width: 50%;}
body.page .contact-infos .map { margin-top: 0; box-shadow: 0 0 50px rgb(0 0 37 / 15%);flex: 0 0 50%; max-width: 50%}
body.page .contact-infos .map img { width: 100%; height: 100%; object-fit: cover; object-position: center;}

body.page .home .phototexte { align-items: normal;}
}
@media (max-width:800px) {
body.page .breadcrumbs { margin-bottom: 30px; }
body.page .banner .featured { margin-top: 40px; }
body.page .cst-pad-section { padding: 50px 0; }
body.page #page .banner { padding: 50px 0;}
body.page .cst-section { margin: 50px 0; }
	body.page .bg-grey.cst-section { padding: 50px 0 }
body.page h1,
body.page .entry-header h1,
body.page .contact-page h1 { font-size: 35px; line-height: 45px; }
body.page h2, body.page .title { font-size: 28px; line-height: 36px; padding-left: 0; }
body.page h2::before, body.page .title::before { top: initial; bottom: -20px; }
body.page h3, body.page .subtitle { font-size: 20px; line-height: 28px; }
body.page .banner .content h1::after { bottom: -20px; right: initial; left: 0; }
body.page .atout .item img { height: 60px; }
body.page .atout .subtitle strong, body.page .count { font-size: 40px; line-height: 55px; }
body.page .custom-photo .photo { position: relative; width: 100%; }
body.page .custom-photo .texte { width: 100%; padding: 30px 0; left: 0; }
body.page .custom-photo .texte .plus { margin-top: 0; }
body.page .custom-photo .photo::after { display: none; }
body.page .services { padding-top: 40px; }
body.page .services .left { margin-bottom: 5px; }
body.page .count { margin-bottom: 40px; }
body.page .count::after { margin-top: 20px; }
body.page .services .bg-bleu { background: linear-gradient(to bottom, #fff 0%, #fff 75px, #001233 75px, #001233 100%); padding-bottom: 40px; }
body.page .phototexte { display: block; margin: 50px 0; }
body.page .home .phototexte,
body.page .home .phototexte.reverse { display: block}
body.page .phototexte .photo { padding-right: 0; margin-bottom: 30px; }
body.page .phototexte .photo img { height: 400px; }
body.page .phototexte.reverse .photo { padding-left: 0; }
body.page .partenaire,
body.page .avis-client { padding-top: 40px; padding-bottom: 140px; }
body.page .half.texte { padding-bottom: 40px; }
body.page .carriere li { font-size: 16px; padding-left: 60px; }
body.page .slickavis .item { padding: 0; }
body.page .slickavis .item .card { padding: 40px !important; }
body.page .avis-client .title { margin-bottom: 30px; }
body.page .avis-client::before { width: 46px; height: 40px; border-radius: 0; margin: 0 auto 10px; background-color: transparent; }
body.page .top-first .left { display: grid; }
body.page .header-nav { border-top-width: 158px; }
body.page .bandeau { padding: 45px 0 50px; }
body.page .slickavis { height: inherit; }
body.page .appavisarrow { display: flex; flex-flow: row wrap; width: 114px;  margin: 30px auto; position: relative; z-index: 50; }
body.page .phototexte + .fulltext { margin-bottom: 50px; }
body.page .d-flex.media-text-layout { margin: 0 -20px 0; }
body.page .media-text-layout .media-text-item { padding: 0 25px; }
body.page .media-text-layout.h-direction .media-text-item { padding: 20px; }
body.page #child-area { padding-bottom: 200px }
body.page .photo-bloc { margin-bottom: 30px; }
body.page .pad-section { padding: 50px 0; }
body.page .single .featured-image { margin-top: 50px;}
body.page .related { padding-bottom: 180px;}
body.page .top-articles {padding-top: 35px;}
body.page .featured-image .photo-bloc img { min-height: 260px; object-fit: cover;}
body.page .contact-page { padding: 40px 0 180px; }
body.page .contact-page .d-flex { margin-top: 25px; }
body.page #child-area .d-flex.media-text-layout { margin: 20px -25px -10px; }
body.page #child-area .photo-bloc img { min-height: 320px;}
body.page main#homepage { padding-bottom: 160px;}
}
@media (max-width:700px) { 
body.page .footer-last { padding: 20px 0; }
body.page .footer-last .wrapper { display: block}
body.page .utile { display: block; margin-bottom: 30px; }
body.page .menu-last { padding: 10px 0 0; margin-left: -20px; }
}
@media (max-width:600px) {
body.page .list-partenaire { grid-template-columns: 1fr 1fr;}
body.page .wrapper { width: 85vw; }
body.page .banner .content { padding: 50px 0; background-color: rgba(0,0,0,.5); }
body.page #homepage .banner .before-title, body.page #homepage .banner h1 { color: #fff; }
body.page .banner .btn { margin-top: 60px; }
body.page .banner::after { display: none; }
body.page .atout { margin: 50px 0; }
body.page .half.texte { display: block; }
body.page .carriere { margin-top: 30px; }
body.page .slickavis .item .card { padding-left: 20px; padding-right: 20px; }
body.page footer .wrapper { max-width: 320px; }
body.page footer .bloc-left { margin: 0 ; }
body.page footer .rs { justify-content: flex-start; text-align: left; }
body.page footer .rs .subtitle { margin-bottom: 10px; }
body.page .rs .facebook { margin-left: 0; }
body.page .menu-last { padding:10px 0 0; margin-left:0; justify-content: center;}
body.page .menu-last li { padding: 0 10px; }
body.page .menu-last li:first-child { padding-left: 0; }
body.page .menu-last li:last-child { padding-right: 0; }
body.page .menu-last li a { font-size: 13px; }
body.page .slickavis .item .card { padding: 30px 20px 50px !important; }
body.page .header-nav .sub-menu li a { padding: 0 20px; }
body.page .logo-menu, body.page .top-first { padding-left: 20px; padding-right: 20px; }

body.page #page .banner::after { width: 80%;}
body.page .media-text-layout.h-direction .mdt-item { display: block; }
body.page #voir-egalement .photo-bloc { flex: 0 0 50%; margin-right: 0; margin-bottom: 24px; max-width: inherit;}
body.page #voir-egalement,
body.page #child-area { padding-bottom: 180px; text-align: left;}
body.page #child-area .d-flex.media-text-layout { margin: 20px 0 -10px;}
body.page #page.page-nv3 .banner .featured { margin-top: 40px; }
body.page .d-flex.media-text-layout { display: block; margin: 25px 0 0;}
body.page .related .media-text-layout { margin-top: 40px;}
body.page .cl-6 { max-width: 100%; flex: 0 0 100% }
body.page .media-text-layout .media-text-item { padding: 0; margin-bottom: 30px; }
body.page .media-text-layout.h-direction .media-text-item { padding: 0;margin-bottom: 25px;}
body.page .actus-list .media-text-layout .media-text-item { margin-bottom: 50px;}
body.page .related .media-text-layout .media-text-item { padding: 0;}
body.page .media-text-layout .media-text-item:last-of-type { margin-bottom: 0 }
body.page .mdt-item .photo-bloc { margin-bottom: 26px;}
body.page #subsrv .d-flex { display: block; }
body.page #subsrv .appservarrow { text-align: left;}
body.page #page .banner { text-align: left; }
body.page #page .banner h1 {font-size: 35px;}
body.page .icon-list li::before { top: 4px;}
body.page .cl-33 { flex: 0 0 100%; max-width: 100%;}
body.page .texte > ul:not(.icon-list) { padding-left: 20px;}
body.page #page .banner h1 + * { margin-top: 14px; }
body.page .breadcrumbs { margin-bottom: 14px; }
body.page .banner .featured {margin-top: 30px;}
body.page .cst-section { margin: 35px 0; }
	body.page .bg-grey.cst-section { padding:35px 0 }
body.page .cst-pad-section { padding: 35px 0;}
body.page .pad-section { padding: 35px 0; }
body.page .actus-list { margin-top: 50px;}
body.page .contact-page h1 { text-align: left;}
body.page .form-footer {padding: 0;}
body.page .form-contact form { padding: 25px; }
body.page .contact-infos .wrap { display: block;}
body.page .contact-page .cl-6 { display: block;}
body.page .contact-infos .contacts { padding-right: 0; max-width: 100%;}
body.page .contact-infos .map { max-width: 100%; margin-top: 35px;}
body.page .related { padding-bottom: 180px; }
body.page .contact-infos .contacts .adresse { padding-left: 30px; background: url(../images/localisation-dark.svg) no-repeat top 5px left; padding-top: 0; }
body.page .contact-infos .contacts .tel { background: url(../images/phone-dark.svg) no-repeat top 5px left; padding-top: 0; padding-left: 30px; }
body.page .contact-infos .contacts .email { background: url(../images/email-dark.svg) no-repeat top 7px left; padding-top: 0; padding-left: 30px; }
body.page .contact-infos .contacts .rs { margin-top: 35px; }
body.page .no-subservices + .bandeau { padding-bottom: 180px;}
body.page .atout { display: block; margin: 30px 0; }
body.page .atout .item { display: grid; grid-template-columns: 50px 1fr; gap: 20px; align-items: center; text-align: left; padding: 20px 0; }
body.page .atout .item:nth-child(2)::before { width: 100%; height: 1px; top: 0; }
body.page .atout .item:nth-child(2)::after { width: 100%; height: 1px; bottom: 0; }
body.page .atout .subtitle strong { font-size: 25px; line-height: 25px; }
body.page .atout .item img { margin-bottom: 0; }	
body.page .appservarrow { position: absolute; bottom: -40px; right: 0; z-index: 50; }
	body.page .bg-grey.cst-section .appservarrow { position: static }
body.page .appservarrow .slick-arrow, body.page .appavisarrow .slick-arrow { width: 30px; height: 30px; }
body.page .appservarrow .slick-prev, body.page .appavisarrow .slick-arrow { margin-right: 10px; }
body.page .bank-layout { display: block}
body.page .bank-layout .bank-logo { display: block; padding: 8px 0; margin-right: 0; min-width: inherit; margin-bottom: 30px; }
}
@media (max-width:480px){
body.page #page .banner h1,
body.page h1,
body.page .contact-page h1 { font-size: 28px; line-height: normal; }
body.page h2, body.page .title {font-size: 22px; line-height: 30px;}
body.page h3, body.page .subtitle { font-size: 18px; line-height: 26px; }
body.page .before-title { font-size: 14px; line-height: 20px;}
/* mobile typographie */
body.page .btn.fullwidth { margin-top: 0; padding: 13px 20px 11px; }
body.page .btn.fullwidth span { padding: 0; }
body.page .btn.fullwidth span::after { display: none; }
body.page .list-partenaire { grid-template-columns: 1fr 1fr; }
body.page .top-first .right { display: none; }
body.page .bandeau h2 { font-size: 22px; line-height: 30px; }
body.page .appavisarrow { width: 80px; }
body.page .form-footer .btn { padding: 20px 18px; font-size: 12px; width: 100%; margin-top: 10px; }
body.page .form-footer .btn span { padding-right: 35px;}
body.page .partenaire .left { padding: 0; }
body.page #page .banner { padding: 50px 0 40px; }
body.page .phototexte + .fulltext { margin-bottom: 45px; }
}
