body {
    background-color: #9E2B46;
    
    font-family: "Avenir";
	font-size: 14px;
    color: #222;
}
body.preload,
body[class *= 'open'] { overflow: hidden; }

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

#wrapper {
    min-height: 100vh;
    background-color: #FFF;
    
    transition: opacity .2s ease-out;
}
.customize-support #wrapper { min-height: calc(100vh - 32px); }
.preload #wrapper {
    opacity: 0;
    pointer-events: none;
}

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

#nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 200;
    display: flex;
    flex-direction: row;
    align-items: center;
    
    transition:
        padding          .2s ease-out,
        background-color .2s ease-out;
}
#nav.static {
    background-color: transparent;
    box-shadow: 0 0 3px transparent;
    pointer-events: none;
}
#nav.static > * { pointer-events: auto; }
#nav.scroll { background-color: #9E2B46; }
body:not([class *= 'open']) #nav.scroll { box-shadow: 0 0 3px rgba(0,0,0,.3); }
#nav > a {
    display: block;
    
    background-size: cover;
    background-repeat: no-repeat;
    
    transition:
        height .2s ease-out,
        width  .2s ease-out;
    
    cursor: pointer;
}
#nav > .home-btn {
    margin-right: auto;
    background-image: url("../../images/logo.light.svg");
}
#nav > .nav-btn { border-radius: 50%; overflow: hidden; }
#nav > .nav-btn.search-btn {
    margin-right: 20px;
    
    background-image: url("../../images/icons/nav.search.light.svg");
    background-size: 90%;
    background-position: center;
    background-repeat: no-repeat;
    
    transition: opacity .4s ease-out;
}
.search-open #nav > .nav-btn.search-btn {
    opacity: 0;
    pointer-events: none;
}
.search-closed #nav > .nav-btn.search-btn {
    opacity: 1;
    pointer-events: auto;
}
#nav > .nav-btn.menu-btn {
    position: relative;
    background-color: #820D2B; transition: background-color .2s ease-out;
}
#nav > .nav-btn.menu-btn:before,
#nav > .nav-btn.menu-btn:after {
    content: "";
    position: absolute; left: 50%; transform: translate(-50%, -50%);
    display: block; height: 5%; width: 45%;
    
    background-color: #FFF;
    border-radius: 1px;
    
    transition:
        transform .2s ease-out,
        background-color .2s ease-out,
        top .2s ease-out .2s;
}
#nav > .nav-btn.menu-btn:before { top: 42%; }
#nav > .nav-btn.menu-btn:after { top: 58%; }
body[class *= 'open'] #nav > .nav-btn.menu-btn { background-color: #820D2B; }
body[class *= 'open'] #nav > .nav-btn.menu-btn:before,
body[class *= 'open'] #nav > .nav-btn.menu-btn:after {
    transition:
        transform .2s ease-out .2s,
        top .2s ease-out;
}
body[class *= 'open'] #nav > .nav-btn.menu-btn:before { top: 50%; transform: translate(-50%, -50%) rotate(45deg); }
body[class *= 'open'] #nav > .nav-btn.menu-btn:after { top: 50%; transform: translate(-50%, -50%) rotate(-45deg); }

@media (min-width : 783px) {
    .customize-support #nav { top: 32px; }
    #nav.static { padding: 40px 55px 40px calc(50% - 66px); }
    #nav.scroll { padding: 10px 55px 10px calc(50% - 54.5px); }
    #nav.static > .home-btn { height: 69px; width: 132px; }
    #nav.static > .nav-btn { height: 56px; width: 56px; }
    #nav.scroll > .home-btn { height: 57px; width: 109px; }
    #nav.scroll > .nav-btn { height: 56px; width: 56px; }
}
@media (max-width : 782px) {
    #nav { padding: 15px; }
    .customize-support #nav { top: 46px; }
    #nav > .home-btn { height: 49.5px; width: 95px; }
    #nav > .nav-btn { height: 36px; width: 36px; }
}

#nav > .wpml-ls-legacy-dropdown {
	width: auto;
	margin-right: 20px;
}
#nav > .wpml-ls-legacy-dropdown a {
	padding: 5px 40px 5px 10px;
	
	background-color: transparent;
	border: none;
	
	font-size: 16px;
	line-height: 24px;
	font-weight: 700;
	color: #FFF;
}
#nav > .wpml-ls-legacy-dropdown > ul > li:hover > * { background-color: #820D2B; }
#nav > .wpml-ls-legacy-dropdown > ul > li:hover > ul { border: none; }

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

.cta-btn {
    position: relative; z-index: 1;
    display: inline-block;
    padding: 20px;
    
    text-transform: uppercase;
    line-height: 10px;
    font-size: 11px;
    letter-spacing: 3px;
    color: #000;
    
    cursor: pointer;
}
.cta-btn:before {
    content: '';
    position: absolute; top: 0; right: calc(100% - 70px); bottom: 0; left: 0; z-index: -1;
    background-color: #FDFD71;
    
    transition: right .2s ease-out;
}
.cta-btn:hover:before { right: 0; }

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

.cta-link { position: relative; }
.cta-link:after {
    content: '';
    position: absolute; bottom: -3px; left: 0; transform: scaleX(0); transform-origin: bottom left;
    width: 100%; height: 1px;
    
    background-color: #FFF;
    
    transition: transform 0.25s ease-out;
}
.cta-link.current:after,
.cta-link:hover:after {
    transform: scaleX(1);
}

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

#footer > .calltoaction {}
#footer > .calltoaction > .cta {
    position: relative;
    display: block;
    
    cursor: pointer;
}
#footer > .calltoaction > .cta > .thumbnail { width: 100%; }
#footer > .calltoaction > .cta > .title {
    position: absolute; top: 20px; left: 20px; right: 20px; bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
    text-align: center;
    text-transform: uppercase;
    font-family: "Anton";
    color: #FFF; transition: color .4s ease-out;
}
#footer > .calltoaction > .cta > .title > div > span {
    -webkit-text-fill-color: #FFF;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: transparent;
    
    transition:
        -webkit-text-fill-color   .4s ease-out,
        -webkit-text-stroke-color .4s ease-out;
}
#footer > .calltoaction > .cta:before {
    content: "";
    position: absolute; top: 0; left: 0; bottom: 0; right: 0; 
    display: block;
    
    background-color: #FFF;
    opacity: 0; transition: opacity .4s ease-out;
}
#footer > .calltoaction > .cta:hover:before { opacity: 1; }
#footer > .calltoaction > .cta:hover > .title { color: #9E2B46; }
#footer > .calltoaction > .cta:hover > .title > div > span {
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-color: #9E2B46;
}
@media (min-width : 783px) {
    #footer > .calltoaction {
        display: flex;
        flex-direction: row;
    }
    #footer > .calltoaction > .cta { flex: 1; }
    #footer > .calltoaction > .cta > .title {
        line-height: 54px;
        font-size: 62px;
    }
}
@media (max-width : 782px) {
    #footer > .calltoaction > .cta > .title {
        line-height: 36px;
        font-size: 40px;
    }
}

#footer > .menu.sitemap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #9E2B46;
}
#footer > .menu.sitemap > .home-btn {
    display: block;

    text-transform: uppercase;
    color: #FFF;
}
#footer > .menu.sitemap > .home-btn:before {
    content: "";
    display: block;
    margin-bottom: 5px;
    
    background-image: url("../../images/logo.light.svg");
    background-size: cover;
    background-repeat: no-repeat;
}
#footer > .menu.sitemap > .menu-item-wrapper { text-align: center; }
#footer > .menu.sitemap > .menu-item-wrapper > .menu-item {
    text-transform: uppercase;
    letter-spacing: 3px;
    line-height: 9px;
    font-size: 12px;
    color: #FFF;
}
#footer > .menu.sitemap > div > .linkedin {
    display: block;
    margin: 0 auto;
    
    background-image: url("../../images/social/linkedin.logo.svg");
    background-size: contain;
    background-repeat: no-repeat;
}
#footer > .menu.sitemap > div > .linkedin:hover { background-image: url("../../images/social/linkedin.logo.hover.svg"); }
@media (min-width : 1150px) {
    #footer > .menu.sitemap:before { width: 30%; }
}
@media (max-width : 1149px) and (min-width : 990px) {
    #footer > .menu.sitemap:before { width: 20%; }
}
@media (min-width : 990px) {
    #footer > .menu.sitemap {
        height: 116px;
        flex-direction: row;
        justify-content: space-around;
        padding: 30px 50px;
    }
    #footer > .menu.sitemap:before {
        content: '';
        order: 1;
        display: block;
    }
    #footer > .menu.sitemap > :nth-child(4) ~ * { order: 2; }
    #footer > .menu.sitemap > .home-btn {
        position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
        
        letter-spacing: 2.6px;
        font-size: 9px;
    }
    #footer > .menu.sitemap > .home-btn:before { height: 69px; width: 132px; }
    #footer > .menu.sitemap > div { flex: 1; }
    #footer > .menu.sitemap > div > .linkedin { height: 20px; width: 20px; }
}
@media (max-width : 989px) {
    #footer > .menu.sitemap {
        flex-direction: column;
        padding: 50px 25px 35px;
    }
    #footer > .menu.sitemap > :not(:last-child) { margin-bottom: 45px; }
    #footer > .menu.sitemap > .home-btn {
        letter-spacing: 2.4px;
        font-size: 7px;
    }
    #footer > .menu.sitemap > .home-btn:before { height: 57px; width: 109px; }
    #footer > .menu.sitemap > div > .linkedin { height: 17px; width: 17px; }
}

#footer > .menu.legal {
    display: flex;
    padding: 18px 25px;
    
    background-color: #800C2A;
}
#footer > .menu.legal > .menu-item {
    text-transform: uppercase;
    letter-spacing: 3px;
    line-height: 7px;
    font-size: 9px;
    color: #FFF;
}
@media (min-width : 783px) {
    #footer > .menu.legal {
        flex-direction: row;
        justify-content: center;
    }
    #footer > .menu.legal > .menu-item:not(:first-child) {
        position: relative;
        margin-left: 20px;
    }
    #footer > .menu.legal > .menu-item:not(:first-child):before {
        content: "";
        position: absolute; top: 0; left: -10px; transform: translateX(-50%);
        height: 7px; width: 2px;

        background-color: #FFF;
    }
}
@media (max-width : 782px) {
    #footer > .menu.legal {
        flex-direction: column;
        align-items: center;
    }
    #footer > .menu.legal > .menu-item { text-align: center; }
    #footer > .menu.legal > .menu-item:not(:last-child) { margin-bottom: 20px; }
}

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

.modal {
    position: fixed; top: 0; left: 0; bottom: 0; right: 0; z-index: 100;
    overflow: auto;
    
    background-color: #9E2B46;
    
    transition: opacity .4s ease-out;
}
@media (min-width : 783px) { .customize-support .modal { top: 32px; } }
@media (max-width : 782px) { .customize-support .modal { top: 46px; } }

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

#menu {
    padding-top: 190px;
    padding-bottom: 190px;
    
    transition:
        opacity       .4s ease-out,
        padding-left  .4s ease-out,
        padding-right .4s ease-out;
}
.menu-closed #menu {
    opacity: 0;
    pointer-events: none;
}
.menu-open #menu {
    opacity: 1;
    pointer-events: auto;
}
#menu > div {
    display: flex; min-height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}
#menu > div > .menu-item {
    text-transform: uppercase;
    font-family: "Anton";
    color: #FFF;
    
    transition: color .2s ease-out;
}
#menu > div > .menu-item:hover,
#menu > div > .menu-item.current { color: #F3EA69; }
@media (min-width : 783px) {
    #menu {
        padding-left: 160px;
        padding-right: 160px;
    }
    #menu > div > .menu-item {
        line-height: 58px;
        font-size: 68px;
    }
    #menu > div > .menu-item:not(:last-child) { margin-bottom: 30px; }
}
@media (max-width : 782px) {
    #menu {
        padding-left: 25px;
        padding-right: 25px;
    }
    #menu > div > .menu-item {
        line-height: 36px;
        font-size: 40px;
    }
    #menu > div > .menu-item:not(:last-child) { margin-bottom: 35px; }
}

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

#search { color: #FFF; }
.search-closed #search {
    opacity: 0;
    pointer-events: none;
}
.search-open #search {
    opacity: 1;
    pointer-events: auto;
}

#search > header > .title {
    display: block;
    
    text-transform: uppercase;
    text-align: center;
    font-family: "Anton";
}
#search > header > input {
    display: block; width: 100%; max-width: 680px; height: 55px;
    margin: 0 auto;
    padding: 0px 30px 0 60px;
    
    background-color: transparent;
    background-image: url("../../images/icons/nav.search.light.svg");
    background-position: left 5px center;
    background-repeat: no-repeat;
    border: solid 1px #FFF;

    font-size: 17px;
    color: #FFF;
}

#search > .spinner {
    position: absolute; left: 50%;
    display: none; height: 0; width: 0; overflow: visible;
    margin: 0 auto;
    
    pointer-events: none;
}
#search > .spinner > div {
    position: absolute; top: 50%; left: 50%;
    display: block; height: 60px; width: 60px;
    
    background-image: url("../../images/icons/spinner.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    
    animation: search-spinner 1.5s linear 0s infinite;
}
@keyframes search-spinner {
    0%   { transform: translate(-50%, -50%) rotate(0deg); }
    50%  { transform: translate(-50%, -50%) rotate(180deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

#search > .results > section:not(:last-child) { margin-bottom: 75px; }
#search > .results > section > header { margin-bottom: 50px; }
#search > .results > section > header > h2 {
    margin: 0;
    
    line-height: 26px;
    font-family: "Anton";
    font-size: 30px;
    color: #EAC2CD;
}
#search > .results > section > div { margin-bottom: 65px; }
#search > .results > section > div:empty { margin-top: -30px; }
#search > .results > section > div:empty:after {
    content: "Aucun résultat trouvé";
    
    text-align: center;
    font-family: "Anton";
    font-size: 25px;
    color: #EAC2CD;
}
#search > .results > section > footer { text-align: center; }

#search > .results > section:last-child { padding-bottom: 75px; }
#search > .results > section:last-child {
    position: relative;
    padding-bottom: 80px;
}
#search > .results > section:last-child:before {
    content: "";
    position: absolute; top: 155px; left: -50px; right: -50px; bottom: 0;
    background-color: #CFC9CC;
}
#search > .results > section:last-child > div { position: relative; }

@media (min-width : 900px) {
    #search > header { padding: 195px 50px 140px; }
    #search > header > .title {
        margin-bottom: 70px;
        
        font-size: 48px;
        line-height: 43px;
    }
    #search > .results {
        padding-left: 50px;
        padding-right: 50px;
    }
    #search > .results > section:last-child:before { left: -50px; right: -50px; }
}
@media (max-width : 899px) {
    #search > header { padding: 165px 15px 75px; }
    #search > header > .title {
        margin-bottom: 70px;
        
        font-size: 48px;
        line-height: 43px;
    }
    #search > .results {
        padding-left: 15px;
        padding-right: 15px;
    }
    #search > .results > section:last-child:before { left: -15px; right: -15px; }
}

#search > .results > .team > .profiles {
    display: flex;
    flex-wrap: wrap;
}
#search > .results > .team > .profiles > .profile {
    position: relative;
    display: block;
    border: solid 1px #FFF;
    
    transition: color .4s ease-out;
}
#search > .results > .team > .profiles > .profile[href] {
    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;
}
#search > .results > .team > .profiles > .profile:hover { color: #FFF; }
#search > .results > .team > .profiles > .profile > .thumbnail {
    padding-top: 128%;
    
    background-position: top center;
    background-size: cover;
    
    clip-path: circle(27% at 50% 30%); transition: clip-path .4s ease-out;
}
#search > .results > .team > .profiles > .profile:hover > .thumbnail { clip-path: circle(90% at 50% 30%); }
#search > .results > .team > .profiles > .profile > .thumbnail ~ div {
    position: absolute; left: 20px; right: 20px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
#search > .results > .team > .profiles > .profile > .name { font-weight: 700; }

@media (min-width : 900px) {
    #search > .results > .team > .profiles > .profile { flex: 0 0 calc((100% + 4px) / 5); }
    #search > .results > .team > .profiles > .profile:not(:nth-child(5n)) { margin-left: -1px; }
    #search > .results > .team > .profiles > .profile:nth-child(5n) ~ .profile { margin-top: -1px; }
}
@media (max-width : 899px) and (min-width : 750px) {
    #search > .results > .team > .profiles > .profile { flex: 0 0 calc((100% + 3px) / 4); }
    #search > .results > .team > .profiles > .profile:not(:nth-child(4n)) { margin-left: -1px; }
    #search > .results > .team > .profiles > .profile:nth-child(4n) ~ .profile { margin-top: -1px; }
}
@media (max-width : 749px) and (min-width : 500px) {
    #search > .results > .team > .profiles > .profile { flex: 0 0 calc((100% + 2px) / 3); }
    #search > .results > .team > .profiles > .profile:not(:nth-child(3n)) { margin-left: -1px; }
    #search > .results > .team > .profiles > .profile:nth-child(3n) ~ .profile { margin-top: -1px; }
}
@media (min-width : 500px) {
    #search > .results > .team > .profiles > .profile > .name {
        bottom: 65px;
        font-size: 15px;
    }
    #search > .results > .team > .profiles > .profile > .role { bottom: 40px; }
}
@media (max-width : 499px) {
    #search > .results > .team > .profiles > .profile > .name { bottom: 45px; }
    #search > .results > .team > .profiles > .profile > .role { bottom: 20px; }
    
    #search > .results > .team > .profiles > .profile { flex: 0 0 calc((100% + 1px) / 2); }
    #search > .results > .team > .profiles > .profile:not(:nth-child(2n)) { margin-left: -1px; }
    #search > .results > .team > .profiles > .profile:nth-child(2n) ~ .profile { margin-top: -1px; }
}

#search > .results > .activities > .activities {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
#search > .results > .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;
}
#search > .results > .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;
}
#search > .results > .activities > .activities > .activity > .thumbnail:after {
    content: "";
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    
    background-color: #9E2B46;
    opacity: .5;
}
#search > .results > .activities > .activities > .activity:hover > .thumbnail { opacity: 1; }
#search > .results > .activities > .activities > .activity > .thumbnail ~ div {
    position: relative;
    transition: color .2s ease-out;
}
#search > .results > .activities > .activities > .activity:hover > .thumbnail ~ div { color: #FFF; }
#search > .results > .activities > .activities > .activity > .index { color: #FEFD71; }
#search > .results > .activities > .activities > .activity > .name { word-wrap: break-word; }
@media (min-width : 900px) {
    #search > .results > .activities > .title { margin-bottom: 40px; }
    #search > .results > .activities > .activities > .activity { flex: 0 0 calc((100% + 3px) / 4); }
    #search > .results > .activities > .activities > .activity:nth-child(4) ~ .activity { margin-top: -1px; }
    #search > .results > .activities > .activities > .activity:not(:nth-child(4n)) { margin-right: -1px; }
}
@media (max-width : 899px) and (min-width : 600px) {
    #search > .results > .activities > .title { margin-bottom: 26px; }
    #search > .results > .activities > .activities > .activity { flex: 0 0 calc((100% + 2px) / 3); }
    #search > .results > .activities > .activities > .activity:nth-child(3) ~ .activity { margin-top: -1px; }
    #search > .results > .activities > .activities > .activity:not(:nth-child(3n)) { margin-right: -1px; }
}
@media (min-width : 600px) {
    #search > .results > .activities > .activities > .activity { min-height: 160px; }
    #search > .results > .activities > .activities > .activity { padding: 30px; }
    #search > .results > .activities > .activities > .activity > .index {
        margin-bottom: 16px;

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

        font-size: 19px;
    }
}
@media (max-width : 599px) {
    #search > .results > .activities > .activities > .activity {
        flex: 0 0 calc((100% + 1px) / 2);
        padding: 20px;
    }
    #search > .results > .activities > .activities > .activity:nth-child(2) ~ .activity { margin-top: -1px; }
    #search > .results > .activities > .activities > .activity:not(:nth-child(2n)) { margin-right: -1px; }
    #search > .results > .activities > .activities > .activity > .index {
        margin-bottom: 10px;
        
        line-height: 34px;
        font-size: 26px;
    }
}

#search > .results > .news {}
#search > .results > .news > .articles {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
#search > .results > .news > .articles:empty { margin-bottom: 120px; }
#search > .results > .news > .articles > .article { color: #111; }
#search > .results > .news > .articles > .article > .date {
    margin-bottom: 20px;
    
    font-family: "Anton";
    font-size: 20px;
    color: #9E2B46;
}
#search > .results > .news > .articles > .article > .thumbnail {
    margin-bottom: 25px;
    
    background-position: center;
    background-size: cover;
}
#search > .results > .news > .articles > .article:nth-child(odd) > .thumbnail { height: 130px; }
#search > .results > .news > .articles > .article:nth-child(even) > .thumbnail { height: 90px; }
#search > .results > .news > .articles > .article > .categories { margin-bottom: 15px; }
#search > .results > .news > .articles > .article > .title {
    display: -webkit-box; overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;

    font-family: "Anton";
    font-size: 20px;
    letter-spacing: 1px;
}
@media (min-width : 900px) {
    #search > .results > .news > .articles > .article { flex: 0 0 calc((100% - 180px) / 4); }
    #search > .results > .news > .articles > .article:nth-child(4n) ~ .article { margin-top: 60px; }
    #search > .results > .news > .articles > .article:nth-child(4n) ~ .article:nth-child(even) { position: relative; top: -40px; }
    #search > .results > .news > .articles > .article:not(:nth-child(4n)) { margin-right: 60px; }
    #search > .results > .news > .articles > .article:nth-child(-n+4) > .date,
    #search > .results > .news > .articles > .article:nth-child(-n+4) > .categories:nth-child(2) { color: #EAC2CD; }
    #search > .results > .news > .articles > .article:nth-child(-n+4) > .categories:nth-child(2) {
        margin-top: -5px;
        margin-bottom: 25px;
    }
}
@media (max-width : 899px) and (min-width : 600px) {
    #search > .results > .news > .articles > .article { flex: 0 0 calc((100% - 120px) / 3); }
    #search > .results > .news > .articles > .article:nth-child(3n) ~ .article { margin-top: 60px; }
    #search > .results > .news > .articles > .article:nth-child(3n) ~ .article:nth-child(even) { position: relative; top: -40px; }
    #search > .results > .news > .articles > .article:not(:nth-child(3n)) { margin-right: 60px; }
    #search > .results > .news > .articles > .article:nth-child(-n+3) > .date,
    #search > .results > .news > .articles > .article:nth-child(-n+3) > .categories:nth-child(2) { color: #EAC2CD; }
    #search > .results > .news > .articles > .article:nth-child(-n+3) > .categories:nth-child(2) {
        margin-top: -5px;
        margin-bottom: 25px;
    }
}
@media (max-width : 599px) and (min-width : 500px) {
    #search > .results > .news > .articles > .article { flex: 0 0 calc((100% - 60px) / 2); }
    #search > .results > .news > .articles > .article:nth-child(2n) ~ .article { margin-top: 60px; }
    #search > .results > .news > .articles > .article:nth-child(2n) ~ .article:nth-child(even) { position: relative; top: -40px; }
    #search > .results > .news > .articles > .article:not(:nth-child(2n)) { margin-right: 60px; }
    #search > .results > .news > .articles > .article:nth-child(-n+2) > .date,
    #search > .results > .news > .articles > .article:nth-child(-n+2) > .categories:nth-child(2) { color: #EAC2CD; }
    #search > .results > .news > .articles > .article:nth-child(-n+2) > .categories:nth-child(2) {
        margin-top: -5px;
        margin-bottom: 25px;
    }
}
@media (max-width : 499px) {
    #search > .results > .news > .articles > .article { flex: 0 0 100%; }
    #search > .results > .news > .articles > .article:not(:first-child) { margin-top: 40px; }
    #search > .results > .news > .articles > .article:first-child > .date,
    #search > .results > .news > .articles > .article:first-child > .categories:nth-child(2) { color: #EAC2CD; }
    #search > .results > .news > .articles > .article:first-child > .categories:nth-child(2) {
        margin-top: -5px;
        margin-bottom: 25px;
    }
}

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

#newsletter {
    z-index: 300;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
    background-color: rgba(207,201,204,.7);
    
    transition: opacity .4s ease-out;
}
.newsletter-closed #newsletter {
    opacity: 0;
    pointer-events: none;
}
.newsletter-open #newsletter {
    opacity: 1;
    pointer-events: auto;
}

#newsletter > form {
    position: relative;
    max-width: 670px; width: 100%;
    padding: 35px;
    background-color: #9E2B46;
    color: #FFF;
}
#newsletter > form > .close-btn {
    position: absolute; top: 0; right: 0;
    display: block; height: 50px; width: 50px;
    
    background-image: url("../../images/icons/close.svg");
}
#newsletter > form > .title {
    margin-bottom: 45px;
    
    text-align: center;
    line-height: 20px;
    font-family: "Anton";
    font-size: 23px;
}

#newsletter > form > div:not(.spinner):not(.response):not(:first-child) { margin-top: 22px; }

#newsletter > form > .themes,
#newsletter > form > .submit,
#newsletter > form > .field,
#newsletter > form > .close-btn {
    transition: opacity .4s ease-out;
}
#newsletter > form.sending > .themes,
#newsletter > form.sending > .submit,
#newsletter > form.sending > .field,
#newsletter > form.sending > .close-btn {
    opacity: 0;
    pointer-events: none;
}

#newsletter > form > .spinner,
#newsletter > form > .response { display: none; }

#newsletter > form > .submit { display: flex; width: 100%; }
#newsletter > form > .submit > input[type="text"] {
    display: block; flex: 1; height: 37px;
    padding-left: 20px;
    padding-right: 20px;
    
    background: none;
    border: solid 1px #FFF;
}
#newsletter > form > .submit > input[type="submit"] {
    display: block; height: 37px; flex: 0 0 37px;
    margin-left: -1px;
    
    background-color: #FEFD71;
    background-image: url("../../images/icons/submit.svg");
    background-repeat: no-repeat;
    background-size: contain;
    border: solid 1px #FFF;
}

#newsletter > form > .spinner {
    position: absolute; top: 50%; left: 50%;
    height: 100px; width: 100px;
    
    background-image: url("../../images/icons/spinner.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    
    animation: newsletter-spinner 1.5s linear 0s infinite;
    pointer-events: none;
}
@keyframes newsletter-spinner {
    0%   { transform: translate(-50%, -50%) rotate(0deg); }
    50%  { transform: translate(-50%, -50%) rotate(180deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

#newsletter > form > .response {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 400px;
    padding: 20px;
    
    border: solid 1px #FFF;
    
    text-align: center;
}

#newsletter > form .checkbox-field { position: relative; }
#newsletter > form .checkbox-field > input {
    position: absolute;
    display: block; height: 0; width: 0; overflow: hidden;
    opacity: 0;
    pointer-events: none;
}
#newsletter > form .checkbox-field > input + label {
    position: relative;
    display: block;
    padding-left: 25px;
    
    line-height: 15px;
}
#newsletter > form .checkbox-field > input + label:before {
    content: '';
    position: absolute; top: 0; left: 0;
    box-sizing: border-box;
    display: block; height: 15px; width: 15px;
    padding: 2px;
    
    background-clip: content-box;
    border: solid 1px #FFF;
}
#newsletter > form .checkbox-field > input:checked + label:before { background-color: #FFF; }
#newsletter > form .checkbox-field > input + label > a { text-decoration: underline; }

@media (min-width : 900px) {
    #newsletter { padding: 50px; }
    #newsletter > form > .themes {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        column-gap: 30px;
    }
    #newsletter > form > .themes > .field { flex: 0 0 calc(50% - 15px); }
    #newsletter > form > .themes > .field:nth-child(2) ~ .field { margin-top: 20px; }
}
@media (max-width : 899px) {
    #newsletter { padding: 15px; }
    #newsletter > form > .themes > .field:not(:last-child) { margin-bottom: 20px; }
}

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

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


















