#nav > .home-btn {
    position: relative;
    background-image: none;
}
#nav > .home-btn:before,
#nav > .home-btn:after {
    content: "";
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    
    background-size: cover;
    background-repeat: no-repeat;
    
    transition: opacity .4s ease-out;
}
#nav > .home-btn:before { background-image: url("../../images/logo.dark.svg"); opacity: 1; }
#nav > .home-btn:after { background-image: url("../../images/logo.light.svg"); opacity: 0; }
#nav.scroll > .home-btn:before,
body[class *= 'open'] #nav > .home-btn:before { opacity: 0; }
#nav.scroll > .home-btn:after,
body[class *= 'open'] #nav > .home-btn:after { opacity: 1; }

#nav > .nav-btn.search-btn {
    position: relative;
    background-image: none;
}
#nav > .nav-btn.search-btn:before,
#nav > .nav-btn.search-btn:after {
    content: "";
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    
    background-size: 90%;
    background-position: center;
    background-repeat: no-repeat;
    
    transition: opacity .4s ease-out;
}
#nav > .nav-btn.search-btn:before { background-image: url("../../images/icons/nav.search.dark.svg"); opacity: 1; }
#nav > .nav-btn.search-btn:after { background-image: url("../../images/icons/nav.search.light.svg"); opacity: 0; }
#nav.scroll > .nav-btn.search-btn:before,
body[class *= 'open'] #nav > .nav-btn.search-btn:before { opacity: 0; }
#nav.scroll > .nav-btn.search-btn:after,
body[class *= 'open'] #nav > .nav-btn.search-btn:after { opacity: 1; }

#nav.static > .nav-btn.menu-btn { background-color: #B8A3A7; }
#nav.scroll > .nav-btn.menu-btn { background-color: #820D2B; }
body:not([class *= 'open'])#nav.static > .nav-btn.menu-btn:before,
body:not([class *= 'open'])#nav.static > .nav-btn.menu-btn:after,
body:not([class *= 'open']) #nav:not(.scroll) > .nav-btn.menu-btn:before,
body:not([class *= 'open']) #nav:not(.scroll) > .nav-btn.menu-btn:after { background-color: #000; }

/*---------------------------------------------------------------------------------------*/

@media (min-width : 500px) {
    #container {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
    }
}

/*---------------------------------------------------------------------------------------*/

#container .title {
    font-family: "Anton";
    color: #9E2B46;
}
@media (min-width : 900px) {
    #container h2.title {
        line-height: 24px;
        font-size: 28px;
    }
}
@media (max-width : 899px) {
    #container h2.title {
        line-height: 18px;
        font-size: 20px;
    }
}

/*---------------------------------------------------------------------------------------*/

#container > .title {
    margin: 0;
    
    text-transform: uppercase;
}
#container > .title > span { position: relative; }
@media (min-width : 900px) {
    #container > .title {
        padding-bottom: 55px;
        
        line-height: 68px;
        font-size: 74px;
    }
}
@media (max-width : 899px) {
    #container > .title {
        padding-bottom: 38px;
        
        line-height: 45px;
        font-size: 50px;
    }
}
@media (min-width : 500px) {
    #container > .title {
        position: relative;
        flex: 0 0 100%;
        padding-top: 180px;
        padding-left: 50px;
        padding-right: 50px;
    }
    #container > .title:before,
    #container > .title:after {
        content: '';
        position: absolute; top: 0; bottom: 0; z-index: 0;
    }
    #container > .title:before {
        left: 0; right: 50%;
        background-color: #BBB6B8;
    }
    #container > .title:after {
        left: 50%; right: 0;
        background-color: #CFC9CC;
    }
}
@media (max-width : 499px) {
    #container > .title {
        padding-top: 118px;
        padding-left: 15px;
        padding-right: 15px;
        
        background-color: #BBB6B8;
    }
}

/*---------------------------------------------------------------------------------------*/

#container > .activities > .activities {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
#container > .activities > .activities > .activity {
    position: relative;
    display: block; overflow: hidden;
    
    border: solid 1px #FFF;
    
    font-family: "Anton";
    
    cursor: url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='100px' height='100px' viewBox='0 0 100 100' style='enable-background:new 0 0 100 100;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:%23FDFF50;%7d %3c/style%3e%3ccircle class='st0' cx='50' cy='50' r='50'/%3e%3cpath d='M20.7,47.2c0.5,0.3,0.9,0.6,1.1,1.1c0.3,0.5,0.4,1,0.4,1.7c0,0.6-0.1,1.2-0.4,1.7c-0.3,0.5-0.6,0.8-1.1,1.1 s-1.1,0.4-1.8,0.4H17v-6.3h1.9C19.6,46.9,20.2,47,20.7,47.2z M20.9,51.9c0.5-0.5,0.7-1.1,0.7-1.9c0-0.8-0.2-1.5-0.7-1.9 s-1.1-0.7-2-0.7h-1.2v5.2h1.2C19.7,52.6,20.4,52.4,20.9,51.9z M26.2,47.4v2.3h2.4v0.5h-2.4v2.4h2.7v0.5h-3.3v-6.3h3.3v0.5H26.2z M28,45.5l-1.8,1.1v-0.5l1.8-1.2V45.5z M32.5,48.3c0.3-0.5,0.6-0.9,1.1-1.1c0.5-0.3,1-0.4,1.6-0.4c0.7,0,1.3,0.2,1.8,0.5 s0.9,0.8,1.1,1.4h-0.7c-0.2-0.4-0.5-0.8-0.8-1c-0.4-0.2-0.8-0.4-1.3-0.4c-0.5,0-0.9,0.1-1.2,0.3c-0.4,0.2-0.7,0.5-0.9,0.9 s-0.3,0.9-0.3,1.4c0,0.5,0.1,1,0.3,1.4c0.2,0.4,0.5,0.7,0.9,0.9c0.4,0.2,0.8,0.3,1.2,0.3c0.5,0,1-0.1,1.3-0.4c0.4-0.2,0.6-0.6,0.8-1 h0.7c-0.2,0.6-0.6,1.1-1.1,1.4c-0.5,0.3-1.1,0.5-1.8,0.5c-0.6,0-1.1-0.1-1.6-0.4c-0.5-0.3-0.8-0.7-1.1-1.1s-0.4-1-0.4-1.7 C32.1,49.4,32.2,48.8,32.5,48.3z M42.8,52.8c-0.5-0.3-0.8-0.7-1.1-1.1s-0.4-1-0.4-1.7c0-0.6,0.1-1.2,0.4-1.7s0.6-0.9,1.1-1.1 c0.5-0.3,1-0.4,1.6-0.4c0.6,0,1.1,0.1,1.6,0.4c0.5,0.3,0.8,0.7,1.1,1.1s0.4,1,0.4,1.7c0,0.6-0.1,1.2-0.4,1.7s-0.6,0.9-1.1,1.1 c-0.5,0.3-1,0.4-1.6,0.4C43.8,53.2,43.3,53.1,42.8,52.8z M45.7,52.3c0.4-0.2,0.7-0.5,0.9-0.9c0.2-0.4,0.3-0.9,0.3-1.4 c0-0.5-0.1-1-0.3-1.4c-0.2-0.4-0.5-0.7-0.9-0.9c-0.4-0.2-0.8-0.3-1.3-0.3c-0.5,0-0.9,0.1-1.3,0.3c-0.4,0.2-0.7,0.5-0.9,0.9 C42,49,41.9,49.5,41.9,50c0,0.5,0.1,1,0.3,1.4c0.2,0.4,0.5,0.7,0.9,0.9c0.4,0.2,0.8,0.3,1.3,0.3C44.9,52.7,45.3,52.6,45.7,52.3z M51.5,46.9v4c0,0.6,0.1,1.1,0.4,1.4c0.3,0.3,0.7,0.5,1.2,0.5s0.9-0.1,1.2-0.4c0.3-0.3,0.4-0.8,0.4-1.4v-4h0.6v4 c0,0.8-0.2,1.4-0.6,1.8s-1,0.6-1.7,0.6S52,53,51.5,52.6s-0.6-1-0.6-1.8v-4H51.5z M64.1,46.9l-2.4,6.3H61l-2.4-6.3h0.7l2.1,5.6 l2.1-5.6H64.1z M70.7,53.1l-1.6-2.6h-1.2v2.6h-0.6v-6.3h1.9c0.7,0,1.2,0.2,1.6,0.5c0.4,0.3,0.5,0.8,0.5,1.3c0,0.5-0.1,0.8-0.4,1.2 c-0.3,0.3-0.6,0.5-1.2,0.6l1.6,2.7H70.7z M67.9,50h1.3c0.5,0,0.9-0.1,1.1-0.4c0.2-0.2,0.4-0.6,0.4-1c0-0.4-0.1-0.7-0.4-1 c-0.2-0.2-0.6-0.3-1.1-0.3h-1.3V50z M75.5,46.9v6.3h-0.6v-6.3H75.5z M82.5,53.1l-1.6-2.6h-1.2v2.6h-0.6v-6.3H81 c0.7,0,1.2,0.2,1.6,0.5c0.4,0.3,0.5,0.8,0.5,1.3c0,0.5-0.1,0.8-0.4,1.2c-0.3,0.3-0.6,0.5-1.2,0.6l1.6,2.7H82.5z M79.8,50H81 c0.5,0,0.9-0.1,1.1-0.4s0.4-0.6,0.4-1c0-0.4-0.1-0.7-0.4-1c-0.2-0.2-0.6-0.3-1.1-0.3h-1.3V50z'/%3e%3c/svg%3e") 50 50, pointer;
}
#container > .activities > .activities > .activity > .thumbnail {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    
    background-position: center;
    background-size: cover;
    
    opacity: 0; transition: opacity .2s ease-out;
}
#container > .activities > .activities > .activity > .thumbnail:after {
    content: "";
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    
    background-color: #9E2B46;
    opacity: .5;
}
#container > .activities > .activities > .activity:hover > .thumbnail { opacity: 1; }
#container > .activities > .activities > .activity > .thumbnail ~ div {
    position: relative;
    transition: color .2s ease-out;
}
#container > .activities > .activities > .activity:hover > .thumbnail ~ div { color: #FFF; }
#container > .activities > .activities > .activity > .index { color: #9E2B46; }
#container > .activities > .activities > .activity > .name { word-wrap: break-word; }
@media (min-width : 900px) {
    #container > .activities > .title { margin-bottom: 40px; }
}
@media (max-width : 899px) {
    #container > .activities > .title { margin-bottom: 26px; }
}
@media (min-width : 700px) {
    #container > .activities > .activities > .activity { flex: 0 0 calc(50% + .5px); }
    #container > .activities > .activities > .activity:nth-child(2) ~ .activity { margin-top: -1px; }
    #container > .activities > .activities > .activity:nth-child(even) { margin-left: -1px; }
}
@media (max-width : 699px) and (min-width : 500px) {
    #container > .activities > .activities > .activity { flex: 0 0 100%; }
    #container > .activities > .activities > .activity:not(:first-child) { margin-top: -1px; }
}
@media (min-width : 500px) {
    #container > .activities {
        flex: 0 0 50%; overflow: hidden;
        padding-top: 55px;
        padding-bottom: 75px;
    }
    #container > .activities > .activities > .activity { min-height: 160px; }
    #container > .activities > .activities > .activity { padding: 30px; }
    #container > .activities > .activities > .activity > .index {
        margin-bottom: 16px;

        line-height: 26px;
        font-size: 28px;
    }
    #container > .activities > .activities > .activity > .name {
        display: -webkit-box; overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;

        font-size: 19px;
    }
}
@media (max-width : 499px) {
    #container > .activities { padding: 40px 15px; }
    #container > .activities > .activities > .activity { min-height: 150px; flex: 0 0 calc(50% + .5px); }
    #container > .activities > .activities > .activity:nth-child(2) ~ .activity { margin-top: -1px; }
    #container > .activities > .activities > .activity:nth-child(even) { margin-left: -1px; }
    #container > .activities > .activities > .activity { padding: 20px; }
    #container > .activities > .activities > .activity > .index {
        margin-bottom: 10px;
        
        line-height: 34px;
        font-size: 26px;
    }
}

/*---------------------------------------------------------------------------------------*/

#expertises,
#field-of-expertises {
    padding-left: 50px;
    padding-right: 25px;
    background-color: #BBB6B8;
}

/*---------------------------------------------------------------------------------------*/

#secteurs,
#sector-offers {
    padding-left: 25px;
    padding-right: 50px;
    background-color: #CFC9CC;
}

/*----------------------------------------------------------------------------------------------------------------*/

#container > .standard-section {}
#container > .standard-section > header {}
#container > .standard-section > header > .title {
    text-transform: uppercase;
    font-family: "Anton";
}
#container > .standard-section > header > .title > span {
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 1px;
}
#container > .standard-section > header > .description { line-height: 21px; }

#container > .standard-section > footer { text-align: center; }
#container > .standard-section > footer > .cta-btn {}

@media (min-width : 750px) {
    #container > .standard-section > header:not(:last-child) { margin-bottom: 50px; }
    #container > .standard-section > header > .title {
        line-height: 82px;
        font-size: 96px;
    }
    #container > .standard-section > header > .title:not(:last-child) { margin-bottom: 40px; }
}
@media (max-width : 749px) {
    #container > .standard-section > header:not(:last-child) { margin-bottom: 40px; }
    #container > .standard-section > header > .title {
        line-height: 44px;
        font-size: 50px;
    }
    #container > .standard-section > header > .title:not(:last-child) { margin-bottom: 25px; }
    #container > .standard-section > header > .description > br { display: none; }
}
@media (min-width : 600px) {
    #container > .standard-section > footer { margin-top: 100px; }
    #container > .standard-section { padding: 120px 60px 90px; }
}
@media (max-width : 599px) {
    #container > .standard-section > footer { margin-top: 60px; }
    #container > .standard-section { padding: 65px 15px 55px; }
}

/*----------------------------------------------------------------------------------------------------------------*/

#training {
	flex: 0 0 100%;
	max-width: 100%;
}

#training > header > .title { color: #89263C; }
#training > header > .description {
	max-width: 400px;
	margin-bottom: 40px;
}
#training > header > .link {
	display: inline-block;
	padding: 0 20px;
	
	background-color: #89263C;
	
	line-height: 40px;
	color: #FFF;
}

#training > .courses {}
#training > .courses > .title {
	margin-bottom: 30px;
	
	text-transform: uppercase;
	font-family: "Anton";
	font-size: 30px;
}
#training > .courses > .list {}
#training > .courses > .list > .slick-list > .slick-track { display: flex !important; }
#training > .courses > .list .course {
	display: flex; height: inherit !important;
	flex-direction: column;
	align-items: stretch;
	row-gap: 30px;
	margin: 0 15px;
	
	background-color: #9E2B45;
	
	color: #FFF;
}
#training > .courses > .list .course > .title {
	font-family: inherit;
	font-size: 16px;
	font-weight: 600;
	color: #FFF;
}
#training > .courses > .list .course > .description {
	margin-bottom: auto;
}
#training > .courses > .list .course > .link {
	text-decoration: underline;
	color: #FDFD71;
}

#training > footer { margin-top: 50px !important; }

@media (min-width: 1050px) {
	#training > .courses > .title { line-height: 80px; }
}
@media (min-width: 900px) {
	#training {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: 50px;
	}
	#training > header {
		flex: 0 0 450px;
		margin: 0 !important;
	}
	#training > header > .title {
		font-size: 60px !important;
		line-height: 54px !important;
	}
	#training > .courses { flex: 1; overflow: hidden; }
	#training > .courses > .list > .slick-list { margin: 0 -15px; }
	#training > .courses > .list > .slick-list > .slick-track { margin-left: 0; }
	#training > .courses > .list .course { padding: 60px 30px; }
	#training > footer { flex: 0 0 100%; }
}
@media (max-width: 899.99px) {
	#training > .courses > .list {
		max-width: 100vw; overflow: hidden;
		margin: 0 -15px;
	}
	#training > .courses > .list .course { padding: 45px 30px; }
}