@charset "UTF-8";

@font-face {
    font-family: 'open_sanssemibold_italic';
    src: url('../design/font/opensans-semibolditalic-webfont.woff2') format('woff2'),
        url('../design/font/opensans-semibolditalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sansbold';
    src: url('../design/font/opensans-bold-webfont.woff2') format('woff2'),
        url('../design/font/opensans-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sansregular';
    src: url('../design/font/opensans-regular-webfont.woff2') format('woff2'),
        url('../design/font/opensans-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

body{
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    color:#000;
    background: #fff;
}


a{
    text-decoration:none;  
    color:#d9507e;
}

a:hover{
    color:#d9507e;
    text-decoration:underline;  
}

.floatLeft{
    float:left;
}

.clear{
    clear:both;
    margin:0;
    padding:0;
    border:none;
}

.text-italic{
    font-style: italic;
}

.citation{
    font-size: 20px;
    text-align: center;
    font-style: italic;
    color:#d9507e;
}

.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

h1,h2{
    font-size: 26px;
    font-weight:bold;
    margin-bottom: 40px;
}

h3{
    font-size: 22px;
    font-weight:bold;
    margin-top: 55px;
    margin-bottom: 30px;
}

.astuce{
    margin:auto;
    padding: 15px 10px;
    font-style:italic;
    text-align:center;
}

/** En-tete **/

#header{
    position:relative;
    padding:0;
}

#slogan{
    margin:0;
    padding: 8px 0;
    font-weight: bold;
    font-size:19px;
    text-align: center;
    color:#d9507e;
    text-transform: uppercase;
}

#parpro{
    display:none;
}

#logo{
    height: 95px;
    margin:auto;
    margin-bottom: 0px;
    background:url(../design/logo-lepageGranite-150.png) no-repeat center,
        url(../design/fondOpacite-mobile.png) center no-repeat,
        url(../design/bandeauMarbre-mobile.jpg) center 0px no-repeat; 

}

#adresseTel{
    position:relative;
    margin-top: 10px;
    margin-bottom: 19px;
    font-size: 13px;
    font-weight:bold;
    text-align:center;
}

/* Menu*/
#menu{
    margin:15px;
    border-bottom: solid #d9507e 1px;
}

#menu .navbar-brand{
    font-size:20px;
}

#menu .navbar{
    margin-bottom:0;
}

#menu a{
    text-decoration: none;
    color:#000;
    font-size: 18px;
    font-weight:bold;
}

#menu a:focus, #menu a:hover{
    color:#d9507e;
    background:none;
}

#menu .open>a,#menu  .open>a:focus, #menu  .open>a:hover{
    color:#d9507e;
    background:none;
}

#menu .navbar-toggle{
    background:#d9507e;
}

#menu .icon-bar{
    background:#fff;
}

#lienBoutique{
    padding:1px 4px;
    color: #fff;
    background: #d9507e;
    border-radius: 10px;
}

#adresseTel #tel{
    color:#d9507e;
}

#partpro{
    visibility: hidden;
    width:5px;
}

#footer{
    margin-top:20px;
    text-align:right;
    color:#000;
    font-size:11px;
    line-height:13px;
}

#footer a{
    color:#000;
}

#footer span{
    /* display:inline-block; */
    /* vertical-align:middle; */
}


#cookie-banner{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:5px;
    background:#fff;
    box-shadow:0 1px 10px #000;
    z-index:100;
}

#listeActu{
    margin-top: 30px;
}

#listeActu .thumbnail{
    background:#d9507e;
}



#listeActu p,
#listeActu h3,
#listeActu a{
    color:#fff;
}

/** galerie photo **/
.mosaiqueBlocPhoto{
    position:relative;
    display:inline-block;
    width: 260px;
    height: 160px;
    cursor: pointer;
    margin: 10px;
}

.mosaiqueBlocPhoto .titreMateriau{
    position:absolute;
    bottom:0px;
    width: 100%;
    max-height:50px;
    padding:5px;
    margin:0;
    color:#fff;
    /* background: rgba(217, 80, 126,0.8);*/
    background: rgba(0, 0, 0,0.5);
}

.blocMateriauResum{
    position:relative;
    max-width:350px;
    margin: auto;
    padding:0px 20px 10px 0;
    color:#fff;
    font-size:15px;
    background:#d9507e;
    -webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

.blocMateriauResum h3{
    margin-top:15px;
    margin-bottom:20px;
}


.blocMateriauResum:before, .blocMateriauResum:after
{
    content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:10px;
    bottom:10px;
    left:0;
    right:0;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}

.blocMateriauResum:after
{
    right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
    -moz-transform:skew(8deg) rotate(3deg);
    -ms-transform:skew(8deg) rotate(3deg);
    -o-transform:skew(8deg) rotate(3deg);
    transform:skew(8deg) rotate(3deg);
}

.listeFournisseur{
    margin:20px 0;
}

#contenu>h1,#contenu>h2{
    text-transform: uppercase;
    margin-top:0;
}

/** gestion du scrollTop **/
.scroll-top-wrapper {
    position: fixed;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    text-align: center;
    z-index: 99999999;
    background-color: #777777;
    color: #eeeeee;
    width: 50px;
    height: 48px;
    font-size:25px;
    line-height: 45px;
    right: 30px;
    bottom: 30px;
    padding-top: 2px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.scroll-top-wrapper:hover {
    background-color: #888888;
}
.scroll-top-wrapper.show {
    visibility:visible;
    cursor:pointer;
    opacity: 1.0;
}
.scroll-top-wrapper i {
    line-height: inherit;
}


h4 {
    margin: 20px 10px 10px;
}
p {
    margin: 10px;
}


#carousel-realisation {
    width: 300px;
    margin:auto;
}

#carousel-realisation .item{
    width:300px;
    height:188px;
    background-size: cover;
}

#vignietteRealisation {
    margin: 10px auto;
    padding:0;
    overflow: auto;
    position: static;
    text-align: left;
    white-space: nowrap;
}

#vignietteRealisation li {
    background-color: transparent;
    -webkit-border-radius: 0;
    border-radius: 0;
    display: inline-block;
    height: auto;
    margin: 0 !important;
    width: auto;
}
#vignietteRealisation li img {
    display: block;
    opacity: 0.5;
}
#vignietteRealisation li.active img {
    opacity: 1;
}
#vignietteRealisation li:hover img {
    opacity: 0.75;
}


#carousel-realisation .carousel-caption{
    width:100%;
    left:0;
    bottom:0;
    padding:0;
    background:rgba(0,0,0,0.5);
}


.imgEnteteRea{
    margin-bottom: 20px;
}


#colFleche{
    padding-bottom:80px;
}

#colFleche h3{
    margin-top: 0;
    padding-left: 10px;
}

#colFleche .row+.row{
    margin-top: 100px;
}

#introAccueil{
    margin-top:10px;
    margin-bottom:25px;
    font-size:1.8em;
    line-height: 1.4em;
    font-style:italic;
}

.actu{
    position:relative;
    /* margin-top:40px; */
    color:#fff;
    font-size:15px;
    background:#d9507e;
    -webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

.actu h3, .actu p{
    margin:0;
    color:#fff;
}

.actu a{
    color:#fff;
}

.actu:before, .actu:after
{
    content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:10px;
    bottom:10px;
    left:0;
    right:0;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}

.actu:after
{
    right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
    -moz-transform:skew(8deg) rotate(3deg);
    -ms-transform:skew(8deg) rotate(3deg);
    -o-transform:skew(8deg) rotate(3deg);
    transform:skew(8deg) rotate(3deg);
}

.actuBlocImg{
    width:100%;
    height:150px;
}

#blocGalPresentation{
    float:right;
    margin: 0 0 20px 20px;
}

#mosaiquePhoto{
    text-align:center;
}

.imgEtape {
    margin:auto;
}

@media(max-width: 765px){

    #menu li:before{
        position:absolute;
        top:13px;
        font-size:20px;
        font-weight:bold;
        color:#d9507e;
    }
}

.adressePiedPage{
    font-size:13px;
    font-weight:bold;
}

#cboxTitle{
    color:#d9507e;
    font-size:20px;
    line-height:18px;
}

#contactBlocRose{
    position:relative;
    width:100%;
    max-width:380px;
    margin:auto;
    background:#d9507e;
    margin-bottom:30px;
    padding:20px;
    color:#fff;
    font-size:17px;
    background:#d9507e;
    -webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

#contactBlocRose strong{
    font-weight:bold;
}

#contactBlocRose p,#contactBlocRose address{
    padding:0;
    margin:0;
    margin-bottom:10px;
}

#contactBlocRose a{
    color:#fff;
}

#contactBlocRose:before, #contactBlocRose:after
{
    content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:10px;
    bottom:10px;
    left:0;
    right:0;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}

#contactBlocRose:after
{
    right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
    -moz-transform:skew(8deg) rotate(3deg);
    -ms-transform:skew(8deg) rotate(3deg);
    -o-transform:skew(8deg) rotate(3deg);
    transform:skew(8deg) rotate(3deg);
}

#contactPlan{
    width:100%;
    max-width:380px;
    margin:auto;
    /* margin-top:75px */
}

/**Boutique**/
#enteteBoutique{
    margin-bottom:10px;
}

#lienPanier{
    position:relative;
}

#lienPanier .glyphicon{
    font-size:25px;
}

#lienPanier .badge{
    position:absolute;
    top:-15px;
    left:15px;
    background:#d9507e;
}

.boutiqueListe{
    display:flex;
    flex-wrap:wrap;
    /* justify-content:space-between; */
}

.mosaiqueBlocProduit{
    position:relative;
    width:260px;
    margin:10px;
    margin-bottom: 30px;
    padding:10px;
    padding-bottom: 15px;
    /* border:1px solid #d9507e; */
}

.mosaiqueBlocProduit .imageProduit{
    position:relative;
    height:140px;
    padding:5px;
    text-align:center;
    overflow:hidden;
    background:#fff;
    border:solid 1px #ddd;
}

.mosaiqueBlocProduit h3{
    margin:10px 0;
    font-size:16px;
}

.mosaiqueBlocProduit h3>a{
    color:#000;
}

.mosaiqueBlocProduit:hover h3>a{
    color:#fff;
    text-decoration: none;
}

.mosaiqueBlocProduit-body {
    height: 240px;
    overflow:hidden;
    cursor: pointer;
}

.mosaiqueBlocProduit .prix{
    margin-top:10px;
    text-align:right;
    font-weight:bold;
}

.mosaiqueBlocProduit .btFicheProduit{
    height:30px;
    width:30px;
    padding:0;
    border-radius:30px;
}

.mosaiqueBlocProduit .ajPanier{
    position:absolute;
    left:50%;
    bottom:-16px;
    margin-left:-77px;
}

.ficheProduit-titre{
    margin-top:0px;
    padding-top:0px;
}

.ficheProduit-blocFichier h3{
    font-size:16px;
    margin-top:25px;
    margin-bottom: 10px;
}

.ficheProduit-blocFichier ul{
    color:#d9507e;
}

.ficheProduit-blocImage{
    border:solid 1px #ddd;
}

#ficheProduit-blocPanier{
    margin-top:20px;
}

.ficheProduit-lienRetour{
    font-size:12px;
}

.btDefaut{
    color:#fff;
    background: #4a4c53;
}

.lignePanier{
    padding:10px;
    border-bottom:1px solid #ccc;
}

input:read-only{
    border:none;
}

#ligneSousTotal{
    padding:10px;
    font-weight:bold;
    font-size: 16px;
}

.btSupProduit{
    border:none;
    background:none;  
}

#footerBoutique{
    margin-top:50px;
    margin-bottom:20px;
}

#modeLivraison{
    margin-top: 30px;
}

#modeRetrait{
    display: none;
    margin-top: 30px;
}

#modeRetrait address{
    padding-left:10px;
}

.row h4{
    margin-left:0;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 750px) {
    .container{
        width:95%;
    }

    #fondHeader{
        position:absolute;
        top: 31px;
        width:100%;
        height: 140px;
        background: url(../design/fondOpacite.png) center no-repeat,
            url(../design/fondMarbre.jpg) center;
        z-index:-1;
    }

    #header{
        margin-bottom:40px;
        /* background: url(../design/fondMarbreHeader-140.jpg) center 45px no-repeat; */
    }

    #slogan{
        margin-bottom:15px;
    }

    #espaceSlogan{
        display:inline-block;
        width: 105px;
    }

    #logo{
        width: 250px;
        height: 156px;
        margin:auto;
        margin-top: -45px;
        background: url(../design/logo-lepageGranite-250.png) no-repeat;
    }

    .navbar-brand{
        display:none;
    }

    #menu {
        margin: 5px 0;
    }

    #menuPrincipal{
        text-align:center
    }

    #menuPrincipal li{
        float:none;
        display:inline-block
    }

    #menuPrincipal>li+li:before{
        position:absolute;
        top: 8px;
        left:-5px;
        content:url(../design/puce.png);
        font-size:20px;
        font-weight:bold;
        color:#d9507e;
    }

    .blocMateriauResum{
        padding:0px 20px 10px 0;
        margin:0 0 40px 40px;

    }   

    #adresseTel p{
        font-size: 15px;
    }

    .imageActuDetails{
        float:left;
        margin-right:20px;
    }


    #colFleche{
        background: url(../design/fleche.png) no-repeat 17% bottom;
    }


    #carousel-realisation {
        width: 700px;
        margin:auto;
    }

    #carousel-realisation .item{
        width:700px;
        height:440px;
        background-size: cover;
    }

}

/** Responsive min Tablette **/
@media (min-width: 992px){
    .container-fluid{
        padding:0;
    }
    #fondHeader{
        position:fixed;
        top: 30px;
        width:100%;
        height: 140px;
        background: url(../design/bandeauMarbre.jpg) center;
    }

    #fixeEntete{
        position:fixed;
        width:100%;
        z-index: 20;
        background: #fff;
    }

    #header{
        margin-bottom:0px;
        background: url(../design/fondOpacite.png) center 30px no-repeat;
        background-size: auto 140px;
    }

    #baniere{
        height: 165px;
    }

    #slogan{
        margin-top: 0px;
        /* margin-left:12px; */
        font-weight: bold;
        font-size: 14px;
        text-align: center;
        color:#d9507e;
        text-transform: uppercase;
        letter-spacing: 7px;
    }

    #espaceSlogan{
        width: 100px;
    }

    #logo{
        width: 250px;
        height: 155px;
        margin:auto;
        margin-top: -46px;
        /* background: url(../design/logo-lepageGranite-250.png) no-repeat; */
    }

    #parpro{
        position:absolute;
        display: block;
        top: 60px;
        left: 0;
        width: 190px;
        height: 85px;
        padding-top: 7px;
        font-size: 17px;
        font-weight:bold;
        line-height: 23px;
        -ms-transform: rotate(-6deg);/* IE 9 */
        -webkit-transform: rotate(-6deg);/* Chrome, Safari, Opera */
        transform: rotate(-4deg);
        background: #960a37;/* Old browsers */
        background:-moz-linear-gradient(45deg,  #960a37 0%, #e85284 100%);/* FF3.6+ */
        background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#960a37), color-stop(100%,#e85284));/* Chrome,Safari4+ */
        background:-webkit-linear-gradient(45deg,  #960a37 0%,#e85284 100%);/* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(45deg,  #960a37 0%,#e85284 100%);/* Opera 11.10+ */
        background:-ms-linear-gradient(45deg,  #960a37 0%,#e85284 100%);/* IE10+ */
        background: linear-gradient(45deg,  #960a37 0%,#e85284 100%);/* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#960a37', endColorstr='#e85284',GradientType=1 );/* IE6-9 fallback on horizontal gradient */
        -webkit-box-shadow: 4px 4px 5px 0px rgba(50, 50, 50, 0.4);
        -moz-box-shadow:    4px 4px 5px 0px rgba(50, 50, 50, 0.4);
        box-shadow:         4px 4px 5px 0px rgba(50, 50, 50, 0.4);
    }                                                   

    #parpro p{
        margin:0;
        text-align:center;
        color:#FFF;
    }

    #model{
        position:absolute;
        top: 6px;
        right: -170px;
        width: 375px;
        height: 180px;
        background: url(../design/planGranit-335.png) no-repeat;
        background-size: auto 165px;
    }

    .actu {
        /* margin-top: 40px; */
        max-height:300px;
    }
    #adresseTel p{
        font-size: 14px;
    }

    /** Menu **/
    #menu{
        margin-top:10px;
    }

    #menu .navbar-nav {
        /* float: none; */
        /* margin-left: 50px; */
        /* width: 1100px; */
    }

    #menu .navbar{
        margin:0;
    }

    #menuPrincipal>li+li:before{
        top: 2px;
    }

    #menu a{
        padding: 10px 16px;
        font-size: 17px;
        margin: 0;
    }

    #carousel-accueil{
        /* width:1100px; */
        margin:auto;
        box-shadow:#737373 5px 5px 10px;
    }

    #contenu{
        padding-top: 240px;
    }


    #carousel-realisation .item{
        width:960px;
        height:500px;
    }

    /** boutique **/
    .mosaiqueBlocProduit:hover{
        color:#fff;
        background:#d9507e;
        border-radius:5px;
    }

    .mosaiqueBlocProduit .btFicheProduit{
        display:none;
        height:40px;
        width:40px;
        font-size:20px;
    }

    .mosaiqueBlocProduit:hover .imageProduit{
        opacity:0.5;
    }

    .mosaiqueBlocProduit:hover .btFicheProduit{
        display:block;
        position:absolute;
        top:50px; 
        left:50%;
        margin-left:-20px;
        line-height:40px;
        background:#fff;
        z-index:1;
    }

}

@media(min-width:1200px){
    .container{
        width:1170px;
    }

    #slogan {
        margin-left:12px;
    }

    #mosaiquePhoto{
        text-align:left;
    }

    #carousel-realisation{
        width:960px;
    }

    #vignietteRealisation{
        width:960px;
    }
}

/*==================================================
 * Effect 6
 * ===============================================*/
.effect6
{
    position:relative;
    -webkit-box-shadow:0 5px 30px rgba(0, 0, 0, 0.6), 0 0 30px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 5px 30px rgba(0, 0, 0, 0.6), 0 0 30px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0 5px 30px rgba(0, 0, 0,0.6), 0 0 30px rgba(0, 0, 0, 0.1) inset;
}
.effect6:before, .effect6:after
{
    content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:50%;
    bottom:0;
    left:10px;
    right:10px;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}
.effect6:after
{
    right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
    -moz-transform:skew(8deg) rotate(3deg);
    -ms-transform:skew(8deg) rotate(3deg);
    -o-transform:skew(8deg) rotate(3deg);
    transform:skew(8deg) rotate(3deg);
}
