/* Theme Name: Lithium Marketing */

:root{
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    color: #4E4E4E;
    line-height: 1.4;
}
.barlow{
    font-family: 'Barlow Condensed', sans-serif;
}
.text-center{text-align: center}
a{
    font-weight: bold;
    color: #133678;
}
img{
    max-width: 100%;
}
.d-f-center{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.prelative{position: relative}
.container{
    max-width: 1500px;
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
.container-xxl{
    padding-left: 0;
    padding-right: 0;
    max-width: 1920px;
}
.container-smaller{
    max-width: 1350px;
}
.grid-header{
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 2rem;
}
#header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 141px;
    background-color: #eee;
    display: flex;
    align-items: center;
    z-index: 999;
    transition: height .3s;
}
.admin-bar #header{
    top: 32px;
}
.is-sticky-mode #header {
    height: 85px;
}
#main-content{
    margin-top: 141px;
}
.box-logo{
    position: relative;
}
.box-logo img{
    position: absolute;
    top: -22px;
    width: 100%;
    transition: all .3s;
}
.is-sticky-mode .box-logo img {
    top: 0;
    width: 160px;
}
.header-right{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-right .lm-l{
    flex-grow: 1;
    display: flex;
    justify-content: center;
}
.header-right .lm-l span{
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 13px;
    font-weight: 700;
}
.header-right .lm-r,
.header-coord{
    display: flex;
    align-items: center;
    gap: 1rem;
}
.header-coord{
    gap: .4rem;
}
#header .tel{
    color: #2B2C2D;
    text-decoration: none;
    font-size: 1.2rem;
    margin-right: .6rem;
}
.header-coord{
    list-style: none;
}
.header-coord .lm-circ,
.row-infos .lm-circ{
    background-color: #fff;
    border-radius: 50%;
    width: 38px;
    height: 38px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.header-coord .lm-circ svg,
.row-infos .lm-circ svg{
    height: 18px;
    fill: #4E4E4E;
}
.btn,
.gform_button,
body .btn-postuler{
    display: inline-block;
    text-align: center;
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    text-decoration: none;
    font-family: 'Barlow Condensed', sans-serif;
    color: #fff;
    padding: .7rem 1.8rem;
    font-weight: 400;
    font-size: 1.4rem;
    background-color: #133678;
    transition: all .3s;
}
.btn:hover,
.gform_button:hover,
body .btn-postuler:hover{
    color: #fff;
    background-color: #707070;
    border: none;
}
.lm-tabs{
    text-decoration: none;
}
.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
    margin: 0;
    padding: 10px 0;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity,filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
    z-index: 99999999;
    position: relative;
}
.hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner:after,.hamburger.is-active .hamburger-inner:before {
    background-color: #fff
}
.hamburger-box {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 10px;
}
.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px
}
.hamburger-inner,.hamburger-inner:after,.hamburger-inner:before {
    position: absolute;
    width: 30px;
    height: 3px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    border-radius: 4px;
    background-color: #4E4E4E
}
.hamburger-inner:after,.hamburger-inner:before {
    display: block;
    content: ""
}
.hamburger-inner:before {
    top: -8px
}
.hamburger-inner:after {
    bottom: -8px
}
.hamburger--squeeze .hamburger-inner {
    transition-timing-function: cubic-bezier(.55,.055,.675,.19);
    transition-duration: 75ms
}
.hamburger--squeeze .hamburger-inner:before {
    transition: top 75ms ease .12s,opacity 75ms ease
}
.hamburger--squeeze .hamburger-inner:after {
    transition: bottom 75ms ease .12s,transform 75ms cubic-bezier(.55,.055,.675,.19)
}
.hamburger--squeeze.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: rotate(45deg)
}
.hamburger--squeeze.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease,opacity 75ms ease .12s;
    opacity: 0
}
.hamburger--squeeze.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;
    transform: rotate(-90deg)
}
.menu-principal{
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    gap: 5rem;
    padding-top: 26vh;
    margin-top: 0;
    background-color: #4E4E4E;
    overflow: auto;
    transform: translateX(100vw);
    transition: transform .4s;
    box-sizing: border-box;
    z-index: 999;
}
.menu-principal.openned{
    transform: translateX(0);
}
.menu-principal a{
    display: inline-block;
    font-size: 2.1rem;
    font-weight: 500;
    line-height: 1.3;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    position: relative;
    left: 0;
    transition: left .3s;
}
.menu-principal a:hover{
    left: 5px;
    color: #878787;
}
.menu-principal ul{
    list-style: none;
    padding-left: 0;
    margin: 0;
}
.row-infos a:hover{
    left: 0;
}
.service-title {
    font-size: 1.4rem;
    letter-spacing: 13px;
    color: #FECA41;
    text-transform: uppercase;
    display: block;
    margin-bottom: .5rem;
}
.menu-left{
    padding-top: 2.6rem;
}
.home-banner{
    height: calc(100vh - 141px);
    min-height: 700px;
}
.admin-bar .home-banner{
    height: calc(100vh - 141px - 32px);
}
.home-banner .contenu {
    max-width: 460px;
    width: 100%;
    padding-bottom: 4rem;
}
.home-banner img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
    z-index: -1;
}
.home-banner .container{
    height: 100%;
    display: flex;
    align-items: center;
}
.home-banner h1{
    font-size: 5.5rem;
    line-height: .9;
    color: #133678;
    margin-top: 0;
    margin-bottom: 4.5rem;
}
.home-intro{
    background-color: #4E4E4E;
    color: #9A9994;
    padding: 6rem 0 8rem;
}
.title1{
    font-size: 3.2rem;
    margin: 0;
    line-height: 1.4;
}
.home-intro .title1{
    color: #FECA41;
}
.grid-intro{
    display: grid;
    grid-template-columns: 450px 1fr;
    gap: 3rem;
}
.grid-intro .contenu{
    font-size: 2.6rem;
    line-height: 1.2;
}
.grid-intro .contenu > *{
    margin: 0;
}
.intro-btn{
    margin-top: 2rem !important;
}
.outlined-title{
    font-size: 9rem;
    -webkit-text-stroke: 2px #4E4E4E;
    -webkit-text-fill-color: #fff;
    text-transform: uppercase;
    margin: 2rem;
    line-height: 1.3;
    opacity: 0;
}
.ssm-title{
    font-size: 1.6rem;
    letter-spacing: 12px;
    text-transform: uppercase;
}
.home-services{
    overflow: hidden;
    padding-top: 7rem;
}
.grid-s-single{
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.grid-s-single .contenu{
    padding: 6rem;
}
.grid-s-single img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.btn-arrow svg{
    height: 40px;
    position: relative;
    left: 0;
    transition: left .3s;
}
.btn-arrow:hover svg{
    left: 5px;
}
.limit-contenu{
    width: 100%;
    max-width: 450px;
}
.grid-s-single .img-box{
    height: 590px;
    position: relative;
}
.grid-s-single:nth-child(even) .img-box{
    top: -4rem;
}
.grid-s-single:nth-child(odd) .img-box{
    order: 2;
}
.grid-s-single:nth-child(odd) .limit-contenu {
    margin-left: auto;
}
.grid-s-single h3{
    line-height: 1.1;
    margin-bottom: 1.5rem;
}
.grid-s-single .lm-excerpt{
    margin-bottom: 1rem;
}
.home-services-list{
    padding-top: 2rem;
}
.home-realisations .container{
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.home-realisations img{
    display: block;
    width: 100%;
}
.home-realisations .flex-btn-txt{
    display: flex;
    gap: 4rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
}
.home-realisations .flex-btn-txt h3{
    font-size: 3.3rem;
    line-height: 1;
    margin: 0;
}
.home-realisations .flex-btn-txt .ze-btn{
    flex-shrink: 0;
}
.lm-cta-block{
    display: grid;
    grid-template-columns: 1fr 405px;
    gap: 3rem;
    padding-top: 8rem;
    padding-bottom: 5rem;
}
.lm-cta-block .imgs .img-1{
    position: absolute;
    top: -4rem;
    right: 0;
    width: 430px;
    height: 430px;
    object-fit: cover;
    border-radius: 50%;
}
.lm-cta-block .imgs .img-2{
    position: relative;
    z-index: 1;
    display: block;
    margin-left: auto;
    padding-right: 4rem;
    padding-top: 6rem;
}
.cta-accueil.lm-cta-block .imgs .img-2,
.cta-home.lm-cta-block .imgs .img-2{
    padding-right: 0;
    padding-top: 0;
}
.lm-cta-block h2,
.marques h2{
    font-size: 2.8rem;
    line-height: 1;
}
.marques{
    background-color: #eee;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.marques .container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4rem;
}
.galerie-marques{
    display: flex;
    align-items: center;
    gap: 3rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
}
#footer,
#footer a{
    color: #fff;
    fill: #fff;
    text-decoration: none;
}
#footer .top-part{
    background-color: #133678;
    padding: 4rem 0;
}
#footer .bottom-part{
    background-color: #4E4E4E;
    padding: 4rem 0;
}
#footer .copyright{
    background-color: #3C3C3C;
}
.footer-contact-txt{
    font-size: 3.5rem;
    font-weight: 900;
}
.footer-contact,
.top-part .container{
    gap: 1.5rem;
}
.footer-email{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #fff;
}
.footer-contact svg{
    height: 36px;
    margin: auto;
}
.footer-tel{
    font-size: 3rem;
    text-decoration: none;
    color: #fff;
}
.footer-heures{
    font-size: 1.2rem;
    font-weight: 700;
}
.bottom-part .contenu{
    display: grid;
    grid-template-columns: 250px 1fr 200px 230px 70px;
    gap: 2rem;
    padding-bottom: 2rem;
}
.bottom-part address{
    text-transform: uppercase;
}
#back-to-top{
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    background-color: #4E4E4E;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: none;
}
#back-to-top svg{
    height: 25px;
    margin-left: 14px;
    margin-top: 10px;
}
.copyright{
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: .9rem;
}
.copyright,
#footer .copyright a{
    color: #8B8B8B;
    font-weight: 500;
}
.copyright a{
    margin-left: 2rem;
}
.copyright svg{
    height: 22px;
    position: relative;
    top: 4px;
}
.menu-footer ul{
    padding-left: 0;
    text-transform: uppercase;
    font-weight: 600;
    font-size: .9rem;
}
address{
    font-style: initial;
}
.row-infos{
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-top: 1rem;
}
#header .row-infos .tel{
    font-size: 1.5rem;
    color: #fff;
}
.intro-page{
    padding-top: 7rem;
}
.intro-page .container{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}
.intro-page .lm-right img{
    width: 100%;
    display: block;
}
.intro-page h1{
    font-size: 4.5rem;
    line-height: 1.1;
    color: #133678;
    margin-top: 0;
}
.half-cont {
    width: calc(750px - 3rem);
    margin-left: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    box-sizing: border-box;
}
.contenu-img-txt h2{
    font-size: 3rem;
    line-height: 1.1;
}
.photo-equipe img{
    width: 100%;
    padding-top: 7rem;
}
.cit-invert .lm-left{
    order: 2;
}
.cit-invert .half-cont {
    margin-left: initial;
}
.contenu-img-txt .contenu{
    font-size: 1.1rem;
}
.two-line-writing span{
    display: block;
    line-height: .8;
    margin: 0;
}
.two-line-writing span:last-child{
    text-align: right;
}
.big-two-line{
    padding-top: 5rem;
}
.gros-tagline{
    text-align: center;
    margin-top: 7rem;
}
.gros-tagline h2{
    margin: 0;
}

.two-cols-ul{
    column-count: 2;
    column-gap: 1rem;
    list-style: none;
    padding-left: 0;
    text-transform: uppercase;
    color: #133678;
    font-weight: 600;
}
.service-galerie{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    margin-bottom: 4rem;
}
.service-galerie img{
    width: calc((100% / 3) - (4rem / 3));
    height: 100%;
    object-fit: contain;
    object-position: center;
}
.grid-real{
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    padding-bottom: 7rem;
}
.grid-realisations{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
.grid-realisations img{
    width: 100%;
    height: 500px;
    object-fit: cover;
}
#js-grid-mosaic-projects{
    width: 100%;
}
.cbpFilters-container{
    max-width: 1200px;
    margin: auto;
}
.cbpFilters-container a{
    text-decoration: none;
    color: #4E4E4E;
    font-weight: 500;
}
.cbpFilters-container a.cbp-filter-item-active{
    color: #1D3674;
    font-weight: 700;
}
.cbpFilters-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px 2rem;
}
.lm-filtres{
    padding-bottom: 4rem;
}
.realisation-intro h1,
.realisation-intro h2{
    margin: 0;
    line-height: 1;
}
.realisation-intro{
    padding-bottom: 3rem;
}
.lames-fond-gris{
    background-color: #4E4E4E;
    color: #fff;
    padding: 6rem 0;
}
.service-template-template-service-deneigement .gros-tagline{
    margin-top: 0;
    margin-bottom: 3rem;
}
.lames-fond-gris .lame{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    padding: 4rem 0;
}
.lames-fond-gris .lame:not(:last-child){
    border-bottom: 3px dashed #FECA41;
}
.btn-lames-wrapper{
    display: flex;
    align-items: center;
    justify-content: center;
}
.lames-fond-gris h2{
    font-size: 3rem;
    color: #FECA41;
    text-transform: uppercase;
    margin: 0 0 1rem;
}
.souffleur{
    background-color: #133678;
    color: #fff;
    padding: 5rem 0;
}
.icone-souffleur{
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 2rem;
    align-items: center;
    fill: #fff;
}
.icone-souffleur h2{
    font-size: 3rem;
    line-height: 1;
    margin: 0;
}
.souffleur .intro-page h2{
    color: #FECA41;
    text-transform: uppercase;
}
.deneigement-btn-fin{
    padding: 4rem 0 6rem;
}
.grid-contact{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}
.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
    font-size: 1rem !important;
}
.infos-coord > div,
.infos-coord > address{
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: .5rem;
}
.infos-coord svg{
    width: 20px;
    fill: #4E4E4E;
}
.infos-coord iframe{
    width: 100%;
    margin-top: 2rem;
}
.infos-coord a{
    text-decoration: none;
}
.intro-page{
    overflow: hidden;
}
.wpml-ls-legacy-list-horizontal {
    border: none;
    padding: 0;
}
.wpml-ls-legacy-list-horizontal a{
    font-size: 1.3rem;
}
.is-anchor{
    position: relative;
    top: -100px;
}
.anchornav ul{
    list-style: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .5rem;
}