/**
 * Tuiles (flickity)
 *
 */
.tuiles {
    margin-bottom: 2.5rem;
	margin-left: -1em;
    margin-right: -1em;
}

@media (min-width: 767px) {
	.tuiles { 
		margin-left: 0;
		margin-right: 0;
	}
}
.tuile {
    padding: .5em 1em;
    background-color: white;
    margin: .5em 1em .5em 0;
    box-shadow: 0 1px 5px 0 rgba(0,0,0,.4);
    min-height: calc(100% - 1em);
}


@media (min-width: 767px) {
	.tuile {
		margin: .5em 1.5em .5em 0;
	}
}

.tuiles:not(.flickity) .tuile:last-child {
    margin-right: 0;
}
.tuile.style1 {
    box-shadow: inset 0 0 0 0.5em #eeeeee;
}
.tuile.style2 {
    background-color: #f2f2f2;
}
.tuile.style3 {
    background-color: #074b98;
    color: white;
}
    .tuile.style3 * {
        color: white;
    }
.tuile.style4 {
    box-shadow: inset 0 0 0 0.5em #ffcb04;
}

/* style5 */
.tuile.style5 {
    background: linear-gradient(180deg, rgba(250,250,250,1) 0%, rgba(225,225,225,1) 100%);
}
.tuile.style6 {
    background: linear-gradient(180deg, #004a9c 0%, #192b42 100%);
    color: white;
}
     .tuile.style6 * {
        color: white;
    }

.tuile h2:first-child,
.tuile h3:first-child,
.tuile h4:first-child,
.tuile h5:first-child {
    margin-top: 0.5em;
}
a.tuile {
    text-decoration: none;
    color: black;
    
}
a.tuile:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: white;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    transition: 0.3s opacity;
}


a.tuile:focus:before,
a.tuile:hover:before {
    opacity: .6;
}
a.tuile.style3:focus:before,
a.tuile.style3:hover:before, 
a.tuile.style6:focus:before,
a.tuile.style6:hover:before {
    opacity: .1;
}
.tuile-image figure {
    margin: 0;
    max-width: none;
    position: absolute;
    top: 0;
    left: 0;
}
.tuile-image figure > img {
    display: block;
    height: 160px;
    object-fit: cover;
}
.tuile-image h2:first-child,
.tuile-image h3:first-child,
.tuile-image h4:first-child {
    margin-top: 170px;
}

.tuile-image figure div.tuile-gap {
    top: 0;
    overflow: hidden;
    height: 12px;
    position: relative;
}
.tuile-image figure div.tuile-gap img {
    filter: blur(100px) saturate(5);
    width: 125%;
}



.tuiles.flickity .tuile {
    width: calc(90% - 8px);
    padding: 2em;
}
@media (min-width: 550px) {
   .tuiles.flickity .tuile {
        width: 75%;
    }
}
@media (min-width: 900px) {
   .tuiles.flickity .tuile {
        width: 50%;
    }
}


.tuiles.flickity .flickity-prev-next-button.previous {
	left: 4px;
}
.tuiles.flickity .flickity-prev-next-button.next {
	right: 4px;
}
.tuiles.flickity.tuiles-images .flickity-prev-next-button.previous {
	top: 90px;
	left: 25px;
}
.tuiles.flickity.tuiles-images .flickity-prev-next-button.next {
	top: 90px;
	right: 25px;
}

@media (min-width: 767px) {
    .tuiles.flickity .flickity-prev-next-button.previous {
        top: 50%;
		left: 15px;
    }
    .tuiles.flickity .flickity-prev-next-button.next {
        top: 50%;
		right: 15px;
    }
	.tuiles.flickity.tuiles-images .flickity-prev-next-button.previous {
		left: 15px;
	}
	.tuiles.flickity.tuiles-images .flickity-prev-next-button.next {
		right: 15px;
	}
}



/* ==========================================================================
	.flickity-style2   
	Boutons avant / après sombres
   ========================================================================== */

.flickity-style2 .flickity-button {
    background: rgba(0,0,0,0.5);
    color: white;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.4);
    transition: 0.3s background;
}
.flickity-style2 .flickity-button:hover {
    background: rgba(0,0,0,0.6);
}
.tuile h3.lien:after {
    content: "";
    background-image: url(/img/pictos/picto-fleche-droite.svg);
    background-repeat: no-repeat;
    display: inline-block;
    width: 0.9em;
    height: 0.9em;
    position: relative;
    top: 0.15em;
    right: -0.4em;
    transition: right .3s;
    margin-right: -0.9em;
} 
.tuile h3.lien:focus:after,
.tuile h3.lien:hover:after {
    right: -0.8em;
}
.tuile.style3 h3.lien:after,
.tuile.style6 h3.lien:after {
	filter: invert(50%) brightness(200%);
}


/* ==========================================================================
   .largeur-standard
	Utilisé dans le cas de lamding-page. 
	Exemple : https://www.ville.quebec.qc.ca/developpement-durable/
   ========================================================================== */

.largeur-standard .tuile {
    padding: 2em;
}
.largeur-standard .tuile-image h2:first-child,
.largeur-standard .tuile-image h3:first-child,
.largeur-standard .tuile-image h4:first-child {
    margin-top: 170px;
}
.largeur-standard  .tuiles.flickity  {
    margin-left: -5px;
    margin-right: -5px;
}
.largeur-standard .tuiles.flickity .tuile {
    width: calc(100% - 8px);
}
@media (min-width: 767px) {
   .largeur-standard .tuiles.flickity .tuile {
        width: calc(33% - 18px);
    }
}
.largeur-standard .tuiles.flickity .flickity-prev-next-button.previous {
	left: 15px;
}
.largeur-standard .tuiles.flickity .flickity-prev-next-button.next {
	right: 15px;
}
@media (min-width: 1310px) {
    .largeur-standard .tuiles.flickity.tuiles-images .flickity-prev-next-button.previous {
        left: -50px;
		top: 50%;
    }
    .largeur-standard .tuiles.flickity.tuiles-images .flickity-prev-next-button.next {
        right: -50px;
		top: 50%;
    }
}


/* ==========================================================================
   Tuile dans un accordéon
   ========================================================================== */

.toggle-container .tuiles {
	margin-left: 0;
	margin-right: 0;
}


/* ==========================================================================
   Affichage de tuile statiques
   ========================================================================== */

.tuiles:not(.flickity) {
    display: flex;
    margin-left: 5px;
	margin-bottom: 1em;
    width: 100%;
    flex-wrap: wrap;
    gap: 15px;
}

@media (min-width: 767px) {
	.tuiles { 
		margin-left: 0;
		margin-right: 0;
	}
	.tuiles:not(.flickity) {
        flex-wrap: nowrap;
        gap: 2.4%;
    }
}
.tuiles:not(.flickity) .tuile {
    flex-basis: calc(100% - 8px);
    margin: 0;
}
@media (min-width: 767px) {
	.tuile {
		margin: .5em 1.5em .5em 0;
	}
   	.tuiles:not(.flickity) .tuile {
        flex-basis: calc(33% - 18px);
    } 
}
.tuiles:not(.flickity) .tuile-image {
    position: relative;
}