/* .............................................................................
SITE BLOCKS
............................................................................. */

/*
BLOCK / Standard styles
Styles standard des blocs principaux. */
.bMain {padding-top: var(--base-spacing-top);padding-bottom: var(--base-spacing-bottom);}

	/*
	ALT :
	No double padding.
	Si 2 blocks avec cette classe se chevauchent, ne pas mettre
	d'espacement entre ces 2 blocs. */
	.bMain--noDP + .bMain--noDP {padding-top: 0; }

	/*
	ALT :
	Forcer zero padding top ou bottom. */
	.bMain--noTP {padding-top: 0; }
	.bMain--noBP {padding-bottom: 0; }

	/*
	ALT :
	Hauteur plus petite. */
	.bMain--shorter {padding-top: calc(0.6 * var(--base-spacing-top));padding-bottom: calc(0.6 * var(--base-spacing-bottom)); }



/*
BLOCK / Layout cols
Differentes options de layout pour le texte. */
.c2 {--espacement: 3em; display: flex; margin: calc(-1 * var(--espacement)); }
.c2__col {display: block;flex: 0 0 auto;width: 50%;padding: var(--espacement);}

.c3 {--espacement: 1.5002em; display: flex; margin: calc(-1 * var(--espacement)); }
.c3__col {display: block;flex: 0 0 auto;width: 33.33%; padding: var(--espacement);}

	/* Break cols */
	@media (max-width:62rem) {
		.c2 {--espacement:1.5em; flex-wrap: wrap; }
		.c2__col {width: 100%; }

		.c3 {flex-wrap: wrap; }
		.c3__col {width: 100%; }
	}



/*
BLOCK / Boxes list
Boxes 3 cols per row qui deviennent une par-dessus l'autre sur mobile.
C'est aussi possible de les afficher en carousel. */
.bBoxesList {--espacementV: 2.002vw; --espacementH: 2.002vw; --nbItems: 3; }
.bBoxesList__list {position: relative; }
.bBoxesList__items {display: flex; flex-wrap: wrap; margin: calc(-1 * var(--espacementV)) calc(-1 * var(--espacementH)); }
.bBoxesList__items .iBox {flex: 0 0 auto; width: calc(100% / var(--nbItems)); padding: var(--espacementV) var(--espacementH); }

/* Carousel */
.bBoxesList .jsCarouselStd {flex-wrap: nowrap; }

	/* Arrows */
	.bBoxesList__nav { }
	.bBoxesList__nav .navArrows__left,
	.bBoxesList__nav .navArrows__right {display: block;position: absolute;z-index: 3;top: 50%;transform: translate3d(0, -50%, 0);left: 0;}
	.bBoxesList__nav .navArrows__right {left: auto; right: 0; }

	/* Before init, on affiche les boites comme elles seront apres le init. */
	.bBoxesList .jsCarouselStd.flickity-enabled {display: block; }
	.bBoxesList .jsCarouselStd:not(.flickity-enabled) > *:nth-child(1n+4) {display: none; }

	/* Disable Flickity *
	.bBoxesList .jsCarouselStd::after {content: ''; }

	/* Enable Flickity *
	.bBoxesList .jsCarouselStd::after {content: 'flickity'; display: none; }

	/* 100% height slides *
	.flickity-resize.bBoxesList__items .iBox {min-height: 100%;display: flex;}
	.flickity-resize.bBoxesList__items .iBox__in {height: auto;}

	/* Big screens */
	@media (min-width:125rem) {
		.bBoxesList {--espacementV: 2.002em;--espacementH: 2.002em; }
	}
	
	/* 2 cols */
	@media (max-width:62rem) {
		.bBoxesList {--nbItems: 2; }
	}
	
	/* 1 col */
	@media (max-width:46rem) {
		.bBoxesList {--nbItems: 1; --espacementV: 3.002vw; --espacementH: var(--width-std-left); }
	}

	/* Overflow list *
	@media (max-width:46rem) {
		.bBoxesList__list {overflow: auto; padding: 0 0 calc(2 * var(--espacementV)) 0; margin-left:calc(-1 * var(--width-std-left)); margin-right: calc(-1 * var(--width-std-right)); margin-bottom: calc(-2 * var(--espacementV));}
		.bBoxesList__items {margin-left: 0; margin-right: 0; flex-wrap: nowrap;}
		.bBoxesList__items > * {width: calc(100vw - var(--width-std-left) - var(--width-std-right)); box-sizing: content-box;}
		.bBoxesList__items > *:first-child {padding-left: var(--width-std-left);}
		.bBoxesList__items > *:last-child {padding-right: var(--width-std-right);}
	}



/*
BLOCK / Boxes list 2 per line
Boxes 2 cols per row qui deviennent une par-dessus l'autre sur mobile. */
.bBoxesList2PL {--espacementV: 0.5vw; --espacementH:var(--espacementV); --nbItems: 2;}
.bBoxesList2PL__list {position: relative; }
.bBoxesList2PL__items {display: flex; flex-wrap: wrap; margin: calc(-1 * var(--espacementV)) calc(-1 * var(--espacementH)); }
.bBoxesList2PL__items > * {flex: 0 0 auto; width: calc(100% / var(--nbItems)); padding: var(--espacementV) var(--espacementH); }

	/* Big screens */
	@media (min-width:125rem) {
		.bBoxesList2PL {--espacementV: 0.5em; }
	}
	
	/* 1 col */
	@media (max-width:62rem) {
		.bBoxesList2PL {--nbItems: 1; --espacementV: calc(0.5 * var(--width-std)); }
	}



/*
BLOCK / Testimonials list
Testimonials en carousel. */
.bTestimonials {--nbItems: 1; background-color: var(--color-pink); }
.bTestimonials__list {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: 2em var(--grid-gap);}
.bTestimonials__items {grid-column: 1 / -1; grid-row: 1 / -1; }
.bTestimonials__items .iTestimonial {width: calc(100% / var(--nbItems)); }

/* Carousel */
.bTestimonials .jsCarouselStd { }

	/* Arrows */
	.bTestimonials__nav {grid-column: 11 / span 2;grid-row: 1 / -1;align-self: end;margin-bottom: 0.25em;}

	/* Before init, on affiche les boites comme elles seront apres le init. */
	.bTestimonials .jsCarouselStd.flickity-enabled {display: block; }
	.bTestimonials .jsCarouselStd:not(.flickity-enabled) > *:nth-child(1n+2) {display: none; }

	/*
	FADE EFFECT
	Dans ce plugin, cet effet est gerer en CSS, pas en JS. */
	.bTestimonials .jsCarouselStd.flickity-enabled .flickity-slider {transform: none !important;}
	.bTestimonials .jsCarouselStd.flickity-enabled .iTestimonial {transform: none !important;}

	/* Set animations transitions */
	.bTestimonials .jsCarouselStd .iTestimonial {transition: opacity 0.7s, visibility 0.7s;}

	/* .is-selected = slide du centre
	.is-previous = slide de gauche
	.is-next = slide de droite */
	.bTestimonials .jsCarouselStd .iTestimonial:not(.is-selected) {opacity: 0;visibility: hidden; pointer-events: none;}

	/* 100% height slides */
	.bTestimonials .jsCarouselStd.flickity-resize .iTestimonial {min-height: 100%;display: flex;align-items: center;justify-content: center;}
	.bTestimonials .jsCarouselStd.flickity-resize .iTestimonial__layout {height: auto;}
	
	/* Stacked */
	@media (max-width:62rem) {
		.bTestimonials__list {grid-template-columns: repeat(4, minmax(0, 1fr));gap: calc(0.5 * var(--base-spacing)) var(--grid-gap);}
		.bTestimonials__list > * {grid-column: 1 / -1; grid-row: auto; }
		.bTestimonials__nav {margin: 0;text-align: center;}
	}



/*
BLOCK / TCI
Title, content and image. */
.bTCI { }
.bTCI__layout {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: 2em var(--grid-gap);}
.bTCI__cTitle {grid-column: 3 / span 5; grid-row: 1 / 2; }
.bTCI__cCtn {grid-column: 6 / span 3; grid-row: 2 / 3; }
.bTCI__cImg {grid-column: 9 / span 4;grid-row: 1 / 3;align-self: end;padding-right: calc(var(--width-narrow-right) - var(--width-std-right));margin-bottom: 6%;}
.bTCI__cCtas {display: flex;flex-wrap: wrap;}
.bTCI__cCtas > * {flex: 0 1 auto;margin: 0.2em;}

	/* 
	ALT:
	Contenu aligné a gauche avec le titre. */
	.bTCI--ctnLeft { }
	.bTCI--ctnLeft .bTCI__cTitle {grid-column: 3 / span 6; }
	.bTCI--ctnLeft .bTCI__cCtn {grid-column: 3 / span 6; }

	/* Stacked */
	@media (max-width:62rem) {
		.bTCI__layout {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(0.5 * var(--base-spacing)) var(--grid-gap); }
		.bTCI__layout > *,
		.bTCI--ctnLeft .bTCI__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bTCI__cCtn {grid-column: 2 / -1; }
	}



/*
BLOCK / TCIF
Title, content and floating image.
The background is filled with a color. */
.bTCIF {background: var(--color-green-vivid); }
.bTCIF__layout {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: 2em var(--grid-gap);align-items: center;}
.bTCIF__cTitle {grid-column: 1 / span 5;grid-row: 1 / 2;align-self: end;}
.bTCIF__cCtn {grid-column: 4 / span 3;grid-row: 2 / 3;align-self: start;}
.bTCIF__cImgBG {grid-column: 7 / span 4;grid-row: 1 / 3;padding-left: calc(0.5 * var(--grid-gap));margin-right: calc(-1 * var(--grid-gap));margin-top: calc(-0.5 * var(--base-spacing-top));margin-bottom: calc(-0.5 * var(--base-spacing-bottom));}
.bTCIF__cImgOver {grid-column: 7 / span 6;grid-row: 1 / 3;padding: 0 8%;position: relative;z-index: 2;}
.bTCIF__imgFloat { }
.bTCIF__imgBG {color: var(--color-blue); }

	/* Stacked */
	@media (max-width:62rem) {
		.bTCIF__layout {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(0.5 * var(--base-spacing)) var(--grid-gap); }
		.bTCIF__cTitle {grid-column: 1 / -1; grid-row: auto; }
		.bTCIF__cCtn {grid-column: 2 / -1; }
		.bTCIF__cImgBG {grid-column: 1 / -2; grid-row: 3 / 4; padding-left: 0; margin: 0; }
		.bTCIF__cImgOver {grid-column: 1 / -1; grid-row: 3 / 4; padding-right: 0; }
	}

	/* No left gap */
	@media (max-width:46rem) {
		.bTCIF__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bTCIF__cImgBG {display: none; }
		.bTCIF__cImgOver {padding: 0; }
	}



/*
BLOCK / IC
Image at left, content at right.
The background is filled with a color. */
.bIC {background: var(--color-jaune);}
.bIC__layout {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: 2em var(--grid-gap);align-items: center;}
.bIC__cImgBG {grid-column: 1 / span 4;grid-row: 1 / 2;padding-left: calc(0.5 * var(--grid-gap));margin-right: calc(-1 * var(--grid-gap));margin-top: calc(-0.5 * var(--base-spacing-top));margin-bottom: calc(-0.5 * var(--base-spacing-bottom));}
.bIC__cImgOver {grid-column: 1 / span 6;grid-row: 1 / 2;padding: 0 8%;position: relative;z-index: 2;}
.bIC__cCtn {grid-column: 8 / span 4;grid-row: 1 / 2;}

.bIC__imgFloat { }
.bIC__imgBG {color: var(--color-blue); }
.bIC__cCtn p {max-width: 18em;}

	/* Stacked */
	@media (max-width:62rem) {
		.bIC__layout {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(0.5 * var(--base-spacing)) var(--grid-gap); }
		.bIC__cImgBG {grid-column: 1 / -2;grid-row: 1 / 2;padding-left: 0;margin: 0;}
		.bIC__cImgOver {grid-column: 1 / -1;grid-row: 1 / 2;padding-right: 0;}
		.bIC__cCtn {grid-column: 1 / -1;grid-row: 2 / 3;}
	}

	/* No left gap */
	@media (max-width:46rem) {
		.bIC__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bIC__cImgBG {display: none; }
		.bIC__cImgOver {padding: 0;}

		.bIC__cCtn p {max-width: none;}
	}



/*
BLOCK / FAQ
Title, content and CTA at left.
Accordions at right. */
.bFAQ { }
.bFAQ__layout {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto 1fr; gap: 2em var(--grid-gap); }
.bFAQ__cTitle {grid-column: 1 / span 6;grid-row: 1 / 2; }
.bFAQ__cCtn {grid-column: 1 / span 6;grid-row: 2 / 3; }
.bFAQ__cAccordions {grid-column: 7 / span 6;grid-row: 3 / 4; margin-top: -4em; }
.bFAQ__cImgBG {position: relative; z-index: -1; grid-column: 4 / span 6; grid-row: 1 / 4; margin: calc(-0.25 * var(--base-spacing-top)) 8% calc(-0.25 * var(--base-spacing-bottom)) 8%; }

	/* Stacked */
	@media (max-width:62rem) {
		.bFAQ__layout {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(0.5 * var(--base-spacing)) var(--grid-gap); }
		.bFAQ__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bFAQ__cTitle {grid-row: 1 / 2; }
		.bFAQ__cCtn {grid-row: 2 / 3; }
		.bFAQ__cAccordions {grid-row: 4 / 5; margin-top: 0; }
		.bFAQ__cImgBG {grid-row: 4 / 5; margin: calc(-0.75 * var(--base-spacing-top)) 10% calc(-0.25 * var(--base-spacing-bottom)) 10%;}
		.bFAQ__cImgBG > * {max-width: 25em; margin-left: auto; margin-right: auto; }
	}



/*
BLOCK / News on front-page
2 news, one bigger at left, and the other smaller at right. */
.bNewsFP {background: var(--color-beige); }
.bNewsFP__layout {display: grid;grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto 1fr; gap: 2em var(--grid-gap); }
.bNewsFP__cTitle {grid-column: 1 / -1; grid-row: 1 / 2; }
.bNewsFP__cMain {grid-column: 1 / span 6; grid-row: 2 / 4; }
.bNewsFP__cSecond {grid-column: 8 / span 5;grid-row: 2 / 3;margin: 0 10%;}
.bNewsFP__cCta {grid-column: 8 / span 5;grid-row: 3 / 4;margin: 0 10%;}

	/* ALT: Grid */
	.bNews__items {display: flex;flex-wrap: wrap;justify-content: space-around;grid-column: 1 / -1;grid-row: 2 / 4;}
	.bNews__items--single {justify-content: start;}
	.bNewsFP--grid .bNewsFP__cMain {flex: 0 0 40%;}
	.bNewsFP--grid .bNewsFP__cMain:nth-child(n+3) {flex: 0 0 40%;margin-top: var(--base-spacing);}

	/* Stacked */
	@media (max-width:62rem) {
		.bNewsFP__layout {grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(0.5 * var(--base-spacing)) var(--grid-gap); }
		.bNewsFP__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bNewsFP__cSecond {grid-column: 1 / 3; margin: 0; }
		.bNewsFP__cCta {margin: 0; }

		.bNewsFP--grid .bNewsFP__cMain {flex: 0 0 100%;padding: 0 var(--width-std);}
	}

	/* Full width second news */
	@media (max-width:46rem) {
		.bNewsFP__layout > * {grid-column: 1 / -1; grid-row: auto; }
	}



/*
BLOCK / Steps
3 steps side-by-side. */
.bSteps {--nbItems: 3;}
.bSteps__in {background-color: var(--color-white);text-align: center;padding: var(--base-spacing-top) var(--width-narrow) var(--base-spacing-bottom) var(--width-narrow); }
.bSteps__header { }
.bSteps__steps {margin-top: calc(0.5 * var(--base-spacing-top));}
.bSteps__stepsItems {display: grid;grid-template-columns: repeat(var(--nbItems), 1fr); }
.bSteps__cta {margin-top: calc(0.5 * var(--base-spacing-top)); }
.bSteps__infos {margin-top: calc(0.5 * var(--base-spacing-top)); }

.bSteps__header h3 {max-width: 20em;margin-left: auto;margin-right: auto; }

	/* 
	ALT:
	Snaller width. */
	.bSteps__steps--smaller {max-width: 45em;margin-left: auto;margin-right: auto;}

	/* Overflow steps */
	@media (max-width:62rem) {
		.bSteps {padding-left: 0;padding-right: 0; }
		.bSteps__steps {overflow: auto;padding-bottom: 1em;margin-left:calc(-1 * var(--width-std-left));margin-right: calc(-1 * var(--width-std-right));max-width: none;}
		.bSteps__stepsItems {margin-left: 0; margin-right: 0; flex-wrap: nowrap; }
		.bSteps__stepsItems > * {width: calc(60vw - var(--width-std-left) - var(--width-std-right));box-sizing: content-box;}
		.bSteps__stepsItems > *:first-child {padding-left: var(--width-std-left);}
		.bSteps__stepsItems > *:last-child {padding-right: var(--width-std-right);}
		.bSteps__cta {margin-top: calc(0.25 * var(--base-spacing-top)); }
	}

	/* Spacing */
	@media (max-width:46rem) {
		.bSteps__stepsItems > * {width: calc(100vw - var(--width-std-left) - var(--width-std-right));box-sizing: content-box;}
	}



/*
BLOCK / Liste d'emplois
Liste avec filtres dans un isotope. */
.bEmploisList {--espacementV: 0.5vw; --espacementH:var(--espacementV); --nbItems: 3; position: relative;z-index: 1; }
.bEmploisList--wider {--nbItems: 2;}
.bEmploisList__layout { }
.bEmploisList__cFiltres {position: relative; padding: calc(0.5 * var(--base-spacing-top)) var(--width-std) calc(0.5 * var(--base-spacing-bottom)) var(--width-std);/*margin-bottom: calc(0.4 * var(--base-spacing-bottom));*/}
.bEmploisList__cFiltres::before {position:absolute; z-index:-1; display:block; content:''; top:0; bottom:0; left:0; right:0;background: var(--color-green);opacity: 0.2; }
.bEmploisList__cList {margin-bottom: calc(0.75 * var(--base-spacing-bottom)); }
.bEmploisList__cNav {margin-bottom: calc(0.75 * var(--base-spacing-bottom));text-align: center; }
.bEmploisList .bOffresEmploi__alerte {padding: 1.2em 0;margin-left: 1.5%;}

/* Zone de filtres */
.bEmploisList__centered {max-width: 65em;margin-left: auto;margin-right: auto; }
.bEmploisList__title {text-align: center; }
.bEmploisList__filtres {margin-top: calc(0.5 * var(--base-spacing-top)); }
.bEmploisList__reset {margin-top: 2em;font-weight: bold; }

/* Zone de liste d'items */
.bEmploisList__list { }
.bEmploisList__items {display: flex; flex-wrap: wrap; margin: calc(-1 * var(--espacementV)) calc(-1 * var(--espacementH)); transition: height 1s;}
.bEmploisList__items .iBoxEmploi {flex: 0 0 auto; width: calc(100% / var(--nbItems) - 1px); padding: var(--espacementV) var(--espacementH);}

	/* 2 per line */
	@media (max-width:62rem) {
		.bEmploisList {--nbItems:2; }
	}

	/* 1 per line */
	@media (max-width:46rem) {
		.bEmploisList {--nbItems:1; }
		.bEmploisList .bOffresEmploi__alerte {padding: 1em 0; margin-left: 0; }
	}



/*
BLOCK / Contact
Seul bloc de la page de contact avec titre, contenu, infos, image et form. */
.bContact {background: var(--color-green-dark); }
.bContact__layout {padding-top: 1em;display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));grid-template-rows: auto auto 1fr;gap: 2em var(--grid-gap);}
.bContact__cTitle {grid-column: 1 / span 5;grid-row: 1 / 2;margin: 20% 0 12% 0;}
.bContact__cCtn {grid-column: 1 / span 4;grid-row: 2 / 4; }
.bContact__cImg {grid-column: 9 / span 4;grid-row: 1 / 3;margin-bottom: 5%; }
.bContact__cForm {grid-column: 6 / span 7;grid-row: 3 / 4;margin: 0 5%; }

.bContact__contactInfos {margin-top: calc(0.5 * var(--base-spacing));}
.bContact__img {margin-right: 15%; }
.bContact__form { }
.bContact__formHead {text-align: center; }

	/* Stacked width image at right */
	@media (max-width:62rem) {
		.bContact {padding-top: var(--topbar-height); }
		.bContact__layout {padding-top: 10%;grid-template-columns: repeat(4, minmax(0, 1fr));grid-template-rows: auto;gap: calc(0.5 * var(--base-spacing)) var(--grid-gap);}
		.bContact__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bContact__cTitle {margin: 0; }
		.bContact__cCtn {grid-column: 1 / span 2;grid-row: 2 / 3; }
		.bContact__cImg {grid-column: 3 / span 2;grid-row: 2 / 3; margin: 0; }
		.bContact__cForm {margin: 2em 7% 0 7%; }

		.bContact__img {margin:-12% 0 0 25%; }
	}

	/* Stacked no image */
	@media (max-width:46rem) {
		.bContact__layout > * {grid-column: 1 / -1; grid-row: auto; }
		.bContact__cImg {display: none; }
		.bContact__cForm {margin: 2em 0 0 0; }
	}

/*  BLOCK / Carrousel de vidéos
    Section avec carousel de plusieurs vidées. */
    .bVideoCarousel { }
	.bVideoCarousel__cTitle{
		margin-bottom: 2em;
	}
    .bVideoCarousel__list {position: relative;}
    .bVideoCarousel__nav {
		position: static;
		width: 6em;
		display: flex;
		justify-content: space-between;
		margin: 2em auto 0;
	}
        .hideNavArrows .bVideoCarousel__nav{display: none;}

    .videoItem {
		width: 100%;
		margin-right: 1em;
	}
    {padding-top: 4.3em;}
    .jsCarouselStd .videoItem img.lazyload{
        height: 0;
        padding-top: 51.67%;
        background-color: #ececec;
    }
	.jsCarouselStd .videoItem .imgLink__floating {
		width: 25%;
	}
    .sVideosGrid .menuSections__inner{
        background-color: var(--color-black);
    }

    /* Carousel, before init. */
    .jsCarouselStd:not(.flickity-enabled) .videoItem:not(:first-child) {display:none;}

    /* On desktop, on peut voir la slide prev et la slide next de chaque cote. */
    @media (min-width:1000px) {
        .bVideoCarousel__list { }
		.bVideoCarousel__nav .btnIcon {
			width: 1em;
			height: 1em;
			z-index: 2;
			left: 0;
			padding: 0;
		}

        .bVideoCarousel .videoItem {width: 30%; margin: 0 2.5%;}

        /* Set animations transitions */
        .jsCarouselStd .videoItem {transition: opacity 0.5s, visibility 0.5s;}
        .jsCarouselStd .videoItem .imgLink__floating {
			transition: opacity 0.5s;
			background: rgba(255,255,255,0);
			transition: background .4s;
  			border-radius: 50%;
		}
			.videoItem .imgLink:hover .imgLink__floating{
				background: rgba(255,255,255,0.6);
			}
        .jsCarouselStd .videoItem .imgLink__bg {transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);}

            /* Hover prev and next slide */
            .onPrev .jsCarouselStd .videoItem.is-previous .imgLink__bg {opacity: 0.3; }
            .onNext .jsCarouselStd .videoItem.is-next .imgLink__bg {opacity: 0.3; }
    }

/*  IMAGE LINK BLOCK
    Image link with floating icon (optional) and text under (optional). */
	.imgLink {line-height: 1;text-decoration: none;display: block;position: relative;color: #fff;outline: none;backface-visibility: hidden;}
    .imgLink__img {position: relative;}
    .imgLink__img img{
        width: 100%;
    }
    .imgLink__floating {font-size: 2em; position: absolute;z-index: 2;top: 50%;left: 50%;transform: translate(-50%, -50%); }
    .imgLink__floating .svg {transition:color 0.2s;}
    .imgLink__bg {overflow: hidden;background: #fff;}
    .imgLink__bg img {backface-visibility:hidden;position: relative;z-index: 1;transform: scale(1.01);transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);width: 100%;}
    .imgLink__ctn {margin-top: 1em; }
    .imgLink__hoverLine {color:var(--color-black); text-decoration:none; position: relative; display: inline-block; }
    .imgLink__hoverLine::before {position: absolute; display: block; content: ''; left: 0; right: 0; bottom: -0.25em; height: 1px; background-color: var(--color-black); transform-origin: 50% 50%; transform: scaleX(0); transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1); }

        /* On dark */
        .onDark .imgLink__hoverLine::before {background-color: #fff;}
        
        /* Hover */
        .imgLink:hover .imgLink__floating .svg,
        .imgLink__parentLink:hover .imgLink__floating .svg {color:#a37158;}

        .imgLink:hover .imgLink__bg img,
        .imgLink__parentLink:hover .imgLink__bg img {transform: scale(1.05); }
        
        .imgLink:hover .imgLink__hoverLine::before,
        .imgLink__parentLink:hover .imgLink__hoverLine::before {transform: scaleX(1); }


/*
BLOCK / Title
Description. */



