@charset "utf-8";

/*! normalize.css v9.0.1 | MIT License | github.com/csstools/normalize.css */
html {
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

main {
    display: block
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button,
input,
select {
    margin: 0
}

button {
    overflow: visible;
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

fieldset {
    padding: .35em .75em .625em
}

input {
    overflow: visible
}

legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

select {
    text-transform: none
}

textarea {
    margin: 0;
    overflow: auto
}

[type=checkbox],
[type=radio] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -.2rem
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

::-moz-focus-inner {
    border-style: none;
    padding: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

details,
dialog {
    display: block
}

dialog {
    background-color: #fff;
    border: solid;
    color: #000;
    height: -moz-fit-content;
    height: -webkit-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content
}

dialog:not([open]) {
    display: none
}

summary {
    display: list-item
}

[hidden] {
    display: none
}

@font-face {
    font-family: TC;
    src: url(fonts/TCM.woff) format("woff"), url(fonts/TCM.woff2) format("woff2");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: TC;
    src: url(fonts/TCMI.woff) format("woff"), url(fonts/TCMI.woff2) format("woff2");
    font-weight: 400;
    font-style: italic
}

@font-face {
    font-family: TC;
    src: url(fonts/TCB.woff) format("woff"), url(fonts/TCB.woff2) format("woff2");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: TC;
    src: url(fonts/TCBI.woff) format("woff"), url(fonts/TCBI.woff2) format("woff2");
    font-weight: 700;
    font-style: italic
}

@font-face {
    font-family: TCC;
    src: url(fonts/condensed/TCCM.woff) format("woff"), url(fonts/condensed/TCCM.woff2) format("woff2");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: TCC;
    src: url(fonts/condensed/TCCB.woff) format("woff"), url(fonts/condensed/TCCB.woff2) format("woff2");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: TCC;
    src: url(fonts/condensed/TCCEB.woff) format("woff"), url(fonts/condensed/TCCEB.woff2) format("woff2");
    font-weight: 900;
    font-style: normal
}

*,
:after,
:before {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

:after,
:before {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body,
html {
    cursor: default
}

body {
    margin: 0
}

nav ol,
nav ul {
    list-style: none
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

::-moz-selection {
    color: #fff;
    background-color: #275ca8;
    text-shadow: none
}

::selection {
    color: #fff;
    background-color: #275ca8;
    text-shadow: none
}

code {
    cursor: text
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle
}

figure {
    margin: 0
}

figure embed,
figure img,
figure object,
figure video {
    max-width: 100%;
    height: auto
}

svg {
    -webkit-transition: fill .3s ease;
    transition: fill .3s ease;
    color: inherit;
    fill: currentColor
}

table {
    border-collapse: collapse
}

button,
input,
input[type=file]+label,
optgroup,
select,
textarea {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button,
input[type=button],
input[type=checkbox],
input[type=file],
input[type=file]+label,
input[type=radio],
input[type=submit],
label {
    cursor: pointer
}

button[disabled],
input[disabled] {
    cursor: default
}

input:focus,
select:focus {
    outline: 0
}

textarea {
    resize: vertical
}

template {
    display: none
}

[tabindex],
a,
area,
button,
input,
input[type=file]+label,
label,
select,
summary,
textarea {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

a {
    -webkit-transition: .3s ease;
    transition: .3s ease;
    -webkit-transition-property: opacity, color, background-color;
    transition-property: opacity, color, background-color;
    cursor: pointer;
    color: #e60000;
    -webkit-tap-highlight-color: #000
}

a:hover {
    color: #000
}

a[href=tel] {
    text-decoration: underline
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-hidden=false][hidden]:not(:focus) {
    clip: rect(0, 0, 0, 0);
    display: inherit;
    position: absolute
}

[aria-disabled] {
    cursor: default
}

.hide {
    display: none !important
}

.visually-hidden,
input[type=checkbox],
input[type=file],
input[type=radio] {
    position: absolute;
    border: 0;
    padding: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap
}

html {
    font-size: .7246376811594203vw
}

html.mobile {
    font-size: 10px !important
}

body>footer {
    float: left;
    position: relative;
    width: 100%;
    color: #fff;
    background-color: #e60000;
    padding: 9rem calc(50% - 63.75rem) 3.5rem
}

body>footer .footer-main {
    float: left;
    width: 100%;
    font-size: 0;
    margin-bottom: 6.5rem
}

body>footer .footer-main .logo-footer {
    background-image: url(images/logo-footer.png);
    background-size: contain;
    width: 11.9rem;
    height: 8rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: 3rem
}

body>footer .footer-main h2 {
    font-size: 1.4rem;
    font-weight: 500;
    text-transform: none;
    color: #fff
}

body>footer .footer-main a {
    color: #fff
}

body>footer .footer-main>div {
    display: inline-block;
    vertical-align: top
}

body>footer .footer-main .contact {
    vertical-align: middle
}

body>footer .footer-main .contact>div {
    float: left;
    width: 18.5rem;
    margin-right: 6rem
}

body>footer .footer-main .contact>div h2,
body>footer .footer-main .contact>div p {
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-family: TC;
    font-weight: 400
}

body>footer .footer-main .contact>div .text {
    margin-top: 3rem
}

body>footer .footer-main .meaningful {
    width: 15rem;
    margin-right: 2.5rem
}

body>footer .footer-main .meaningful h2 {
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 400
}

body>footer .footer-main .meaningful .text {
    font-size: 1.6rem;
    line-height: 2.2rem
}

body>footer .footer-main .meaningful .text a {
    text-decoration: none
}

body>footer .footer-main .social-links {
    float: right
}

body>footer .footer-main .social-links h2 {
    margin-bottom: 1.2rem;
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-family: TC;
    font-weight: 400
}

body>footer .footer-main .social-links ul {
    list-style: none;
    padding: 0;
    margin: 0
}

body>footer .footer-main .social-links ul li {
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem
}

body>footer .footer-main .social-links ul li:last-of-type {
    margin: 0 0 1rem
}

body>footer .footer-main .social-links ul li a {
    float: left;
    width: 3.5rem;
    height: 3.5rem;
    font-size: 0;
    background-size: 100%
}

body>footer .footer-main .social-links ul li .tab-svg-object {
    width: 3.5rem;
    pointer-events: none
}

body>footer .footer-main .social-links ul li.insta a {
    background-image: url(images/picto-rs-insta.svg)
}

body>footer .footer-main .social-links ul li.yt a {
    background-image: url(images/picto-rs-yt.svg)
}

body>footer .footer-main .social-links ul li.fb a {
    background-image: url(images/picto-rs-fb.svg)
}

body>footer .footer-main .social-links ul li.tw a {
    background-image: url(images/picto-rs-tw.svg)
}

body>footer .footer-main .social-links ul li.in a {
    background-image: url(images/picto-rs-in.svg)
}

body>footer .footer-secondary {
    float: left;
    width: 100%
}

body>footer .footer-secondary .legal-links {
    float: left
}

body>footer .footer-secondary .legal-links ul {
    list-style: none;
    padding: 0 0 0 15rem;
    margin: 0
}

body>footer .footer-secondary .legal-links ul li {
    float: left
}

body>footer .footer-secondary .legal-links ul li a {
    font-size: 1.2rem;
    line-height: 3rem;
    font-weight: 400;
    text-transform: uppercase;
    text-decoration: none;
    color: #f79db1;
    margin-right: 2.5rem
}

body>footer .footer-secondary .legal-links ul li a:hover {
    color: #fff
}

body>footer .footer-secondary .text {
    float: right;
    font-size: 1.6rem;
    line-height: 3rem;
    font-weight: 400
}

body>footer .footer-secondary .text a {
    color: #fff
}

.mobile body>footer {
    font-size: 1.6rem;
    text-align: center;
    padding: 6rem 2.5rem 7rem
}

.mobile body>footer .footer-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 5rem
}

.mobile body>footer .footer-main .logo-footer {
    margin-right: 0;
    margin-bottom: 5.5rem
}

.mobile body>footer .footer-main h2 {
    font-size: 1.6rem
}

.mobile body>footer .footer-main .contact>div {
    width: 100%;
    margin-right: 0
}

.mobile body>footer .footer-main .contact .text {
    margin-top: .8rem;
    font-size: 1.6rem;
    line-height: 1.7
}

.mobile body>footer .footer-main .meaningful {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5rem
}

.mobile body>footer .footer-main .social-links {
    width: 100%
}

.mobile body>footer .footer-main .social-links h2 {
    font-size: 2.2rem
}

.mobile body>footer .footer-main .social-links ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.mobile body>footer .footer-main .social-links ul li {
    float: left;
    display: inline-block;
    margin-left: .5rem;
    margin-right: .5rem
}

.mobile body>footer .footer-main .social-links ul li a {
    width: 4.3rem;
    height: 4.3rem;
    background-size: 100%
}

.mobile body>footer .footer-secondary .legal-links {
    width: 100%;
    margin-bottom: 4.5rem
}

.mobile body>footer .footer-secondary .legal-links ul {
    padding-left: 0
}

.mobile body>footer .footer-secondary .legal-links ul li {
    float: none;
    width: 100%
}

.mobile body>footer .footer-secondary .legal-links ul li a {
    font-size: 1.4rem;
    line-height: 2.2;
    margin: 0
}

.mobile body>footer .footer-secondary .text {
    font-size: 1.6rem;
    line-height: 1.8;
    float: none
}

body>header {
    height: 10.2rem;
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 63.75rem);
    padding-right: calc(50% - 63.75rem);
    font-size: 0;
    background-color: #fff;
    position: fixed;
    z-index: 99;
    top: 0;
    -webkit-transition: top .3s ease;
    transition: top .3s ease
}

body>header.scrolldown {
    top: -10.2rem
}

body>header:before {
    content: "";
    width: 0;
    height: 100%
}

body>header #logo,
body>header:before {
    display: inline-block;
    vertical-align: middle
}

body>header #logo {
    width: 15.3rem;
    height: 5.8rem;
    background-image: url(images/logo.svg);
    background-size: 100%
}

body>header .nav-toggle {
    display: none
}

body>header .ha-header-language-switcher {
    float: right;
    height: 100%;
    line-height: 10.2rem
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click {
    width: auto;
    display: inline-block;
    border-bottom: .2rem solid #0d0d0d
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a {
    border: none;
    padding: 0 1.7rem 0 0
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a span {
    font-size: 1.6rem;
    font-weight: 700
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a:after {
    width: .9rem;
    height: .6rem;
    background-image: url(images/picto-arrow-select.svg);
    right: 0;
    top: .3rem
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a:focus,
body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a:hover {
    background: transparent
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
    border-top: none;
    margin-top: .8rem
}

body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
    font-weight: 400
}

body>header nav {
    float: right
}

body>header nav ul {
    float: left;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0
}

body>header nav ul li {
    float: left;
    margin-right: 5rem
}

body>header nav ul li a {
    font-size: 1.6rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #0d0d0d;
    line-height: 10.2rem;
    text-decoration: none
}

body>header nav ul li a.active,
body>header nav ul li a:hover {
    text-decoration: underline
}

body.admin-bar>header {
    top: 3.2rem
}

body.admin-bar>header.scrolldown {
    top: -7rem
}

.mobile body>header {
    height: 7.5rem;
    padding: 0 2.5rem !important
}

.mobile body>header.scrolldown {
    top: -7.5rem
}

.mobile body>header #logo {
    width: 6.5rem;
    height: 3.7rem;
    background-size: 100%
}

.mobile body>header .nav-toggle {
    display: block;
    float: right;
    width: 3rem;
    height: 100%;
    line-height: 7.5rem;
    background-image: url(images/picto-nav-toggle.svg);
    background-size: 3rem;
    background-position: 50%
}

.mobile body>header .nav-toggle.nav-open {
    background-image: url(images/picto-nav-toggle-close.svg);
    background-size: 2.2rem;
    background-position: 50%
}

.mobile body>header .ha-header-language-switcher {
    display: none;
    line-height: 7.5rem;
    margin-right: 2.5rem
}

.mobile body>header nav {
    display: none;
    width: 100vw;
    background-color: #fff;
    position: absolute;
    z-index: 99;
    left: 0;
    top: 7.5rem
}

.mobile body>header nav ul li {
    width: 100%;
    margin: 0;
    border-top: .2rem solid #f5f5f5
}

.mobile body>header nav ul li a {
    float: left;
    width: 100%;
    line-height: 4.8rem;
    padding-left: 2.5rem;
    padding-right: 2.5rem
}

.mobile body>header nav ul li a:hover {
    text-decoration: none
}

.mobile body.admin-bar>header {
    top: 0
}

.mobile body.admin-bar>header.scrolldown {
    top: -7.5rem
}

.mobile body.admin-bar>header.scrollTop {
    top: 4.6rem
}

body {
    background-color: #fff;
    color: #0d0d0d;
    font-family: TC;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.25;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden
}

body:after {
    content: "";
    display: block;
    clear: both
}

.mobile body {
    font-size: 1.8rem;
    line-height: 1.5;
    max-width: 100vw
}

main#content {
    min-height: calc(100vh - 35.65rem);
    padding-top: 10.2rem
}

.admin-bar main#content {
    min-height: calc(100vh - 38.85rem)
}

main#content section {
    float: left;
    position: relative;
    width: 100%;
    padding: 5rem calc(50% - 63.75rem)
}

main#content section strong {
    font-weight: 700;
    color: #e60000
}

.mobile main#content {
    min-height: 0;
    padding-top: 7.5rem
}

.mobile main#content section {
    width: 100%;
    padding: 4rem 2.5rem
}

.button,
button,
input[type=button],
input[type=file]+label,
input[type=reset],
input[type=submit] {
    -webkit-transition: .3s ease ease;
    transition: .3s ease ease;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;
    display: inline-block;
    width: auto;
    font-family: TC;
    height: 4.8rem;
    font-size: 1.4rem;
    line-height: 5.2rem;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .4rem;
    text-align: center;
    background-color: #e60000;
    color: #fff;
    border: 0;
    padding: 0 3rem
}

.button:hover,
button:hover,
input[type=button]:hover,
input[type=file]+label:hover,
input[type=reset]:hover,
input[type=submit]:hover {
    background-color: #f5f5f5;
    color: #e60000
}

.button:active,
button:active,
input[type=button]:active,
input[type=file]+label:active,
input[type=reset]:active,
input[type=submit]:active {
    -webkit-box-shadow: none;
    box-shadow: none
}

.mobile .button,
.mobile button,
.mobile input[type=button],
.mobile input[type=file]+label,
.mobile input[type=reset],
.mobile input[type=submit] {
    padding-left: 2.5rem;
    padding-right: 2.5rem
}

a.see-more {
    background-image: url(images/discover.png);
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

a.see-more,
a.see-more:hover {
    background-size: 12.5rem 4.4rem;
    width: 12.5rem;
    height: 4.4rem
}

a.see-more:hover {
    background-image: url(images/discover-hover.png)
}

a.link-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.link-video {
    width: 8.2rem;
    height: 8.2rem;
    cursor: pointer;
    background-image: url(images/play.png);
    background-size: 6.2rem 6.2rem;
    width: 6.2rem;
    height: 6.2rem;
    background-size: 100%
}

a {
    text-decoration: none
}

a:hover {
    text-decoration: underline
}

.optanon-alert-box-wrapper button {
    padding-left: 0;
    padding-right: 0
}

.optanon-show-settings-popup-wrapper {
    height: auto;
    position: fixed;
    z-index: 999;
    left: 0;
    bottom: 0
}

form .form-item .description {
    margin-top: .3rem;
    font-size: 1.3rem;
    font-style: italic;
    color: silver
}

form .form-item .error {
    border-width: 1px
}

label.form-required:after {
    content: "*";
    margin-left: .5rem
}

input.form-text[disabled],
input.form-type-item[disabled] {
    background-color: #eee
}

.menu {
    list-style: none
}

.messages {
    position: relative;
    float: left;
    width: 100%;
    clear: both;
    border-radius: .3rem;
    padding: 1.6rem;
    font-size: 1.5rem
}

.messages__icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 1rem
}

.messages__icon svg {
    fill: currentColor !important
}

.messages a {
    color: inherit;
    text-decoration: underline
}

.messages li {
    line-height: 2.4rem
}

.messages--status {
    background-color: #bde5f8;
    color: #00529b
}

.messages--success {
    background-color: #dff2bf;
    color: #4f8a10
}

.messages--warning {
    background-color: #feefb3;
    color: #9f6000
}

.messages--error {
    background-color: #ffd2d2;
    color: #d8000c
}

.pager {
    position: relative;
    float: left;
    width: 100%;
    margin: 4rem 0;
    text-align: center
}

.pager ul {
    list-style: none
}

.pager ul li {
    display: inline-block
}

ul.tabs {
    height: 3.5rem;
    list-style: none;
    position: fixed;
    z-index: 999;
    left: 0;
    top: 2.5rem;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateY(-100%);
    transform: rotate(90deg) translateY(-100%);
    width: 28rem
}

ul.tabs li {
    position: relative;
    top: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    float: left;
    margin-right: .8rem;
    padding-bottom: .5rem;
    border-radius: .6rem .6rem 0 0;
    font-weight: 500;
    background-color: #fff;
    color: #e60000;
    border: 1px solid #e60000;
    border-bottom: none;
    text-transform: uppercase;
    -webkit-box-shadow: 0 0 0 0 transparent;
    box-shadow: 0 0 0 0 transparent
}

ul.tabs li a {
    display: inline-block;
    padding: 0 1rem;
    height: 3.5rem;
    font-size: 1.4rem;
    line-height: 3.5rem
}

ul.tabs li:hover {
    top: -.5rem;
    color: #000;
    border-color: #000;
    -webkit-box-shadow: 0 -1px .3rem 1px rgba(0, 0, 0, .25);
    box-shadow: 0 -1px .3rem 1px rgba(0, 0, 0, .25)
}

ul.tabs li.is-active {
    background-color: #e60000;
    color: #fff;
    font-weight: 700;
    border-color: #d20c35
}

ul.tabs li.is-active a {
    color: #fff
}

ul.tabs li.is-active:hover {
    border-color: #000;
    background-color: #fff;
    color: #000
}

ul.tabs li.is-active:hover a {
    color: #000
}

form.form .select2.select2-container .select2-selection,
form.form input {
    height: 5rem;
    font-size: 1.8rem;
    line-height: 5.2rem;
    border: none;
    border-radius: .4rem;
    background-color: #f5f5f5;
    padding-left: 1.6rem;
    padding-right: 1.6rem
}

form.form .select2.select2-container .select2-selection:focus,
form.form input:focus {
    -webkit-box-shadow: none;
    box-shadow: none
}

form.form .select2.select2-container .select2-selection::-webkit-input-placeholder,
form.form input::-webkit-input-placeholder {
    color: #9c9ea0
}

form.form .select2.select2-container .select2-selection::-moz-placeholder,
form.form input::-moz-placeholder {
    color: #9c9ea0
}

form.form .select2.select2-container .select2-selection:-ms-input-placeholder,
form.form input:-ms-input-placeholder {
    color: #9c9ea0
}

form.form .select2.select2-container .select2-selection::-ms-input-placeholder,
form.form input::-ms-input-placeholder {
    color: #9c9ea0
}

form.form .select2.select2-container .select2-selection::placeholder,
form.form input::placeholder {
    color: #9c9ea0
}

.select2-hidden-accessible {
    display: none
}

.select2 {
    float: left
}

.select2 .select2-selection,
.select2 .select2.select2-container {
    float: left;
    width: 100%;
    cursor: pointer
}

.select2 .select2-selection {
    position: relative
}

.select2 .select2-selection__arrow {
    float: left;
    width: 2.5rem;
    height: 1.6rem;
    background-image: url(images/picto-select.svg);
    background-size: 100%;
    position: absolute;
    right: 1.6rem;
    top: calc(50% - .8rem)
}

.select2.select2-container--disabled .select2-selection span {
    opacity: .3
}

.select2-container--open .select2-dropdown {
    float: left
}

.select2-container--open .select2-dropdown .select2-search {
    display: none
}

.select2-container--open .select2-dropdown .select2-results ul {
    list-style: none;
    border: 1px solid #9c9ea0;
    background-color: #fff;
    padding: 1rem 1.6rem;
    margin: 0
}

.select2-container--open .select2-dropdown .select2-results ul li {
    font-size: 1.6rem;
    line-height: 3rem;
    cursor: pointer
}

.select2-container--open .select2-dropdown .select2-results ul li:hover {
    color: #275ca8
}

form fieldset {
    max-width: 50rem;
    margin-bottom: 3.5rem
}

form fieldset legend {
    font-weight: 700;
    text-transform: uppercase
}

form .form-item {
    margin-bottom: 2rem;
    width: auto
}

form .form-item:after {
    content: "";
    display: block;
    clear: both
}

form .form-item label {
    float: left;
    min-width: 15rem
}

form .form-item input,
form .form-item select,
form .form-item textarea {
    float: right
}

input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
select,
textarea {
    font-family: TC;
    font-size: inherit;
    background-color: #fff;
    color: #5a5a5a;
    outline: 0;
    vertical-align: top;
    padding: 0 1rem;
    border: 1px solid #5a5a5a;
    border-radius: .25rem;
    -webkit-transition: color 5s ease;
    transition: color 5s ease;
    -webkit-transition: .3s ease ease;
    transition: .3s ease ease;
    -webkit-transition-property: opacity, color, background-color, border-color, -webkit-box-shadow;
    transition-property: opacity, color, background-color, border-color, -webkit-box-shadow;
    transition-property: opacity, box-shadow, color, background-color, border-color;
    transition-property: opacity, box-shadow, color, background-color, border-color, -webkit-box-shadow;
    -webkit-box-shadow: 0 0 0 0 transparent;
    box-shadow: 0 0 0 0 transparent
}

input[type=date]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=time]:focus,
input[type=url]:focus,
select:focus,
textarea:focus {
    color: #0d0d0d;
    border-color: #0d0d0d;
    -webkit-box-shadow: 0 0 .2rem 0 #1e90ff;
    box-shadow: 0 0 .2rem 0 #1e90ff
}

input[type=date]::-ms-clear,
input[type=email]::-ms-clear,
input[type=number]::-ms-clear,
input[type=password]::-ms-clear,
input[type=search]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=text]::-ms-clear,
input[type=time]::-ms-clear,
input[type=url]::-ms-clear,
select::-ms-clear,
textarea::-ms-clear {
    display: none
}

input {
    line-height: 3rem
}

textarea {
    line-height: 1.25;
    padding-top: .5em;
    padding-bottom: .5em
}

select[multiple],
select[size],
textarea {
    height: auto
}

textarea {
    min-height: 5rem
}

input[type=checkbox]:active,
input[type=checkbox]:focus,
input[type=file]:active,
input[type=file]:focus,
input[type=radio]:active,
input[type=radio]:focus {
    -webkit-box-shadow: none;
    box-shadow: none
}

input[disabled],
select[disabled],
textarea[disabled] {
    background-color: #eee
}

button[disabled],
input[disabled],
option[disabled],
select[disabled],
select[disabled] option,
textarea[disabled] {
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #888;
    cursor: default
}

input[type=checkbox]+label,
input[type=radio]+label {
    position: relative;
    padding-left: 2rem
}

input[type=checkbox]+label:after,
input[type=checkbox]+label:before,
input[type=radio]+label:after,
input[type=radio]+label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 1.6rem;
    height: 1.6rem
}

input[type=checkbox]+label:after,
input[type=radio]+label:after {
    border: 1px solid #5a5a5a
}

input[type=radio]+label:after,
input[type=radio]+label:before {
    border-radius: 50%
}

input[type=radio]+label:before {
    padding: .4rem;
    background-clip: content-box;
    background-color: transparent;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease
}

input[type=radio]:checked+label:before {
    background-color: #1e90ff
}

input[type=checkbox]+label:after {
    border-radius: .25rem
}

input[type=checkbox]+label:before {
    content: "✔";
    font-size: 2rem;
    text-align: center;
    line-height: 1.8rem;
    font-family: font-system-ui;
    color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: color .3s ease;
    transition: color .3s ease
}

input[type=checkbox]:checked+label:before {
    color: #1e90ff
}

input[value][pattern]:valid,
input[value][type=date]:valid,
input[value][type=email]:valid,
input[value][type=number]:valid,
input[value][type=range]:valid,
input[value][type=tel]:valid,
input[value][type=time]:valid,
input[value][type=url]:valid {
    -webkit-box-shadow: 0 0 .2rem 0 green;
    box-shadow: 0 0 .2rem 0 green
}

input[value][pattern]:invalid,
input[value][type=date]:invalid,
input[value][type=email]:invalid,
input[value][type=number]:invalid,
input[value][type=range]:invalid,
input[value][type=tel]:invalid,
input[value][type=time]:invalid,
input[value][type=url]:invalid {
    -webkit-box-shadow: 0 0 .2rem 0 red;
    box-shadow: 0 0 .2rem 0 red
}

input[value][pattern]:-moz-ui-invalid,
input[value][pattern]:user-invalid,
input[value][type=date]:-moz-ui-invalid,
input[value][type=date]:user-invalid,
input[value][type=email]:-moz-ui-invalid,
input[value][type=email]:user-invalid,
input[value][type=number]:-moz-ui-invalid,
input[value][type=number]:user-invalid,
input[value][type=range]:-moz-ui-invalid,
input[value][type=range]:user-invalid,
input[value][type=tel]:-moz-ui-invalid,
input[value][type=tel]:user-invalid,
input[value][type=time]:-moz-ui-invalid,
input[value][type=time]:user-invalid,
input[value][type=url]:-moz-ui-invalid,
input[value][type=url]:user-invalid {
    box-shadow: 0 0 .2rem 0 red;
    border-color: #dc143c;
    background-color: pink;
    color: #dc143c
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #0d0d0d;
    -webkit-transition: opacity 5s ease;
    transition: opacity 5s ease;
    opacity: .6
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #0d0d0d;
    -moz-transition: opacity 5s ease;
    transition: opacity 5s ease;
    opacity: .6
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #0d0d0d;
    -ms-transition: opacity 5s ease;
    transition: opacity 5s ease;
    opacity: .6
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    color: #0d0d0d;
    -ms-transition: opacity 5s ease;
    transition: opacity 5s ease;
    opacity: .6
}

input::placeholder,
textarea::placeholder {
    color: #0d0d0d;
    -webkit-transition: opacity 5s ease;
    transition: opacity 5s ease;
    opacity: .6
}

input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
    opacity: .4
}

input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
    opacity: .4
}

input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
    opacity: .4
}

input:focus::-ms-input-placeholder,
textarea:focus::-ms-input-placeholder {
    opacity: .4
}

input:focus::placeholder,
textarea:focus::placeholder {
    opacity: .4
}

input:-moz-placeholder-shown,
textarea:-moz-placeholder-shown {
    background-color: #ffe;
    border: 1px solid #5a5a5a
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    background-color: #ffe;
    border: 1px solid #5a5a5a
}

input:placeholder-shown,
textarea:placeholder-shown {
    background-color: #ffe;
    border: 1px solid #5a5a5a
}

input[type=color] {
    border: 1px solid #5a5a5a;
    border-radius: .25rem;
    width: 5rem;
    height: 3rem;
    padding: 0;
    background-color: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=color]::-moz-color-swatch {
    border: none
}

input[type=color]::-webkit-color-swatch {
    border: none
}

input[type=color]::-webkit-color-swatch-wrapper {
    padding: 0
}

input[type=search]::-webkit-search-decoration {
    display: none
}

#video-container {
    display: none
}

#video-container .plyr--video,
#video-container iframe.video-player-url {
    display: none;
    width: 100rem;
    position: fixed;
    z-index: 999;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

#video-container iframe.video-player-url {
    height: 60rem;
    border: none
}

#video-container video {
    display: none
}

#video-container.container-opened {
    width: 100vw;
    height: 100vh;
    display: block;
    position: fixed;
    z-index: 900;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, .5)
}

#video-container.container-opened .close {
    width: 3.2rem;
    height: 3.2rem;
    position: fixed;
    z-index: 20;
    right: 9rem;
    top: 9rem;
    background-image: url(images/picto-close.png);
    background-size: 2.7rem 2.7rem;
    background-position: 50%;
    background-size: 100%;
    color: #fff;
    cursor: pointer
}

#video-container.source-upload .plyr--video,
#video-container.source-upload video,
#video-container.source-url iframe.video-player-url {
    display: block
}

.mobile #video-container {
    padding: 0 !important
}

.mobile #video-container .plyr--video,
.mobile #video-container iframe.video-player-url {
    width: calc(100vw - 5rem);
    height: 60vw
}

.mobile #video-container.container-opened .close {
    position: fixed;
    right: 2.5rem;
    top: 2.5rem
}

.plyr.plyr--full-ui .plyr__controls {
    display: block;
    padding: 3.5rem 5rem 4rem;
    background: transparent
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item {
    display: inline-block;
    vertical-align: middle
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item input {
    color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item[type=button]:hover {
    background: transparent
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item[type=button] svg {
    width: 100%;
    height: 100%
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item[data-plyr=play] {
    width: 4.3rem;
    height: 4.3rem;
    padding: 0;
    margin-right: 1.2rem
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume {
    width: 4.3rem;
    height: 4.3rem;
    max-width: none;
    margin-left: 0;
    overflow: hidden;
    position: relative;
    -webkit-transition: width .3s ease;
    transition: width .3s ease
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume input {
    width: 5rem;
    margin: 0;
    opacity: 0;
    position: absolute;
    left: 6.5rem;
    top: calc(50% - .95rem);
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume .plyr__control[data-plyr=mute] {
    width: 4.3rem;
    height: 4.3rem;
    padding: 0;
    position: absolute;
    left: 0;
    top: calc(50% - 2.15rem)
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume .plyr__control[data-plyr=mute] svg {
    width: 100%;
    height: 100%
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume .plyr__control[data-plyr=mute]:hover {
    background: transparent
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume:hover {
    width: 11.5rem
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume:hover input {
    opacity: 1
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__volume:hover+.plyr__progress__container {
    width: calc(100% - 27.5rem)
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__progress__container {
    width: calc(100% - 20.3rem);
    margin-left: 2rem;
    -webkit-transition: width .3s ease;
    transition: width .3s ease
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__progress__container .plyr__progress {
    margin: 0
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__progress__container .plyr__progress input,
.plyr.plyr--full-ui .plyr__controls .plyr__controls__item.plyr__progress__container .plyr__progress progress {
    width: 100%
}

.plyr.plyr--full-ui .plyr__controls .plyr__controls__item[data-plyr=fullscreen] {
    width: 4.3rem;
    height: 4.3rem;
    padding: 0;
    margin-left: 2rem
}

.plyr.plyr--full-ui:before {
    content: "";
    width: 8.6rem;
    height: 8.6rem;
    background-image: url(images/plyr-pause.svg);
    background-size: 100%;
    position: absolute;
    z-index: 9;
    left: calc(50% - 4.3rem);
    top: calc(50% - 4.3rem);
    opacity: 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease
}

.plyr.plyr--full-ui.plyr--paused:before {
    opacity: 1
}

.slick-slider.slick-initialized .slick-dots {
    font-size: 0;
    text-align: center;
    list-style: none;
    padding: 0;
    margin: 3.5rem 0 0
}

.slick-slider.slick-initialized .slick-dots li {
    display: inline-block
}

.slick-slider.slick-initialized .slick-dots li a {
    width: 1rem;
    height: 1rem;
    float: left;
    background-color: #9c9ea0;
    border-radius: .5rem;
    margin-left: .5rem;
    margin-right: .5rem;
    -webkit-transform: scale(.6);
    transform: scale(.6)
}

.slick-slider.slick-initialized .slick-dots li.slick-active a {
    background-color: #e60000;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.mobile .slick-slider.slick-initialized .slick-dots li a {
    width: 1.2rem;
    height: 1.2rem
}

p {
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-margin-after: 1.5rem;
    margin-block-end: 1.5rem;
    margin: 0 0 1.5rem
}

ol,
ul {
    -webkit-padding-start: 4rem;
    padding-inline-start: 4rem;
    padding-left: 4rem
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: TCC;
    font-weight: 700;
    text-transform: uppercase;
    color: #0d0d0d;
    margin: 0
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: inherit;
    font-weight: inherit;
    font-size: inherit
}

h1 {
    font-size: 4.4rem
}

.mobile h1 {
    font-size: 3.6rem;
    line-height: 1.2
}

h2 {
    font-size: 4rem
}

.mobile h2 {
    font-size: 3.6rem;
    line-height: 1.2
}

h3 {
    font-size: 3.8rem
}

h4 {
    font-size: 1.6rem
}

.section-title {
    color: #e60000
}

main#content .page--contact section {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 41.75rem);
    padding-right: calc(50% - 41.75rem)
}

main#content .page--contact section#section-header {
    height: 42rem;
    overflow: hidden;
    padding: 0 !important
}

main#content .page--contact section#section-header img {
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

main#content .page--contact section#section-form {
    padding-top: 8rem;
    padding-bottom: 5rem
}

main#content .page--contact section#section-form h1 {
    color: #e60000;
    font-size: 4rem;
    margin-bottom: 4rem
}

main#content .page--contact section#section-form form .form-item-field-search {
    float: left;
    width: 100%;
    margin-bottom: 4.5rem;
    position: relative
}

main#content .page--contact section#section-form form .form-item-field-search input {
    width: 100%
}

main#content .page--contact section#section-form form .form-item-field-search:after {
    content: "";
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    right: 1.6rem;
    top: 1.6rem;
    background-image: url(images/picto-loupe.svg);
    background-size: 100%
}

main#content .page--contact section#section-form form .form-item-field-search+p {
    float: left;
    width: 100%;
    font-size: 3rem;
    margin-bottom: 2rem
}

main#content .page--contact section#section-form form .office-filters-options>.form-item {
    float: left;
    width: calc(33.333% - 1.07rem);
    margin-right: 1.6rem;
    margin-bottom: 0
}

main#content .page--contact section#section-form form .office-filters-options>.form-item:last-of-type {
    margin-right: 0
}

main#content .page--contact section#section-form form .office-filters-options>.form-item .select2-container {
    width: 100% !important
}

main#content .page--contact section#section-offices {
    text-align: center;
    padding-top: 5rem;
    padding-bottom: 8rem
}

main#content .page--contact section#section-offices h2 {
    font-family: TC;
    font-size: 3rem;
    line-height: 3.3rem;
    font-weight: 400;
    text-transform: none;
    text-align: left;
    margin-bottom: 6rem
}

main#content .page--contact section#section-offices .offices-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 6.5rem
}

main#content .page--contact section#section-offices .offices-list .office {
    border-right: 1px solid #ed254f;
    padding: 5rem 3rem 0
}

main#content .page--contact section#section-offices .offices-list .office h3 {
    font-family: TC;
    font-size: 2rem;
    line-height: 2.9rem;
    font-weight: 700;
    text-transform: none
}

main#content .page--contact section#section-offices .offices-list .office div {
    font-size: 2rem;
    line-height: 2.9rem
}

main#content .page--contact section#section-offices .offices-list .office:nth-of-type(-n+3) {
    padding-top: 0
}

main#content .page--contact section#section-offices .offices-list .office:nth-of-type(3n+1) {
    padding-left: 0
}

main#content .page--contact section#section-offices .offices-list .office:nth-of-type(3n+2) {
    width: 29rem
}

main#content .page--contact section#section-offices .offices-list .office:nth-of-type(3n) {
    border-right: 0;
    padding-right: 0
}

.mobile main#content .page--contact section#section-header {
    height: 32rem
}

.mobile main#content .page--contact section#section-header img {
    width: auto;
    min-width: 100%;
    height: 100%
}

.mobile main#content .page--contact section#section-form {
    padding: 4rem 2.5rem
}

.mobile main#content .page--contact section#section-form h1 {
    padding-left: 1rem;
    padding-right: 1rem;
    margin-bottom: 4rem
}

.mobile main#content .page--contact section#section-form form .form-item-field-search {
    margin-bottom: 4rem
}

.mobile main#content .page--contact section#section-form form .form-item-field-search+p {
    font-size: 2.4rem;
    line-height: 1.25
}

.mobile main#content .page--contact section#section-form form .office-filters-options>.form-item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2.5rem
}

.mobile main#content .page--contact section#section-form form .office-filters-options>.form-item:last-of-type {
    margin-bottom: 0
}

.mobile main#content .page--contact section#section-offices {
    padding: 2rem 5rem 8rem
}

.mobile main#content .page--contact section#section-offices h2 {
    margin-bottom: 6.5rem
}

.mobile main#content .page--contact section#section-offices .offices-list {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 6rem
}

.mobile main#content .page--contact section#section-offices .offices-list .office {
    border-right: none;
    border-bottom: 1px solid #ed254f;
    padding: 0 0 3.5rem;
    margin-bottom: 3.5rem
}

.mobile main#content .page--contact section#section-offices .offices-list .office:nth-of-type(-n+3) {
    height: auto
}

.mobile main#content .page--contact section#section-offices .offices-list .office:nth-of-type(3n+2) {
    width: 100%
}

.mobile main#content .page--contact section#section-offices .offices-list .office:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0
}

.page-user #content .tabs {
    float: none
}

.page-user #content .profile,
.page-user #content .tabs,
.page-user #content form {
    width: 96rem;
    margin: 2rem auto auto
}

.page-user .profile>dl,
.page-user .profile h3 {
    position: relative;
    float: left;
    width: 100%;
    margin-bottom: 1rem
}

body.home h1.page-title {
    display: none
}

body.home #section-header {
    padding: 0 !important
}

body.home #section-header .slideshow {
    float: left;
    width: 100%
}

body.home #section-header .slideshow .slide {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 63.75rem);
    padding-right: calc(50% - 63.75rem);
    height: 66rem;
    color: #fff;
    background-size: cover;
    background-position: 50%
}

body.home #section-header .slideshow .slide-content {
    width: 41rem;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-left: 6rem
}

body.home #section-header .slideshow .slide-content .logo-meaningful {
    background-image: url(images/logo-meaningful-new.svg);
    width: 14rem;
    height: 4rem;
    background-size: 14rem 4rem;
    margin-bottom: 3rem
}

body.home #section-header .slideshow .slide-content .logo-meaningful-brand {
    background-image: url(images/logo-meaningful-brand.png);
    background-size: 16.3rem 4rem;
    width: 16.3rem;
    height: 4rem;
    margin-bottom: 3rem
}

body.home #section-header .slideshow .slide-content h2 {
    font-size: 4.4rem;
    font-weight: 700;
    color: #fff
}

body.home #section-header .slideshow .slide-content .text {
    font-size: 1.8rem;
    line-height: 2.6rem;
    margin-top: 3.1rem
}

body.home #section-header .slideshow .slide-content .see-more {
    float: left;
    color: #fff;
    margin-top: 4.5rem
}

body.home #section-header .slideshow .slide-content .link-video {
    width: 6.2rem;
    height: 6.2rem;
    margin-top: 4.5rem
}

body.home #section-header .slideshow .slide.style-black {
    color: #0d0d0d
}

body.home #section-header .slideshow .slide.style-black .slide-content .logo-meaningful {
    background-image: url(images/logo-meaningful-black.png);
    background-size: 14rem 4.1rem;
    width: 14rem;
    height: 4.1rem
}

body.home #section-header .slideshow .slide.style-black .slide-content h2 {
    color: #0d0d0d
}

body.home #section-header .slideshow .slide.style-black .slide-content .see-more {
    color: #0d0d0d;
    background-image: url(images/discover-black.svg)
}

body.home #section-header .slideshow .slide.style-black .slide-content .see-more:hover {
    background-image: url(images/discover-hover-black.svg)
}

body.home #section-header .slideshow .slide.style-black .slide-content .link-video {
    background-image: url(images/picto-play-black.svg)
}

body.home #section-header .scroll-down {
    width: 2.7rem;
    height: 2rem;
    background-image: url(images/picto-scroll.svg);
    background-size: 100%;
    cursor: pointer;
    position: absolute;
    bottom: 3.5rem;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
}

body.home #section-posts {
    padding-top: 4rem !important;
    padding-bottom: 2rem !important
}

body.home #section-about {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important
}

body.home #section-about .section-content {
    width: 62.5rem;
    float: left;
    font-size: 1.8rem;
    line-height: 1.5;
    padding-left: 6rem
}

body.home #section-about .section-content .text p {
    font-size: 2rem;
    line-height: 2.8rem;
    margin-bottom: 3rem
}

body.home #section-about .section-content .text p a strong {
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

body.home #section-about .section-content .text p a strong:hover {
    color: #000
}

body.home #section-about .section-content .text p strong {
    font-weight: 700
}

body.home #section-about .section-content .text p strong a {
    color: #e60000;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

body.home #section-about .section-content .text p strong a:hover {
    color: #000
}

body.home #section-about .section-content .about {
    font-size: 0
}

body.home #section-about .section-content .about strong {
    font-weight: 700 !important;
    color: #0d0d0d
}

body.home #section-about .section-content .about span,
body.home #section-about .section-content .about strong {
    font-size: 1.8rem
}

body.home #section-about blockquote {
    width: 41.5rem;
    float: right;
    font-size: 3.4rem;
    line-height: 1.5;
    padding: 4.5rem 5rem 4.5rem 6.5rem;
    margin-top: 6.5rem;
    margin-right: 8rem;
    position: relative
}

body.home #section-about blockquote:after,
body.home #section-about blockquote:before {
    content: "";
    font-size: 0;
    opacity: .5
}

body.home #section-about blockquote:before {
    background-image: url(images/picto-quote-open.png);
    background-size: 14.3rem 14.3rem;
    width: 14.3rem;
    height: 14.3rem;
    position: absolute;
    left: -1.2rem;
    top: -1.2rem
}

body.home #section-about blockquote:after {
    background-image: url(images/picto-quote-close.png);
    background-size: 9.5rem 9.5rem;
    width: 9.5rem;
    height: 9.5rem;
    position: absolute;
    right: 1.2rem;
    bottom: 1.2rem
}

body.home #section-about blockquote p {
    margin-bottom: 0;
    font-size: 3.8rem/4.9rem
}

body.home #section-about blockquote p strong {
    font-weight: 400 !important
}

body.home #section-team {
    background: #f5f5f5;
    padding-top: 7rem !important;
    padding-bottom: 6rem !important
}

body.home #section-team .section-title,
body.home #section-team .team-members,
body.home #section-team .text {
    padding-left: 6rem
}

body.home #section-team .text {
    font-size: 2.4rem;
    line-height: 1.6;
    color: #9c9ea0;
    margin-bottom: 4.5rem
}

body.home #section-team .text strong {
    font-weight: 400 !important
}

body.home #section-team .section-title {
    margin-bottom: 4.5rem
}

body.home #section-team .team-members {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    float: left;
    width: 100%
}

body.home #section-team .team-members .member:nth-of-type(4n) {
    margin-right: 0
}

body.home #section-team .team-members .member:nth-of-type(n+5) {
    margin-top: 4rem
}

body.home #section-team .team-members.team-members-global {
    position: relative;
    padding-top: 13.5rem
}

body.home #section-team .team-members.team-members-global h2 {
    position: absolute;
    left: 0;
    top: 4.5rem
}

body.home #section-team .team-members.team-members-global .button-wrapper {
    float: left;
    margin: 3rem 0;
    text-align: center;
    width: 100%
}

body.home #section-team .team-members.team-members-global .button-wrapper a.button {
    margin-top: 4.5rem;
    background-color: #fff;
    color: #e60000
}

body.home #section-team .team-members.team-members-global .button-wrapper a.button:hover {
    background-color: #e60000;
    color: #fff
}

body.home #section-work {
    padding: 7rem 0 4.1rem !important
}

body.home #section-work .section-title {
    padding-left: 6rem
}

body.home #section-work .section-title-container {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 63.75rem);
    padding-right: calc(50% - 63.75rem);
    margin-bottom: 3.8rem
}

body.home #section-work .slideshow {
    float: left;
    width: 100%
}

body.home #section-work .slideshow .slick-slide {
    width: 120rem;
    margin-left: 3rem;
    margin-right: 3rem
}

body.home #section-news {
    text-align: center;
    background: #f5f5f5;
    padding-top: 11rem !important;
    padding-bottom: 5rem !important
}

body.home #section-news .section-title {
    text-align: left;
    padding-left: 6rem;
    margin-bottom: 4rem
}

body.home #section-news .news-list {
    float: left;
    width: 100%;
    margin-bottom: 5rem
}

body.home #section-news .news-list .news {
    width: calc(25% - 1rem);
    margin-right: 1.2rem
}

body.home #section-news .news-list .news:nth-of-type(4n) {
    margin-right: 0
}

body.home #section-news .news-list .news:nth-of-type(n+5) {
    margin-top: 2rem
}

body.home #section-news button {
    background-color: #fff;
    color: #e60000;
    font-weight: 700;
    font-size: 1.6rem
}

body.home #section-news button:hover {
    background-color: #e60000;
    color: #fff
}

.mobile body.home #section-header {
    margin-bottom: 3rem
}

.mobile body.home #section-header .slideshow .slide {
    height: auto;
    padding: 4.5rem 2.5rem !important;
    position: relative;
    z-index: 1
}

.mobile body.home #section-header .slideshow .slide:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, .3)
}

.mobile body.home #section-header .slideshow .slide .slide-content {
    float: left;
    width: 100%;
    position: static;
    -webkit-transform: none;
    transform: none;
    margin-left: 0;
    margin-bottom: 3.5rem
}

.mobile body.home #section-header .slideshow .slide .slide-content .logo-meaningful,
.mobile body.home #section-header .slideshow .slide .slide-content .logo-meaningful-brand {
    margin-bottom: 2.5rem
}

.mobile body.home #section-header .slideshow .slide .slide-content h2 {
    font-size: 3.6rem
}

.mobile body.home #section-header .slideshow .slide .slide-content .text {
    line-height: 1.7;
    margin-top: 2.5rem
}

.mobile body.home #section-header .slideshow .slide .slide-content .see-more {
    margin-top: 2.5rem
}

.mobile body.home #section-header .slideshow .slide .slide-content .link-video {
    float: right;
    margin-top: 2.5rem
}

.mobile body.home #section-posts {
    padding: 0 !important
}

.mobile body.home #section-posts .post {
    width: 100%;
    height: auto;
    min-height: 30rem;
    padding: 3rem 2.5rem
}

.mobile body.home #section-posts .post:first-of-type {
    margin-right: 0;
    margin-bottom: 3rem
}

.mobile body.home #section-posts .post .post-content {
    width: calc(100% - 5rem);
    height: auto;
    padding-bottom: 1rem;
    position: static
}

.mobile body.home #section-posts .post .post-content h2 {
    width: 21rem;
    font-size: 2.4rem;
    line-height: 1.2
}

.mobile body.home #section-posts .post .post-content .link-video {
    bottom: 3rem;
    right: 2rem;
    width: 5.8rem;
    height: 5.8rem;
    margin-top: 2rem
}

.mobile body.home #section-about {
    padding-top: 6rem;
    padding-bottom: 6rem
}

.mobile body.home #section-about .section-content {
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    margin-bottom: 3.5rem
}

.mobile body.home #section-about blockquote {
    width: 100%;
    font-size: 2.8rem;
    line-height: 1.4;
    padding: 4rem 0 3.5rem 5rem;
    margin: 0
}

.mobile body.home #section-team {
    padding-top: 4rem !important;
    padding-bottom: 5rem !important
}

.mobile body.home #section-team .section-title,
.mobile body.home #section-team .text {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.mobile body.home #section-team .text {
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 5.5rem
}

.mobile body.home #section-team .section-title {
    margin-bottom: 2rem
}

.mobile body.home #section-team .team-members {
    text-align: center;
    padding-left: 0;
    padding-right: 0
}

.mobile body.home #section-team .team-members .member {
    margin-bottom: 4rem
}

.mobile body.home #section-team .team-members .member:nth-of-type(n+5) {
    margin-top: 0
}

.mobile body.home #section-team .team-members .member:last-of-type {
    margin-bottom: 0
}

.mobile body.home #section-team .team-members.team-members-global h2 {
    text-align: left;
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.mobile body.home #section-team .team-members.team-members-global .button-wrapper a {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.mobile body.home #section-work {
    padding-top: 4rem !important;
    padding-bottom: 8rem !important
}

.mobile body.home #section-work .section-title-container {
    margin-bottom: 3rem
}

.mobile body.home #section-work .section-title-container .section-title {
    padding-left: 4rem;
    padding-right: 4rem
}

.mobile body.home #section-work .slideshow .slick-slide {
    width: 100vw;
    margin-left: 0;
    margin-right: 0
}

.mobile body.home #section-news {
    padding: 3rem 1rem 5rem !important
}

.mobile body.home #section-news .section-title {
    padding-left: 3rem;
    padding-right: 3rem;
    margin-bottom: 3rem
}

.mobile body.home #section-news .news-list {
    text-align: center;
    margin-bottom: 4.5rem
}

.mobile body.home #section-news .news-list .news {
    float: none;
    display: inline-block;
    width: 100%;
    margin-right: 0;
    margin-bottom: 2rem
}

.mobile body.home #section-news .news-list .news:nth-of-type(n+5) {
    margin-top: 0
}

.mobile body.home #section-news .news-list .news:last-of-type {
    margin-bottom: 0
}

.landing-page .business-section {
    background-color: #f6f6f6
}

.landing-page .business-section .title-block {
    font-size: 3.4rem;
    line-height: 3.7rem;
    color: #455161;
    width: 33%
}

.landing-page .business-section .title-block strong {
    color: #455161 !important
}

.landing-page .business-section .title-block-mobile {
    display: none
}

.landing-page .business-section .title-block-desktop {
    height: 39.1rem;
    padding: 4rem
}

.mobile .landing-page .business-section .title-block-desktop {
    display: none !important
}

.mobile .landing-page .business-section .title-block-mobile {
    display: block;
    font-size: 2.8rem;
    line-height: 3.1rem;
    width: 100%;
    margin-bottom: 3.5rem
}

.landing-page .business-section .slick-list {
    padding: 0 5% 0 0 !important
}

.landing-page .business-section .slick-slide {
    margin-right: 1rem
}

.landing-page .business-section .business-block-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.mobile .landing-page .business-section .business-block-wrapper {
    display: block
}

.landing-page .business-section .business-block-wrapper .business-block {
    position: relative;
    width: 33%;
    height: 39.1rem;
    padding: 4rem;
    cursor: pointer
}

.landing-page .business-section .business-block-wrapper .business-block-arrow {
    position: absolute;
    left: 4rem;
    bottom: 4rem;
    background-image: url(images/arrow-white.svg);
    background-size: contain;
    background-position: 50%;
    width: 3.2rem;
    height: 3.2rem
}

.mobile .landing-page .business-section .business-block-wrapper .business-block-arrow {
    position: absolute;
    left: 2.6rem;
    bottom: 2.6rem;
    width: 2.2rem;
    height: 2.2rem
}

.mobile .landing-page .business-section .business-block-wrapper .business-block {
    width: 80%;
    height: 46rem;
    padding: 2.6rem
}

.landing-page .business-section .business-block-wrapper .business-block-inner {
    width: 100%;
    opacity: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background-color: #f1f1f1;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out
}

.landing-page .business-section .business-block-wrapper .business-block:hover .business-block-inner {
    opacity: 1
}

.landing-page .business-section .business-block-wrapper .business-block-red {
    background-color: #ee3c62
}

.landing-page .business-section .business-block-wrapper .business-block-blue {
    background-color: #00319e
}

.landing-page .business-section .business-block-wrapper .business-block-cyan {
    background-color: #00d1d6
}

.landing-page .business-section .business-block-wrapper .business-block-green {
    background-color: #9ed000
}

.landing-page .business-section .business-block-wrapper .business-block-grey {
    background-color: #3d3d3d
}

.landing-page .business-section .business-block-wrapper .business-block-title {
    font-size: 3.4rem;
    line-height: 3.7rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff
}

.mobile .landing-page .business-section .business-block-wrapper .business-block-title {
    font-size: 2.8rem;
    line-height: 3.1rem
}

.landing-page .business-section .business-block-wrapper .business-block-subtitle {
    font-size: 2.2rem;
    line-height: 2.4rem;
    color: #fff;
    margin-top: 2rem
}

.mobile .landing-page .business-section .business-block-wrapper .business-block-subtitle {
    font-size: 1.8rem;
    line-height: 1.6rem
}

.landing-page .business-section .business-block-wrapper .business-block-text {
    font-size: 2.2rem;
    color: #0d0d0d;
    padding: 2.3rem;
    overflow: hidden
}

.mobile .landing-page .business-section .business-block-wrapper .business-block-text {
    font-size: 2rem;
    line-height: 2.2rem
}

.landing-page .business-section .business-block-wrapper .business-block-text ul {
    list-style-type: none;
    padding: 0
}

.landing-page .business-section .business-block-wrapper .business-block-text ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1rem
}

.landing-page .business-section .business-block-wrapper .business-block-text ul li:before {
    content: "";
    display: block;
    background-image: url(images/check-black.svg);
    background-size: contain;
    background-position: 50%;
    width: 2.6rem;
    height: 2.6rem;
    min-width: 2.6rem;
    margin-right: 1.7rem
}

.body-landing .select2-container--default .select2-results>.select2-results__options {
    max-height: 50rem !important;
    overflow-y: auto
}

.mobile .landing-page .contact-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important
}

.landing-page .contact-section .select2 {
    display: block;
    width: 100% !important;
    margin-top: 4rem;
    margin-bottom: 4rem
}

.landing-page .contact-section .select2-selection {
    display: block;
    width: 100% !important;
    height: 5rem;
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    border-radius: .5rem;
    font-size: 2.2rem;
    line-height: 5rem;
    float: none;
    background-color: rgba(147, 147, 142, .071);
    color: #93938e
}

.mobile .landing-page .contact-section .select2-selection {
    font-size: 2rem
}

.landing-page .contact-section .offices-list {
    margin-top: 7rem
}

.landing-page .contact-section .contact-title {
    font-size: 6rem;
    line-height: 6.5rem;
    font-weight: 700;
    text-align: center;
    margin-top: 3rem;
    margin-bottom: 3.6rem
}

.mobile .landing-page .contact-section .contact-title {
    font-size: 4rem;
    line-height: 4.3rem;
    margin-top: 2rem;
    margin-bottom: 2rem
}

.landing-page .contact-section .office-block {
    padding: 4.4rem 5rem
}

.mobile .landing-page .contact-section .office-block {
    padding: 4.4rem 4rem
}

.landing-page .contact-section .linkedin-block-title,
.landing-page .contact-section .office-block-title {
    font-size: 3rem;
    line-height: 3.3rem
}

.landing-page .contact-section .linkedin-block-title {
    margin: 4.3rem 4.9rem
}

.mobile .landing-page .contact-section .linkedin-block-title {
    margin: 4.3rem 3.3rem 2.3rem 3.8rem
}

.landing-page .contact-section .linkedin-block-text {
    font-size: 2.1rem;
    line-height: 2.6rem;
    margin: 4.3rem 4.9rem
}

.landing-page .contact-section .linkedin-block-text a {
    color: #375989
}

.mobile .landing-page .contact-section .linkedin-block-text {
    margin: 2.3rem 3.3rem 4.7rem 3.8rem
}

.landing-page .contact-section .linkedin-block-image {
    width: 57.5rem;
    height: 22.11538rem;
    background-size: cover;
    margin: 4.3rem 2rem
}

.mobile .landing-page .contact-section .linkedin-block-image {
    width: 88vw;
    height: 47.31183vw;
    margin: 2.3rem 2rem
}

.landing-page .contact-section .contact-blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.landing-page .contact-section .contact-blocks .contact-block {
    width: 100%;
    max-width: 61.5rem;
    background-color: #f5f5f5
}

.landing-page .contact-section .contact-blocks .contact-block:first-child {
    margin-right: 4rem
}

.mobile .landing-page .contact-section .contact-blocks .contact-block:first-child {
    margin-right: 0;
    margin-bottom: 2rem
}

.landing-page .header-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.landing-page .header-section .header-title {
    font-size: 8rem;
    line-height: 8rem;
    font-weight: 700;
    color: #00319e;
    margin-bottom: 2.9rem;
    max-width: 100rem
}

.mobile .landing-page .header-section .header-title {
    font-size: 4rem;
    line-height: 4.3rem
}

.landing-page .header-section .header-introduction {
    font-size: 2.8rem;
    line-height: 3.4rem;
    color: #455161;
    margin-bottom: 5rem
}

.mobile .landing-page .header-section .header-introduction {
    font-size: 2.4rem;
    line-height: 3rem
}

.landing-page .header-section .button {
    letter-spacing: .25rem;
    padding: 0 7rem
}

.landing-page .mission-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.mobile .landing-page .mission-section {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.landing-page .mission-section .media {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 62.7rem;
    height: 49rem;
    background-size: cover
}

.mobile .landing-page .mission-section .media {
    width: 100%;
    height: 26rem
}

.landing-page .mission-section .media .media-mask {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background: #0d0d0d;
    opacity: .4
}

.landing-page .mission-section .media .link-video {
    width: 8.7rem;
    height: 8.7rem;
    z-index: 1
}

.landing-page .mission-section .media .see-more {
    z-index: 1
}

.landing-page .mission-section iframe {
    max-width: 100%;
    height: 100%
}

.mobile .landing-page .mission-section iframe {
    max-height: 26rem
}

.landing-page .mission-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    max-width: 34%;
    margin: 0 5.8rem 4rem
}

.mobile .landing-page .mission-list {
    margin: 4rem 2.5rem;
    max-width: none
}

.landing-page .mission-list .mission-section-title {
    font-size: 3.4rem;
    line-height: 3.4rem;
    font-weight: 700
}

.landing-page .mission-list .mission {
    margin-top: 4rem
}

.landing-page .mission-list .mission-text {
    font-size: 2.2rem;
    line-height: 2.4rem;
    color: #455161
}

.mobile .landing-page .mission-list .mission-text {
    font-size: 2rem
}

.landing-page .mission-list .mission-icon {
    margin-bottom: 1.7rem
}

.landing-page .mission-list .mission-icon.person {
    background-image: url(images/picto-person.svg);
    background-size: contain;
    background-position: 50%;
    width: 3rem;
    height: 5.8rem
}

.landing-page .mission-list .mission-icon.chart {
    background-image: url(images/picto-chart.svg);
    background-size: contain;
    background-position: 50%;
    width: 4.8rem;
    height: 5.1rem
}

.landing-page .office-name {
    font-size: 2.4rem;
    line-height: 2.6rem;
    color: #e60000;
    font-weight: 700;
    margin-top: 9rem;
    margin-bottom: 2rem
}

.landing-page .address,
.landing-page .city,
.landing-page .country,
.landing-page .email,
.landing-page .phone,
.landing-page .postcode {
    font-size: 2.1rem;
    line-height: 2.6rem
}

.landing-page .email a,
.landing-page .phone a {
    color: #275ca8
}

.landing-page .contact-info {
    margin-top: 2rem
}

.landing-page .quotes-section {
    background-color: #f6f6f6
}

.mobile .landing-page .quotes-section {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.landing-page .quote-slide {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.mobile .landing-page .quote-slide {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.landing-page .quote-author-image {
    width: 24.7rem;
    height: 24.7rem;
    min-width: 24.7rem;
    border-radius: 50%;
    background-size: cover;
    margin-right: 5rem
}

.mobile .landing-page .quote-author-image {
    width: 17.3rem;
    height: 17.3rem;
    min-width: 17.3rem;
    margin-right: 0
}

.landing-page .quote-text {
    position: relative;
    font-size: 2.8rem;
    line-height: 3.2rem;
    max-width: 71.8rem;
    margin-top: 4rem
}

.landing-page .quote-text strong {
    color: #0d0d0d !important
}

.mobile .landing-page .quote-text {
    font-size: 2.2rem;
    line-height: 2.6rem;
    padding-top: 5.8rem;
    padding-bottom: 5.8rem;
    margin-top: 3rem
}

.landing-page .quote-author {
    font-size: 2.2rem;
    line-height: 2.4rem;
    margin-top: 3rem;
    margin-bottom: 3rem
}

.mobile .landing-page .quote-author {
    font-size: 2rem;
    margin-top: .5rem;
    margin-bottom: .5rem
}

.landing-page .quote-content {
    padding-left: 7.7rem;
    padding-right: 7.7rem
}

.mobile .landing-page .quote-content {
    padding-left: 2.7rem;
    padding-right: 2.7rem
}

.landing-page .icon-quote {
    width: 5.1rem;
    height: 4.8rem;
    background-image: url(images/picto-quote-red.png);
    background-size: contain;
    background-position: 50%
}

.mobile .landing-page .icon-quote {
    width: 4.1rem;
    height: 3.9rem
}

.landing-page .icon-quote-open {
    position: absolute;
    left: -7.7rem;
    top: -4.1rem
}

.mobile .landing-page .icon-quote-open {
    position: absolute;
    left: .2rem;
    top: 0
}

.landing-page .icon-quote-close {
    position: absolute;
    right: -7.7rem;
    bottom: 1.5rem;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.mobile .landing-page .icon-quote-close {
    position: absolute;
    right: .2rem;
    bottom: 0
}

.mobile .landing-page .sales-section {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.landing-page .sales-section-title {
    font-size: 6rem;
    font-weight: 700;
    line-height: 6rem;
    text-align: center
}

.mobile .landing-page .sales-section-title {
    font-size: 4rem;
    line-height: 4.3rem;
    padding-left: 2.8rem;
    padding-right: 2.8rem
}

.landing-page .sales-section-intro {
    max-width: 93.9rem;
    margin: 2.2rem auto 12.1rem;
    font-size: 2.2rem;
    line-height: 2.4rem;
    text-align: center;
    color: #395173
}

.mobile .landing-page .sales-section-intro {
    font-size: 2rem;
    line-height: 3rem;
    padding-left: 2.8rem;
    padding-right: 2.8rem;
    margin-top: 2.2rem;
    margin-bottom: 5rem;
    text-align: left
}

.landing-page .sales-section .slick-list {
    padding: 0 12% 0 0 !important
}

.landing-page .sales-section .slick-track {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important
}

.landing-page .sales-section .slick-slide {
    height: inherit !important
}

.landing-page .sales-section .slick-slide>div {
    height: 100%
}

.landing-page .sales-section .arrow-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    z-index: 1
}

.landing-page .sales-section .arrow-container-back {
    left: -8.5rem
}

.landing-page .sales-section .arrow-container-forward {
    right: 3.5rem
}

.landing-page .sales-section .arrow-container .touchpoints-arrow {
    width: 7.3rem;
    height: 7.3rem;
    cursor: pointer;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.landing-page .sales-section .arrow-container .touchpoints-arrow-back {
    background-image: url(images/picto-arrow-back.svg);
    background-size: contain;
    background-position: 50%
}

.landing-page .sales-section .arrow-container .touchpoints-arrow-back:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.landing-page .sales-section .arrow-container .touchpoints-arrow-forward {
    background-image: url(images/picto-arrow-back.svg);
    background-size: contain;
    background-position: 50%;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.landing-page .sales-section .arrow-container .touchpoints-arrow-forward:hover {
    -webkit-transform: rotate(180deg) scale(1.1);
    transform: rotate(180deg) scale(1.1)
}

.landing-page .sales-section .touchpoints {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.landing-page .sales-section .touchpoints .touchpoint-block {
    max-width: 50rem;
    height: inherit;
    background-color: #f6f6f6
}

.landing-page .sales-section .touchpoints .touchpoint-block:not(:last-child) {
    margin-right: 4rem
}

.mobile .landing-page .sales-section .touchpoints .touchpoint-block:not(:last-child) {
    margin-right: 0
}

.landing-page .sales-section .touchpoints .touchpoint-block-image {
    width: 100%;
    height: 28.1rem;
    background-size: cover
}

.landing-page .sales-section .touchpoints .touchpoint-block-content {
    padding: 4.3rem 2rem 3rem 4rem
}

.mobile .landing-page .sales-section .touchpoints .touchpoint-block-content {
    padding-left: 2.7rem;
    padding-right: 2.7rem
}

.landing-page .sales-section .touchpoints .touchpoint-block-text {
    font-size: 2.2rem;
    line-height: 2.4rem
}

.mobile .landing-page .sales-section .touchpoints .touchpoint-block-text {
    font-size: 2rem
}

.landing-page .sales-section .touchpoints .touchpoint-block-text ul {
    list-style-type: none;
    padding: 0
}

.landing-page .sales-section .touchpoints .touchpoint-block-text ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2.2rem
}

.landing-page .sales-section .touchpoints .touchpoint-block-text ul li:before {
    content: "";
    display: block;
    background-position: 50%;
    width: 2.6rem;
    height: 2.6rem;
    min-width: 2.6rem;
    margin-right: 1.7rem
}

.landing-page .sales-section .touchpoints .touchpoint-block-text-red li:before {
    background-image: url(images/check-red.svg);
    background-size: contain;
    background-position: 50%
}

.landing-page .sales-section .touchpoints .touchpoint-block-text-blue li:before {
    background-image: url(images/check-blue.svg);
    background-size: contain;
    background-position: 50%
}

.landing-page .sales-section .touchpoints .touchpoint-block-text-cyan li:before {
    background-image: url(images/check-turquoise.svg);
    background-size: contain;
    background-position: 50%
}

.landing-page .sales-section .touchpoints .touchpoint-block-text-green li:before {
    background-image: url(images/check-green.svg);
    background-size: contain;
    background-position: 50%
}

.landing-page .sales-section .touchpoints .touchpoint-block-title {
    font-size: 3.4rem;
    line-height: 4rem;
    font-weight: 700
}

.mobile .landing-page .sales-section .touchpoints .touchpoint-block-title {
    font-size: 2.8rem;
    line-height: 3.1rem;
    font-family: TC
}

.landing-page .sales-section .touchpoints .touchpoint-block-title-red {
    color: #e60000
}

.landing-page .sales-section .touchpoints .touchpoint-block-title-blue {
    color: #00319e
}

.landing-page .sales-section .touchpoints .touchpoint-block-title-cyan {
    color: #00d1d6
}

.landing-page .sales-section .touchpoints .touchpoint-block-title-green {
    color: #9ed000
}

.landing-page .technology-section {
    background-color: #f6f6f6
}

.landing-page .technology-section-title {
    font-size: 6rem;
    line-height: 6rem;
    font-weight: 700;
    text-align: center;
    max-width: 75.4rem;
    margin: 4rem auto 2.5rem
}

.mobile .landing-page .technology-section-title {
    font-size: 4rem;
    line-height: 4.3rem;
    margin-top: 0
}

.landing-page .technology-section-intro {
    font-size: 2.2rem;
    line-height: 2.4rem;
    text-align: center;
    color: #455161;
    margin-bottom: 5rem;
    max-width: 94rem;
    margin-left: auto;
    margin-right: auto
}

.landing-page .technology-section .slick-list {
    padding: 0 5% 0 0 !important
}

.landing-page .technology-section .technology-memes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.landing-page .technology-section .technology-memes .meme-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 34.5rem;
    background-color: #fff
}

.mobile .landing-page .technology-section .technology-memes .meme-slide {
    width: 66.5vw !important;
    margin-left: 5.5vw
}

.landing-page .technology-section .technology-memes .meme-slide:not(:last-child) {
    margin-right: 2.7rem
}

.landing-page .technology-section .technology-memes .meme-slide-circle {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 40rem
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-circle {
    height: 78.94737vw
}

.landing-page .technology-section .technology-memes .meme-slide-circle .arrow-circle {
    width: 40rem;
    height: 21rem
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-circle .arrow-circle {
    width: 77vw;
    height: 40.52632vw
}

.landing-page .technology-section .technology-memes .meme-slide-circle-0 .arrow-circle-1 {
    position: absolute;
    top: 0;
    left: -8%;
    background-image: url(images/picto-blue-arrows.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 1
}

.landing-page .technology-section .technology-memes .meme-slide-circle-0 .arrow-circle-2 {
    position: absolute;
    bottom: 0;
    left: -8%;
    background-image: url(images/picto-grey-arrows-1.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 0
}

.landing-page .technology-section .technology-memes .meme-slide-circle-1 .arrow-circle-1 {
    position: absolute;
    top: 0;
    left: -8%;
    background-image: url(images/picto-grey-arrows-2.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 0
}

.landing-page .technology-section .technology-memes .meme-slide-circle-1 .arrow-circle-2 {
    position: absolute;
    bottom: 0;
    left: -8%;
    background-image: url(images/picto-turquoise-arrows.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 1
}

.landing-page .technology-section .technology-memes .meme-slide-circle-2 .arrow-circle-1 {
    position: absolute;
    top: 0;
    left: -8%;
    background-image: url(images/picto-green-arrows.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 1
}

.landing-page .technology-section .technology-memes .meme-slide-circle-2 .arrow-circle-2 {
    position: absolute;
    bottom: 0;
    left: -8%;
    background-image: url(images/picto-grey-arrows-1.svg);
    background-size: cover;
    background-position: 50%;
    z-index: 0
}

.landing-page .technology-section .technology-memes .meme-slide-circle-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 19.4rem;
    max-width: 25.1rem;
    margin-top: 2rem;
    text-align: center;
    z-index: 2
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-circle-text {
    height: 13.5rem;
    max-width: 17.5rem
}

.landing-page .technology-section .technology-memes .meme-slide-circle .meme-block-tools {
    font-size: 3.4rem;
    line-height: 3.7rem;
    font-weight: 700;
    text-transform: uppercase
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-circle .meme-block-tools {
    font-size: 2.3rem;
    line-height: 2.6rem
}

.landing-page .technology-section .technology-memes .meme-slide-circle .meme-cta-link {
    font-size: 2.2rem;
    line-height: 2.4rem;
    color: #0d0d0d;
    text-decoration: underline
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-circle .meme-cta-link {
    font-size: 1.5rem;
    line-height: 1.6rem
}

.landing-page .technology-section .technology-memes .meme-slide-circle .meme-cta-link:hover {
    color: #ee3c62
}

.landing-page .technology-section .technology-memes .meme-slide .meme-block-solution {
    height: 7.5rem;
    max-width: 19.5rem;
    margin: 4.5rem auto .5rem;
    font-size: 2.2rem;
    line-height: 2.4rem;
    font-weight: 700;
    text-align: center
}

.landing-page .technology-section .technology-memes .meme-slide-text {
    margin: 4.3rem 4.7rem
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-text {
    margin: 4.3rem 2.6rem 2.6rem
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-title {
    font-size: 3.4rem;
    line-height: 3.7rem;
    font-weight: 700;
    margin-bottom: .7rem;
    text-align: center;
    text-transform: uppercase
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-title-0 {
    color: #00319e
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-title-1 {
    color: #00d1d6
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-title-2 {
    color: #9ed000
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-subtitle {
    height: 14rem;
    font-size: 2.2rem;
    line-height: 2.4rem;
    font-weight: 700;
    margin-bottom: .7rem;
    text-align: center
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-text .meme-block-subtitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 17rem
}

.landing-page .technology-section .technology-memes .meme-slide-text .meme-block-text {
    font-size: 2.2rem;
    line-height: 2.4rem;
    text-align: justify
}

.mobile .landing-page .technology-section .technology-memes .meme-slide-text .meme-block-text {
    display: none
}

.landing-page .works-section {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.landing-page .works-section .works-title {
    font-size: 6rem;
    line-height: 6.5rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 3.7rem
}

.mobile .landing-page .works-section .works-title {
    font-size: 4rem;
    line-height: 4.3rem;
    margin-bottom: 2.2rem
}

.landing-page .works-section .slick-slide {
    margin-left: 3rem;
    margin-right: 3rem;
    width: 120rem
}

.mobile .landing-page .works-section .slick-slide {
    margin-left: 0;
    margin-right: 0;
    width: 100vw
}

.landing-page .works-section .works-slide {
    position: relative;
    width: 100%;
    height: 49rem
}

.mobile .landing-page .works-section .works-slide {
    width: 100vw;
    height: 30rem
}

.landing-page .works-section .works-slide-image {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background-size: cover
}

.mobile .landing-page .works-section .works-slide-image {
    position: static;
    width: 100vw;
    height: 30rem
}

.landing-page .works-section .works-slide-text {
    position: absolute;
    z-index: 1;
    left: 4.5rem;
    bottom: 4.5rem;
    color: #fff;
    max-width: 37.7rem
}

.mobile .landing-page .works-section .works-slide-text {
    position: static;
    color: #0d0d0d;
    padding: 4.4rem 2.8rem
}

.landing-page .works-section .works-slide-text .works-block-title {
    font-size: 3.4rem;
    line-height: 3.6rem;
    color: #fff
}

.mobile .landing-page .works-section .works-slide-text .works-block-title {
    font-size: 2.8rem;
    line-height: 3rem;
    color: #0d0d0d
}

.landing-page .works-section .works-slide-text .works-block-text {
    font-size: 1.5rem;
    line-height: 2rem;
    margin-top: 1.7rem;
    margin-bottom: 2.1rem
}

.mobile .landing-page .works-section .works-slide-text .works-block-text {
    font-size: 1.8rem;
    line-height: 1.9rem;
    color: #0d0d0d
}

.landing-page .works-section .works-slide-text .works-block-client,
.landing-page .works-section .works-slide-text .works-block-country {
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
    color: #c9c9c9
}

.mobile .landing-page .works-section .works-slide-text .works-block-client,
.mobile .landing-page .works-section .works-slide-text .works-block-country {
    font-size: 1.8rem;
    line-height: 1.9rem
}

main#content .single-post section {
    font-size: 1.8rem;
    line-height: 1.6;
    font-weight: 300;
    padding-top: 0;
    padding-bottom: 6.5rem
}

main#content .single-post section h2,
main#content .single-post section p {
    margin-bottom: 3.5rem
}

main#content .single-post section h2:last-child,
main#content .single-post section p:last-child {
    margin-bottom: 0
}

main#content .single-post section h2 {
    font-size: 2.4rem;
    font-weight: 700
}

main#content .single-post section.section--header {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 39.5rem);
    padding-right: calc(50% - 39.5rem);
    padding-top: 7rem
}

main#content .single-post section.section--header .section-container {
    float: left;
    width: 100%;
    position: relative
}

main#content .single-post section.section--header .section-container h1 {
    font-size: 4.8rem;
    line-height: 1.15;
    margin-bottom: 2.2rem;
    color: #e60000
}

main#content .single-post section.section--header .section-container .post-intro {
    font-size: 2.4rem;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 3.6rem
}

main#content .single-post section.section--header .section-container .post-infos {
    font-size: 1.4rem;
    font-weight: 500
}

main#content .single-post section.section--header .section-container .post-infos>div {
    display: inline-block
}

main#content .single-post section.section--header .section-container .post-infos .date {
    font-size: 1.6rem
}

main#content .single-post section.section--header .section-container .post-infos .date span {
    color: #e60000
}

main#content .single-post section.section--header .section-container .post-share {
    list-style: none;
    padding: 0;
    margin: 0;
    position: absolute;
    right: -13.5rem;
    top: 0
}

main#content .single-post section.section--header .section-container .post-share li {
    width: 4rem;
    height: 4rem;
    font-size: 0;
    cursor: pointer;
    background-size: 100%;
    margin-bottom: 1rem
}

main#content .single-post section.section--header .section-container .post-share li.fb {
    background-image: url(images/picto-rs-fb-grey.svg)
}

main#content .single-post section.section--header .section-container .post-share li.tw {
    background-image: url(images/picto-rs-tw-grey.svg)
}

main#content .single-post section.section--header .section-container .post-share li.in {
    background-image: url(images/picto-rs-in-grey.svg)
}

main#content .single-post section.section--header .section-container .post-share li.email {
    background-image: url(images/picto-rs-email-grey.svg)
}

main#content .single-post section.section--video {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 51rem);
    padding-right: calc(50% - 51rem)
}

main#content .single-post section.section--video .video-container {
    width: 100%;
    height: 57.35rem;
    position: relative
}

main#content .single-post section.section--video .video-cover {
    width: 100%;
    height: 100%;
    cursor: pointer;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden
}

main#content .single-post section.section--video .video-cover:before {
    content: "";
    float: left;
    width: 9.4rem;
    height: 9.4rem;
    background-image: url(images/picto-play.svg);
    background-size: 100%;
    position: absolute;
    z-index: 2;
    left: calc(50% - 4.7rem);
    top: calc(50% - 4.7rem)
}

main#content .single-post section.section--video .video-cover img {
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

main#content .single-post section.section--video iframe {
    width: 100%;
    height: 100%;
    border: none
}

main#content .single-post section.section--image {
    padding-left: 0 !important;
    padding-right: 0 !important
}

main#content .single-post section.section--image figure {
    width: 100%;
    height: 63.7rem;
    overflow: hidden;
    position: relative
}

main#content .single-post section.section--image figure img {
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

main#content .single-post section.section--text {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 39.5rem);
    padding-right: calc(50% - 39.5rem)
}

main#content .single-post section.section--text .text h2 {
    font-family: TC;
    font-size: 3.6rem;
    line-height: 3rem;
    font-weight: 400;
    text-transform: none
}

main#content .single-post section.section--text-image {
    float: left;
    position: relative;
    width: 100%;
    padding-left: calc(50% - 61rem);
    padding-right: calc(50% - 61rem)
}

main#content .single-post section.section--text-image .text {
    width: 50rem;
    text-align: left;
    display: inline-block;
    vertical-align: middle
}

main#content .single-post section.section--text-image figure {
    width: 42.8rem;
    display: inline-block;
    vertical-align: middle;
    overflow: hidden
}

main#content .single-post section.section--text-image.display-left {
    text-align: left
}

main#content .single-post section.section--text-image.display-left .text {
    margin-left: 7.5rem
}

main#content .single-post section.section--text-image.display-right {
    text-align: right
}

main#content .single-post section.section--text-image.display-right .text {
    margin-right: 7.5rem
}

.mobile main#content .single-post section {
    padding-bottom: 5rem
}

.mobile main#content .single-post section.section--header {
    padding-left: 4rem;
    padding-right: 4rem;
    padding-top: 3.5rem
}

.mobile main#content .single-post section.section--header .post-intro {
    margin-bottom: 1.5rem
}

.mobile main#content .single-post section.section--header .post-infos {
    font-size: 1.6rem;
    margin-bottom: 4rem
}

.mobile main#content .single-post section.section--header .post-share {
    float: left;
    width: 100%;
    position: static
}

.mobile main#content .single-post section.section--header .post-share li {
    width: 4.8rem;
    height: 4.8rem;
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 0
}

.mobile main#content .single-post section.section--header .post-share li:last-of-type {
    margin-right: 0
}

.mobile main#content .single-post section.section--video .video-container {
    height: 26.4rem
}

.mobile main#content .single-post section.section--video .video-container .video-cover:before {
    width: 8.7rem;
    height: 8.7rem
}

.mobile main#content .single-post section.section--video .video-container .video-cover img {
    width: auto;
    height: 100%;
    max-width: none
}

.mobile main#content .single-post section.section--image figure {
    height: auto
}

.mobile main#content .single-post section.section--image figure img {
    position: static;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.mobile main#content .single-post section.section--text .text {
    padding-left: 4rem;
    padding-right: 4rem
}

.mobile main#content .single-post section.section--text-image .text {
    width: 100%;
    padding-left: 4rem;
    padding-right: 4rem
}

.mobile main#content .single-post section.section--text-image figure {
    width: 100%
}

.mobile main#content .single-post section.section--text-image figure img {
    width: 100%;
    height: auto
}

.mobile main#content .single-post section.section--text-image.display-right .text {
    margin-right: 0;
    margin-bottom: 4rem
}

.mobile main#content .single-post section.section--text-image.display-left .text {
    margin-left: 0
}

.mobile main#content .single-post section.section--text-image.display-left figure {
    margin-bottom: 4rem
}

.news {
    min-height: 49.5rem;
    float: left;
    text-align: left;
    background-color: #fff;
    border-bottom: .4rem solid #e60000;
    position: relative;
    -webkit-box-shadow: 0 .4rem 0 #e60000;
    box-shadow: 0 .4rem 0 #e60000
}

.news figure {
    width: 100%;
    height: 23rem;
    overflow: hidden;
    position: relative
}

.news figure img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.news .news-content {
    float: left;
    width: 100%;
    padding: 4rem 1.8rem 1.8rem
}

.news .date {
    font-size: 1.6rem;
    line-height: 3rem;
    color: #e60000;
    text-transform: uppercase;
    margin-bottom: 1.2rem
}

.news h3 {
    font-family: TC;
    font-size: 2.4rem;
    line-height: 1.6;
    text-transform: none;
    font-weight: 400
}

.mobile .news {
    max-width: 31.5rem;
    min-height: 0
}

.mobile .news figure {
    height: 15rem
}

.mobile .news .news-content {
    padding: 3rem 4rem
}

.mobile .news .date {
    font-size: 1.5rem
}

.mobile .news h3 {
    font-size: 2rem;
    line-height: 1.4
}

.landing-page #section-clients .clients-title {
    font-size: 6rem;
    line-height: 6.5rem;
    font-weight: 700;
    text-align: center;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 6.3rem
}

.mobile .landing-page #section-clients .clients-title {
    font-size: 4rem;
    line-height: 4.3rem;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: .5rem
}

.landing-page #section-clients,
body.home #section-clients {
    padding-top: 7.5rem !important;
    padding-bottom: 2rem !important;
    background-color: #000
}

.landing-page #section-clients p,
body.home #section-clients p {
    color: #fff;
    font-size: 3.6rem;
    line-height: 3.9rem
}

.landing-page #section-clients .clients,
.landing-page #section-clients p,
body.home #section-clients .clients,
body.home #section-clients p {
    padding-left: 6rem
}

.landing-page #section-clients .section-title,
body.home #section-clients .section-title {
    margin-bottom: 3rem
}

.mobile .landing-page #section-clients,
.mobile body.home #section-clients {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important
}

.mobile .landing-page #section-clients p,
.mobile body.home #section-clients p {
    padding-left: 4rem
}

.mobile .landing-page #section-clients .section-title,
.mobile body.home #section-clients .section-title {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.mobile .landing-page #section-clients .clients,
.mobile body.home #section-clients .clients {
    width: 100%;
    padding-left: 0;
    padding-right: 0
}

.mobile .landing-page #section-clients .clients .slick-slide,
.mobile body.home #section-clients .clients .slick-slide {
    width: calc(100vw - 5rem)
}

.mobile .landing-page #section-clients .clients .slick-slide .client,
.mobile body.home #section-clients .clients .slick-slide .client {
    width: 100%;
    background-color: transparent
}

.landing-page #section-posts .post,
body.home #section-posts .post {
    width: calc(50% - 1rem);
    height: 49rem;
    float: left;
    background-size: cover;
    background-position: 50%;
    padding: 4.5rem 5.5rem;
    position: relative;
    z-index: 1
}

.landing-page #section-posts .post:before,
body.home #section-posts .post:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    /* background-color: rgba(0, 0, 0, .5) */
}

/* NEW POST VIDEO CUSTOM */

.landing-page #section-posts .post, body.home #section-posts #post-video-custom{
    width: 100%;
    padding: 20px;
    display: flex;
    height: auto;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content{
    width: 100%;
    height: auto;
    position: relative;
    bottom: 0rem;
    left: 0rem;
    text-align: center!important;
    padding: 15px 20px;
    position: relative;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content h3{
    width: 100%;
    color: black;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .wrapper-podcast{
    /* position: absolute;
    bottom: 50px; */
    margin: 0 auto;
    width: 100%;
    padding-bottom: 25px;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .logos-podcast{
    display: flex;
    /* justify-content: space-around; */
    padding-top: 20px;
    max-width: 350px;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .logos-podcast .img-logos{
    width: 80px;
    height: auto;
    margin-right: 35px;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .wrapper-podcast a{
    color: white;
    width: 50%;
    padding: 15px 20px;
    background-color: #00529b;
    display: inline-block;
    border: 1px solid #000;
    margin-bottom: 15px;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .wrapper-a{
    width: 100%;
    text-align: left;
    padding: 10px 55px;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .wrapper-a a{
    color: black;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .content{
    width: 100%;
    color: black;
    padding: 35px 55px;
    font-size: 2rem;
}

.landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-video{
    width: 30%;
    height: auto;
    position: relative;
    display: none;
}

/* END NEW POST VIDEO CUSTOM */

.landing-page #section-posts .post:first-of-type,
body.home #section-posts .post:first-of-type {
    margin-right: 2rem
}

.landing-page #section-posts .post .logo-meaningful,
body.home #section-posts .post .logo-meaningful {
    background-image: url(images/logo-meaningful-new.svg);
    width: 14rem;
    height: 4rem;
    background-size: 14rem 4rem;
    margin-bottom: 3rem
}

.landing-page #section-posts .post .logo-meaningful-brand,
body.home #section-posts .post .logo-meaningful-brand {
    background-image: url(images/logo-meaningful-brand.png);
    background-size: 16.3rem 4rem;
    width: 16.3rem;
    height: 4rem
}

.landing-page #section-posts .post .post-content,
body.home #section-posts .post .post-content {
    width: calc(100% - 11rem);
    position: absolute;
    bottom: 5.5rem;
    left: 5.5rem
}

.landing-page #section-posts .post .post-content h3,
body.home #section-posts .post .post-content h3 {
    width: 42rem;
    color: #fff;
    line-height: 4rem
}

.mobile .landing-page #section-posts .post .post-content h3,
.mobile body.home #section-posts .post .post-content h3 {
    max-width: 88vw
}

.landing-page #section-posts .post .post-content .see-more,
body.home #section-posts .post .post-content .see-more {
    float: left;
    color: #fff;
    margin-top: 1.8rem
}

.landing-page #section-posts .post .post-content .link-video,
body.home #section-posts .post .post-content .link-video {
    width: 6.2rem;
    height: 6.2rem;
    position: absolute;
    bottom: 0;
    right: 0
}

.mobile .landing-page #section-posts,
.mobile body.home #section-posts {
    padding: 0 !important
}

.mobile .landing-page #section-posts .post,
.mobile body.home #section-posts .post {
    width: 100%;
    height: auto;
    min-height: 30rem;
    padding: 3rem 2.5rem
}

.mobile .landing-page #section-posts .post:first-of-type,
.mobile body.home #section-posts .post:first-of-type {
    margin-right: 0;
    margin-bottom: 3rem
}

.mobile .landing-page #section-posts .post .post-content,
.mobile body.home #section-posts .post .post-content {
    width: calc(100% - 5rem);
    height: auto;
    padding-bottom: 1rem;
    position: static
}

.mobile .landing-page #section-posts .post .post-content h2,
.mobile body.home #section-posts .post .post-content h2 {
    width: 21rem;
    font-size: 2.4rem;
    line-height: 1.2
}

.mobile .landing-page #section-posts .post .post-content .link-video,
.mobile body.home #section-posts .post .post-content .link-video {
    bottom: 3rem;
    right: 2rem;
    width: 5.8rem;
    height: 5.8rem;
    margin-top: 2rem
}

.client {
    width: 24.2rem;
    height: 14rem;
    float: left;
    position: relative
}

.client img {
    width: auto;
    height: auto;
    max-width: 20rem;
    max-height: 6.2rem;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.mobile .client {
    background-color: #fff
}

.member {
    width: 27.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    float: left;
    margin-right: 4rem;
    padding-bottom: 2rem;
    position: relative
}

.member .img {
    overflow: hidden;
    border-radius: 50%;
    border: .6rem solid #f5f5f5;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.member .img,
.member .img img {
    width: 27.2rem;
    height: 27.2rem;
    text-align: center
}

.member .img img {
    min-width: 27.2rem;
    -o-object-fit: cover;
    object-fit: cover
}

.member figcaption {
    float: left;
    text-align: center;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease;
    padding: 2rem;
    position: relative
}

.member figcaption .name {
    float: left;
    font: TCC;
    width: 100%;
    font-size: 2.4rem;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: .5rem;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    color: #0d0d0d
}

.member figcaption .about {
    color: #0d0d0d;
    float: left;
    width: 100%;
    font-size: 0
}

.member figcaption .about span {
    font-size: 1.7rem;
    line-height: 1.8rem;
    font-weight: 700;
    text-transform: uppercase
}

.member figcaption .address-infos {
    float: left;
    width: 100%;
    font-size: 0;
    margin-top: .5rem
}

.member figcaption .address-infos>div {
    float: left;
    width: 100%;
    font-size: 1.7rem;
    line-height: 1.8rem;
    font-weight: 700;
    color: #0d0d0d
}

.member figcaption .address-infos .member-email {
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.member figcaption .address-infos .member-email:hover {
    color: #e60000
}

.member .linkedin {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 2.5rem;
    height: 2.5rem;
    background-image: url(images/picto-linkedin.svg);
    background-size: 1.2rem;
    background-position: 50%;
    background-color: #275ca8;
    border-radius: 50%
}

.member.no-link figcaption:after {
    display: none
}

.member:hover figcaption .name {
    color: #e60000
}

.member:hover .img {
    border: .6rem solid #e60000
}

.team-members-country .member {
    height: auto
}

.mobile .member {
    float: none;
    display: inline-block;
    margin-right: 0
}

.mobile .member figcaption {
    padding: 1.2rem 2rem 1.5rem
}

.mobile .member figcaption .about span {
    font-size: 1.7rem;
    line-height: 1.1
}

.mobile .member figcaption .address-infos div {
    font-size: 1.7rem
}

.work {
    height: 49rem;
    color: #fff;
    background-size: cover;
    background-position: 50%;
    position: relative;
    z-index: 1;
    padding: 18rem 6rem 0
}

.work:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, .3)
}

.work .work-content {
    width: 43.5rem
}

.work .work-content h3 {
    color: #fff
}

.work .work-content .text {
    margin-top: 1.5rem
}

.work .work-content .text p {
    font-size: 1.5rem/2rem;
    font-weight: 700
}

.work .work-content .text p:last-of-type {
    margin-bottom: 0
}

.work .work-content .about {
    margin-top: 2rem
}

.work .work-content .about p {
    margin-bottom: 0;
    font-size: 1.5rem/2rem;
    font-weight: 700
}

.work .link-video {
    width: 8.7rem;
    height: 8.7rem;
    position: absolute;
    bottom: 5.5rem;
    right: 5.5rem
}

.mobile .work {
    height: auto;
    color: #0d0d0d;
    padding: 33.5rem 4rem 0;
    background-size: auto 30rem;
    background-position: top
}

.mobile .work:before {
    height: 30rem
}

.mobile .work .work-content {
    width: 100%
}

.mobile .work .work-content h3 {
    font-size: 2.8rem;
    line-height: 1.4;
    color: #0d0d0d;
    margin-bottom: 2rem
}

.mobile .work .work-content .text {
    font-size: 1.8rem
}

.mobile .work .work-content .about {
    font-size: 1.6rem;
    color: #9c9ea0
}

.mobile .work .link-video {
    width: 5.8rem;
    height: 5.8rem;
    right: 2.5rem;
    top: 22rem;
    bottom: auto
}

.office {
    text-align: left;
    width: 25.9rem;
    padding-bottom: 3.5rem;
    padding-right: 3rem;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: 300
}

.office h3 {
    font-weight: 500;
    margin-bottom: 1.5rem
}

.office a {
    color: #0d0d0d;
    text-decoration: none
}

.office a:hover {
    color: #e60000
}

.mobile .office {
    width: 100%;
    height: auto
}

@media only screen and (min-width:1380px) {
    html {
        font-size: 10px !important
    }
}

@media only screen and (max-width:1400px) {
    body>footer .footer-main .contact>div {
        margin-right: 3rem
    }
}

@media only screen and (max-width:1100px) {
    body>footer .footer-main .contact>div {
        margin-right: 2rem
    }
}

@media only screen and (max-width:800px) {
    body>footer .footer-main .contact>div {
        margin-right: 1rem
    }
}

@media only screen and (max-width:600px) {
    body>footer .footer-main .contact>div {
        margin-right: 1px
    }

    .landing-page #section-posts .post, body.home #section-posts #post-video-custom{
    flex-direction: column;
    }
    
    .landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content {
        width: 100%;
        padding: 35px 5px;
    }

    .landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-video{
        width: 100%;
    }

    .landing-page #section-posts .post, body.home #section-posts #post-video-custom .post-content .wrapper-a{
        padding: 10px 5px;
    }
}

@media only screen and (max-width:790px) {

    :not(.mobile) body>header .ha-header-language-switcher .wpml-ls-legacy-dropdown-click a span,
    :not(.mobile) body>header nav ul li a {
        font-size: 13PX
    }

    :not(.mobile) body.home #section-about .section-content,
    :not(.mobile) body.home #section-about .section-content .about span,
    :not(.mobile) body.home #section-about .section-content .about strong {
        font-size: 12PX
    }

    :not(.mobile) body.home #section-team .text {
        font-size: 13PX
    }

    :not(.mobile) .news .date {
        font-size: 11PX
    }

    :not(.mobile) .member figcaption {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }

    :not(.mobile) .member figcaption .name {
        margin-bottom: 0
    }

    :not(.mobile) .member figcaption .about span,
    :not(.mobile) .member figcaption .address-infos div {
        font-size: 10PX;
        line-height: 1
    }

    :not(.mobile) .work {
        padding-top: 17.5rem
    }

    :not(.mobile) .work .work-content {
        width: 95.5rem
    }

    :not(.mobile) .work .work-content .about,
    :not(.mobile) .work .work-content .text {
        font-size: 11PX
    }
}