@charset "UTF-8";

/*! normalize.css v2.1.3 | MIT License | git.io/normalize */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

.span_point{
    min-width: 200px !important;
}

.form_lang {
    display: inline-flex;
    position: absolute;
    list-style: none;
    right: 60px;
    margin-top: 20px;
}

.shadow_dev{
    background: rgba(0, 0, 0, 0.5);
        
}

.nav_menu{
    margin-right: 85px;
}

.form_lang li a{
    color:white;
    text-transform: uppercase;
}

body {
    margin: 0
}

a {
    background: transparent
}

a:active,
a:hover {
    outline: 0
}

nav>ul {
    margin: 0;
    padding: 0;
    list-style: none
}

h1,
body.who-we-are #team h3,
.four-oh-four #banner p {
    font-size: 2em;
    margin: 0.67em 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold
}

dfn {
    font-style: italic
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

mark {
    background: #ff0;
    color: #000
}

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

pre {
    white-space: pre-wrap
}

q {
    quotes: "\201C" "\201D" "\2018" "\2019"
}

small {
    font-size: 80%
}

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

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

img {
    border: 0
}

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

figure {
    margin: 1em 40px
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    min-width: 0;
    padding: 0.35em 0.625em 0.75em
}

legend {
    border: 0;
    padding: 0
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: bold
}

button,
input {
    line-height: normal
}

button,
select {
    text-transform: none
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer
}

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

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

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    vertical-align: top
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

.cf:after,
body.generic-sub-page .grid-list:after,
body.what-we-do #events ul:after,
#gallery .gallery-grid:after,
body.sector .content-block .content:after,
body.sector #sectors:after,
body.portfolio #folio-grid:after,
body.portfolio #folio-grid .item.half:after,
header[role="banner"]:after,
footer[role="contentinfo"]:after,
.media-list:after {
    content: "";
    display: table;
    clear: both
}

.pull-left {
    float: left
}

.pull-right {
    float: right
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.center-content {
    text-align: center
}

.hidden {
    display: none !important;
    visibility: hidden !important
}

.invisible {
    visibility: hidden
}

.hide-text {
    overflow: hidden
}

.hide-text:before {
    content: "";
    display: block;
    width: 0;
    height: 100%
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.visible-xs {
    display: none !important;
    visibility: hidden !important
}

@media (max-width: 767px) {
    .visible-xs {
        display: block !important;
        visibility: visible !important
    }
    table.visible-xs {
        display: table !important;
        visibility: visible !important
    }
    tr.visible-xs {
        display: table-row !important;
        visibility: visible !important
    }
    td.visible-xs {
        display: table-cell !important;
        visibility: visible !important
    }
    th.visible-xs {
        display: table-cell !important;
        visibility: visible !important
    }
}

.visible-sm {
    display: none !important;
    visibility: hidden !important
}

@media (min-width: 768px) and (max-width: 1023px) {
    .visible-sm {
        display: block !important;
        visibility: visible !important
    }
    table.visible-sm {
        display: table !important;
        visibility: visible !important
    }
    tr.visible-sm {
        display: table-row !important;
        visibility: visible !important
    }
    td.visible-sm {
        display: table-cell !important;
        visibility: visible !important
    }
    th.visible-sm {
        display: table-cell !important;
        visibility: visible !important
    }
}

.visible-md {
    display: none !important;
    visibility: hidden !important
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .visible-md {
        display: block !important;
        visibility: visible !important
    }
    table.visible-md {
        display: table !important;
        visibility: visible !important
    }
    tr.visible-md {
        display: table-row !important;
        visibility: visible !important
    }
    td.visible-md {
        display: table-cell !important;
        visibility: visible !important
    }
    th.visible-md {
        display: table-cell !important;
        visibility: visible !important
    }
}

.visible-lg {
    display: none !important;
    visibility: hidden !important
}

@media (min-width: 1200px) {
    .visible-lg {
        display: block !important;
        visibility: visible !important
    }
    table.visible-lg {
        display: table !important;
        visibility: visible !important
    }
    tr.visible-lg {
        display: table-row !important;
        visibility: visible !important
    }
    td.visible-lg {
        display: table-cell !important;
        visibility: visible !important
    }
    th.visible-lg {
        display: table-cell !important;
        visibility: visible !important
    }
}

@media (max-width: 767px) {
    .hidden-xs {
        display: none !important;
        visibility: hidden !important
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .hidden-sm {
        display: none !important;
        visibility: hidden !important
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .hidden-md {
        display: none !important;
        visibility: hidden !important
    }
}

@media (min-width: 1200px) {
    .hidden-lg {
        display: none !important;
        visibility: hidden !important
    }
}

.visible-print {
    display: none !important;
    visibility: hidden !important
}

@media print {
    .visible-print {
        display: block !important;
        visibility: visible !important
    }
}

@media print {
    .hidden-print {
        display: none !important;
        visibility: hidden !important
    }
}


/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */

.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
    padding: 0;
    margin: 0;
    border: 0;
    outline: none;
    vertical-align: top
}

.fancybox-wrap {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8020
}

.fancybox-skin {
    position: relative;
    color: #444;
    text-shadow: none
}

.fancybox-opened {
    z-index: 8030
}

.fancybox-outer,
.fancybox-inner {
    position: relative
}

.fancybox-inner {
    overflow: hidden
}

.fancybox-inner img {
    display: block
}

.fancybox-type-iframe .fancybox-inner {
    -webkit-overflow-scrolling: touch
}

.fancybox-error {
    color: #444;
    font: 14px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin: 0;
    padding: 15px;
    white-space: nowrap
}

.fancybox-image,
.fancybox-iframe {
    display: block;
    width: 100%;
    height: 100%
}

.fancybox-image {
    max-width: 100%;
    max-height: 100%
}

#fancybox-loading {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -22px;
    margin-left: -22px;
    background-position: 0 -108px;
    opacity: 0.8;
    cursor: pointer;
    z-index: 8060
}

#fancybox-loading div {
    width: 44px;
    height: 44px
}

.fancybox-close {
    position: absolute;
    top: -41px;
    right: 80px;
    width: 31px;
    height: 31px;
    cursor: pointer;
    z-index: 8040;
    background: url("interface/close-fa74104917d8e50f6260da4f738e8d5e.svg")
}

.fancybox-nav {
    width: 16px;
    height: 20px;
    cursor: pointer;
    text-decoration: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    z-index: 8040;
    background: url("interface/arrow-abf8d62e7112d223648bc113f9dd5212.svg") right top;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

.fancybox-prev {
    left: -70px;
    background: url("interface/arrow-back-b15e1ac9a25d1c204b1ac26febc1b9d5.svg") left top
}

.fancybox-next {
    right: -70px
}

.fancybox-nav span {
    position: absolute;
    top: 50%;
    width: 36px;
    height: 34px;
    margin-top: -18px;
    cursor: pointer;
    z-index: 8040;
    visibility: hidden
}

.fancybox-prev span {
    left: 10px;
    background-position: 0 -36px
}

.fancybox-next span {
    right: 10px;
    background-position: 0 -72px
}

.fancybox-nav:hover span {
    visibility: visible
}

.fancybox-tmp {
    position: absolute;
    top: -99999px;
    left: -99999px;
    visibility: hidden;
    max-width: 99999px;
    max-height: 99999px;
    overflow: visible !important
}

.fancybox-lock {
    overflow: hidden !important;
    width: auto
}

.fancybox-lock body {
    overflow: hidden !important
}

.fancybox-lock-test {
    overflow-y: hidden !important
}

.fancybox-overlay {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    display: none;
    z-index: 8010;
    background: rgba(0, 0, 0, 0.9)
}

.fancybox-overlay-fixed {
    position: fixed;
    bottom: 0;
    right: 0
}

.fancybox-lock .fancybox-overlay {
    overflow: auto;
    overflow-y: scroll
}

.fancybox-title {
    visibility: hidden;
    font: normal 13px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
    position: relative;
    text-shadow: none;
    z-index: 8050
}

.fancybox-opened .fancybox-title {
    visibility: visible
}

.fancybox-title-float-wrap {
    position: absolute;
    bottom: 0;
    right: 50%;
    margin-bottom: -35px;
    z-index: 8050;
    text-align: center
}

.fancybox-title-float-wrap .child {
    display: inline-block;
    margin-right: -100%;
    padding: 2px 20px;
    background: transparent;
    background: rgba(0, 0, 0, 0.8);
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    text-shadow: 0 1px 2px #222;
    color: #FFF;
    font-weight: bold;
    line-height: 24px;
    white-space: nowrap
}

.fancybox-title-outside-wrap {
    position: relative;
    margin-top: 10px;
    color: #fff
}

.fancybox-title-inside-wrap {
    padding-top: 10px
}

.fancybox-title-over-wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    padding: 10px;
    background: #000;
    background: rgba(0, 0, 0, 0.8)
}

@media (max-width: 567px) {
    .fancybox-skin {
        padding: 0 !important
    }
    .fancybox-close {
        right: 0
    }
    .fancybox-prev {
        left: 10px
    }
    .fancybox-next {
        right: 10px
    }
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-loading .slick-list {
    background: #fff url("ajax-loader.gif") center center no-repeat
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir="rtl"] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-prev,
.slick-next {
    position: absolute;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0;
    font-size: 0;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    margin-top: -10px;
    padding: 0;
    border: none;
    outline: none
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 0.25
}

.slick-prev:before,
.slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-prev {
    left: -25px
}

[dir="rtl"] .slick-prev {
    left: auto;
    right: -25px
}

.slick-prev:before {
    content: "←"
}

[dir="rtl"] .slick-prev:before {
    content: "→"
}

.slick-next {
    right: -25px
}

[dir="rtl"] .slick-next {
    left: -25px;
    right: auto
}

.slick-next:before {
    content: "→"
}

[dir="rtl"] .slick-next:before {
    content: "←"
}

.slick-slider {
    margin-bottom: 30px
}

.slick-dots {
    position: absolute;
    bottom: -45px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    width: 100%
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer
}

.slick-dots li button {
    border: 0;
    background: transparent;
    display: block;
    height: 20px;
    width: 20px;
    outline: none;
    line-height: 0;
    font-size: 0;
    color: transparent;
    padding: 5px;
    cursor: pointer
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "•";
    width: 20px;
    height: 20px;
    font-family: "slick";
    font-size: 6px;
    line-height: 20px;
    text-align: center;
    color: black;
    opacity: 0.25;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
    color: black;
    opacity: 0.75
}

body {
    /*font-family: Raleway, sans-serif;*/
    font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
    /*font-weight: 400;*/
    color: white
}

h1:first-child,
body.who-we-are #team h3:first-child,
.four-oh-four #banner p:first-child,
h2:first-child,
body.what-we-do #events ul h4:first-child,
#cta h3:first-child,
h3:first-child,
h4:first-child,
p:first-child {
    margin-top: 0
}

h1,
body.who-we-are #team h3,
.four-oh-four #banner p {
    /* font-size: 70px; */
    font-size: 50px;
    font-weight: 100;
    text-transform: uppercase;
    text-shadow: 0 0 50px black
}


h1 span,
body.who-we-are #team h3 span,
.four-oh-four #banner p span {
    display: block;
    font-size: 44px
}

h1 strong,
body.who-we-are #team h3 strong,
.four-oh-four #banner p strong {
    font-weight: 400
}

h1:after,
body.who-we-are #team h3:after,
.four-oh-four #banner p:after {
    content: "";
    display: block;
    margin: 20px auto 0;
    background: white;
    width: 150px;
    height: 2px
}

h2,
body.what-we-do #events ul h4,
#cta h3 {
    font-size: 44px;
    font-weight: 100;
    text-transform: uppercase;
    text-shadow: 0 0 30px black
}

h2:after,
body.what-we-do #events ul h4:after,
#cta h3:after {
    content: "";
    display: block;
    margin: 20px auto 0;
    background: white;
    width: 150px;
    height: 2px
}

blockquote {
    font-size: 40px;
    font-weight: 100;
    line-height: 56px;
    text-shadow: 0 0 50px black
}

blockquote:after {
    content: "";
    display: block;
    margin: 20px auto 0;
    background: white;
    width: 150px;
    height: 2px
}

.rev,
body.team #team-members .member h2,
body.team #team-members .member body.what-we-do #events ul h4,
body.what-we-do #events ul body.team #team-members .member h4,
body.team #team-members .member #cta h3,
#cta body.team #team-members .member h3,
body.team #team-members .member blockquote {
    color: black;
    text-shadow: none
}

.rev:after,
body.team #team-members .member h2:after,
body.team #team-members .member body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.team #team-members .member h4:after,
body.team #team-members .member #cta h3:after,
#cta body.team #team-members .member h3:after,
body.team #team-members .member blockquote:after {
    background: black
}

p.cite {
    font-size: 16px;
    font-weight: 100;
    text-transform: uppercase
}

strong {
    font-weight: 600
}

@media (max-width: 767px) {
    h1,
    body.who-we-are #team h3,
    .four-oh-four #banner p {
        font-size: 34px
    }
    h1 span,
    body.who-we-are #team h3 span,
    .four-oh-four #banner p span {
        font-size: 20px
    }
    h2,
    body.what-we-do #events ul h4,
    #cta h3 {
        font-size: 28px
    }
    blockquote {
        font-size: 24px;
        line-height: 32px
    }
}

header .button {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    min-width: 140px;
    padding: 10px 20px;
    background: transparent;
    border: 1px solid white;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    color: white;
    overflow: hidden;
    outline: none;
    -webkit-transition: color 0.3s, border-color 0.3s;
    -moz-transition: color 0.3s, border-color 0.3s;
    transition: color 0.3s, border-color 0.3s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

header .button span {
    position: relative;
    z-index: 1
}

header .button:before {
    content: "";
    background: white;
    opacity: 0;
    -webkit-transform: skew(50deg, 0deg) translateX(-50%);
    -moz-transform: skew(50deg, 0deg) translateX(-50%);
    -ms-transform: skew(50deg, 0deg) translateX(-50%);
    -o-transform: skew(50deg, 0deg) translateX(-50%);
    transform: skew(50deg, 0deg) translateX(-50%);
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 50%;
    -webkit-transition: width 0.3s, opacity 0.3s;
    -moz-transition: width 0.3s, opacity 0.3s;
    transition: width 0.3s, opacity 0.3s
}

.button.spinner {
    border-color: white
}

.button.spinner span {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s
}

.button.spinner:before {
    width: 150%;
    opacity: 1
}

.button.spinner:after {
    content: "";
    margin-top: -10px;
    margin-left: -10px;
    background: url("interface/load-74bed82c7a4cc638f4516518efd89f7d.gif") center center no-repeat;
    background-size: 21px 21px;
    width: 21px;
    height: 21px;
    position: absolute;
    top: 50%;
    left: 50%
}

header[role="banner"] .button,
footer[role="contentinfo"] .button {
    border-color: #636363
}

.no-touch .button:hover,
.touch .button:active {
    border-color: white;
    color: black
}

.no-touch .button:hover:before,
.touch .button:active:before {
    width: 150%;
    opacity: 1
}

.button.black {
    border-color: black;
    color: black
}

.button.black:before {
    background: black
}

.no-touch .button.black:hover,
.touch .button.black:active {
    border-color: black;
    color: #000
}

@media (max-width: 567px) {
    .button {
        display: block;
        width: 100%
    }
}

.fancybox-next,
.fancybox-prev {
    display: block
}

.fancybox-next:before,
.fancybox-prev:before {
    content: "";
    display: block;
    padding: 40px;
    position: absolute;
    top: -28px;
    left: -20px
}

html.lightbox-open,
.lightbox-open html,
body.lightbox-open,
.lightbox-open body {
    overflow: hidden
}

html {
    height: 100%;
    background: black
}

body {
    padding-top: 100px
}

@media (max-width: 1023px) {
    body {
        padding-top: 70px
    }
}

img {
    -ms-interpolation-mode: bicubic
}

.container {
    width: 960px;
    margin: 0 auto;
    padding: 0 10px
}

@media (max-width: 1023px) {
    .container {
        width: 768px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }
}

@media (max-width: 767px) {
    .container {
        width: 568px
    }
}

@media (max-width: 567px) {
    .container {
        width: 320px
    }
}

.col.half {
    float: left;
    width: 48%
}

.col.half:first-child {
    margin-right: 4%
}

.col.third {
    float: left;
    width: 30%
}

.col.third:nth-child(2) {
    margin: 0 5%
}

@media (max-width: 1023px) {
    .col.third {
        float: none;
        width: auto
    }
    .col.third:nth-child(2) {
        margin: 20px 0
    }
}

@media (max-width: 767px) {
    .col.half {
        float: none;
        width: auto
    }
    .col.half:first-child {
        margin: 0 0 20px
    }
}

#asset-wrapper {
    width: 100%;
    max-width: 800px
}

#asset-wrapper img {
    display: block;
    width: 100%
}

#asset-wrapper video {
    display: block;
    width: 100% !important;
    height: auto !important
}

#preloader {
    background: black;
    background-size: cover;
    z-index: 200;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px
}

.touch #preloader {
    display: none
}

@media (max-width: 1023px) {
    #preloader {
        display: none
    }
}

#preloader .content {
    position: absolute;
    top: 50%;
    right: 0px;
    left: 0px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

#preloader .bar {
    display: block;
    width: 0%;
    height: 2px;
    background: white
}

#preloader p {
    text-align: center;
    max-width: 980px;
    margin: 20px auto 0;
    font-size: 14px;
    font-weight: 100;
    line-height: 1.6
}

#preloader p:first-of-type {
    text-transform: uppercase
}

body.home {
    height: 100%;
    padding-top: 0;
    padding-bottom: 70px;
 
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

@media (max-width: 1023px) {
    body.home {
        overflow: visible
    }
}

.loaded body.home {
    overflow: auto
}

body.home section[role="main"] {
    position: relative;
    height: 100vh;
    padding: 100px 0 0;
    font-size: 0;
    text-align: center;
    background-size: cover;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.home section[role="main"]:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%
}

body.home section[role="main"] #audio-container {
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    transition: opacity 1s;
    position: fixed;
    right: 20px;
    bottom: 90px
}

body.home section[role="main"] #audio-container.init {
    opacity: 0
}

body.home section[role="main"] #audio-container button {
    padding: 0;
    background: url("interface/playpause-47dfb9c5761b1f7d3ff0761d09af1866.svg") left top no-repeat;
    border: none;
    outline: none;
    width: 32px;
    height: 16px
}

body.home section[role="main"] #audio-container button.pause {
    background-position: left bottom
}

body.home section[role="main"] #video-container {
    overflow: hidden;
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    transition: opacity 1s;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px
}

body.home section[role="main"] #video-container.init {
    opacity: 0
}

body.home section[role="main"] #video-container video {
    min-width: 100%;
    min-height: 100%;
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

body.home section[role="main"] .content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    z-index: 1;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.home section[role="main"] .mobile-banner {
    padding: 100px 0;
    background-position: center center;
    background-size: cover
}

@media (min-width: 1024px) {
    body.home section[role="main"] .mobile-banner {
        padding-top: 0
    }
}

body.home section[role="main"] h1,
body.home section[role="main"] body.who-we-are #team h3,
body.who-we-are #team body.home section[role="main"] h3,
body.home section[role="main"] .four-oh-four #banner p,
.four-oh-four #banner body.home section[role="main"] p {
    margin-bottom: 0
}

body.home section[role="main"] .col {
    background: rgba(0, 0, 0, 0.4);
    overflow: hidden;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.home section[role="main"] .col a {
    position: relative;
    display: block;
    text-decoration: none;
    text-transform: uppercase;
    color: white;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

body.home section[role="main"] .col h2,
body.home section[role="main"] .col body.what-we-do #events ul h4,
body.what-we-do #events ul body.home section[role="main"] .col h4,
body.home section[role="main"] .col #cta h3,
#cta body.home section[role="main"] .col h3,
body.home section[role="main"] .col p,
body.home section[role="main"] .col span {
    font-size: 20px;
    font-weight: 400
}

body.home section[role="main"] .col h2:after,
body.home section[role="main"] .col body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.home section[role="main"] .col h4:after,
body.home section[role="main"] .col #cta h3:after,
#cta body.home section[role="main"] .col h3:after {
    content: "";
    display: block;
    margin: 16px auto;
    background: white;
    width: 60px;
    height: 2px
}

body.home section[role="main"] .col p {
    -webkit-transition: opacity 0.3s 0.1s;
    -moz-transition: opacity 0.3s 0.1s;
    transition: opacity 0.3s 0.1s
}

body.home section[role="main"] .col span {
    position: absolute;
    top: 100%;
    right: 0px;
    left: 0px;
    -webkit-transition: top 0.3s 0.1s;
    -moz-transition: top 0.3s 0.1s;
    transition: top 0.3s 0.1s
}

body.home section[role="main"] .col span:after {
    content: "";
    display: block;
    margin: 30px auto 0 50%;
    background: url("interface/arrow-abf8d62e7112d223648bc113f9dd5212.svg") left top no-repeat;
    width: 100%;
    height: 20px;
    -webkit-transform: translateY(50px);
    -moz-transform: translateY(50px);
    -ms-transform: translateY(50px);
    -o-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-delay: 0;
    -moz-transition-delay: 0;
    transition-delay: 0
}

.no-touch body.home section[role="main"] .col a:hover p {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s
}

.no-touch body.home section[role="main"] .col a:hover span {
    top: 50%;
    -webkit-transition: top 0.3s;
    -moz-transition: top 0.3s;
    transition: top 0.3s
}

.no-touch body.home section[role="main"] .col a:hover span:after {
    -webkit-transition-delay: 0.1s;
    -moz-transition-delay: 0.1s;
    transition-delay: 0.1s;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0)
}

@media (min-width: 1024px) {
    body.home section[role="main"] .mobile-banner {
        background-image: none !important
    }
}

@media (max-width: 1023px) {
    body.home section[role="main"] {
        background: none !important;
        height: auto;
        min-height: 100%;
        padding-top: 70px
    }
    body.home section[role="main"] .mobile-banner {
        margin-bottom: 80px
    }
    body.home section[role="main"]:before {
        display: none
    }
    body.home section[role="main"] .content {
        display: block;
        padding-bottom: 80px;
        background: white
    }
    body.home section[role="main"] #video-container {
        opacity: 0
    }
    body.home section[role="main"] .col {
        background: black
    }
}

@media (max-width: 767px) {
    body.home section[role="main"] .mobile-banner {
        padding: 80px 0;
        margin-bottom: 40px
    }
    body.home section[role="main"] .content {
        padding-bottom: 40px
    }
}

body.home header[role="banner"],
body.home footer[role="contentinfo"] {
    -webkit-transition: opacity 1s 0.5s;
    -moz-transition: opacity 1s 0.5s;
    transition: opacity 1s 0.5s
}

body.home h1,
body.home body.who-we-are #team h3,
body.who-we-are #team body.home h3,
body.home .four-oh-four #banner p,
.four-oh-four #banner body.home p {
    -webkit-transition: opacity 0.5s 1s;
    -moz-transition: opacity 0.5s 1s;
    transition: opacity 0.5s 1s
}

body.home .col.third {
    -webkit-transition: all 0.3s 1s;
    -moz-transition: all 0.3s 1s;
    transition: all 0.3s 1s
}

body.home .col.third:nth-child(2) {
    -webkit-transition-delay: 1.2s;
    -moz-transition-delay: 1.2s;
    transition-delay: 1.2s
}

body.home .col.third:last-child {
    -webkit-transition-delay: 1.4s;
    -moz-transition-delay: 1.4s;
    transition-delay: 1.4s
}

body.home.init header[role="banner"],
body.home.init footer[role="contentinfo"] {
    opacity: 0
}

body.home.init h1,
body.home.init body.who-we-are #team h3,
body.who-we-are #team body.home.init h3,
body.home.init .four-oh-four #banner p,
.four-oh-four #banner body.home.init p {
    opacity: 0
}

body.home.init .col.third {
    opacity: 0;
    -webkit-transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
    transform: translateY(50%)
}

body.sub-page #banner .intro .col {
    text-align: left;
    font-size: 14px;
    line-height: 24px
}

body.generic-sub-page.terms section[role="main"] {
    padding-top: 0
}

body.generic-sub-page.terms #main-content {
    padding-top: 80px
}

body.generic-sub-page.terms h2,
body.generic-sub-page.terms body.what-we-do #events ul h4,
body.what-we-do #events ul body.generic-sub-page.terms h4,
body.generic-sub-page.terms #cta h3,
#cta body.generic-sub-page.terms h3 {
    text-shadow: none
}

body.generic-sub-page.terms h2:after,
body.generic-sub-page.terms body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.generic-sub-page.terms h4:after,
body.generic-sub-page.terms #cta h3:after,
#cta body.generic-sub-page.terms h3:after {
    background: black
}

body.generic-sub-page.terms h3 {
    font-size: 20px;
    font-weight: 300;
    text-transform: uppercase
}

body.generic-sub-page.terms p,
body.generic-sub-page.terms li {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6
}

body.generic-sub-page section[role="main"] {
    padding: 80px 0;
    background: white;
    color: black
}

body.generic-sub-page #banner {
    color: white
}

body.generic-sub-page .header {
    margin-bottom: 80px;
    text-align: center
}

body.generic-sub-page .header h1,
body.generic-sub-page .header body.who-we-are #team h3,
body.who-we-are #team body.generic-sub-page .header h3,
body.generic-sub-page .header .four-oh-four #banner p,
.four-oh-four #banner body.generic-sub-page .header p,
body.generic-sub-page .header h2,
body.generic-sub-page .header body.what-we-do #events ul h4,
body.what-we-do #events ul body.generic-sub-page .header h4,
body.generic-sub-page .header #cta h3,
#cta body.generic-sub-page .header h3 {
    text-shadow: none
}

body.generic-sub-page .header h1:after,
body.generic-sub-page .header body.who-we-are #team h3:after,
body.who-we-are #team body.generic-sub-page .header h3:after,
body.generic-sub-page .header .four-oh-four #banner p:after,
.four-oh-four #banner body.generic-sub-page .header p:after,
body.generic-sub-page .header h2:after,
body.generic-sub-page .header body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.generic-sub-page .header h4:after,
body.generic-sub-page .header #cta h3:after,
#cta body.generic-sub-page .header h3:after {
    background: black
}

body.generic-sub-page .header p {
    max-width: 740px;
    margin: 0 auto;
    font-size: 24px;
    font-weight: 100;
    line-height: 1.4
}

body.generic-sub-page .grid-list {
    margin: 0 0 -70px;
    padding: 0;
    list-style: none
}

body.generic-sub-page .grid-list li {
    float: left;
    width: 32%;
    margin-bottom: 70px;
    text-align: center
}

body.generic-sub-page .grid-list li:nth-child(3n+2) {
    margin: 0 2% 70px ;
}

body.generic-sub-page .grid-list li:nth-child(3n+1) {
    clear: both
}

body.generic-sub-page .grid-list img {
    display: block;
    width: 100%
}

body.generic-sub-page .grid-list h3 {
    margin: 30px 0;
    font-size: 24px;
    font-weight: 300;
    text-transform: uppercase
}

body.generic-sub-page .grid-list h3:after {
    content: "";
    display: block;
    margin: 30px auto 0;
    background: black;
    width: 70px;
    height: 2px
}

body.generic-sub-page .grid-list p {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6
}

@media (max-width: 1023px) {
    body.generic-sub-page .grid-list li {
        width: 48%
    }
    body.generic-sub-page .grid-list li:nth-child(3n+2) {
        margin: 0 0 70px
    }
    body.generic-sub-page .grid-list li:nth-child(2n+1) {
        clear: both;
        margin-right: 4%
    }
    body.generic-sub-page .grid-list li:nth-child(3n+1) {
        clear: none
    }
}

@media (max-width: 767px) {
    body.generic-sub-page .header p {
        font-size: 18px
    }
}

@media (max-width: 567px) {
    body.generic-sub-page .grid-list li {
        float: none;
        width: auto;
        margin: 0 0 70px !important
    }
}

body.who-we-are #testimonial {
    padding-bottom: 40px;
    text-align: center;
    color: black;
    background: whitesmoke
}

body.who-we-are #testimonial img {
    width: 100%
}

body.who-we-are #testimonial blockquote {
    text-shadow: none
}

body.who-we-are #testimonial blockquote:after {
    background: black
}

body.who-we-are #team {
    position: relative;
    padding: 180px 0;
    background: url("content/who-we-are/team-2b2ae77d3065b2ecae4c998b7044dddd.jpg") center center no-repeat;
    background-size: cover;
    text-align: center
}

body.who-we-are #team .label {
    margin: 0;
    padding: 10px 20px;
    background: rgba(0, 0, 0, 0.5);
    font-size: 11px;
    color: white;
    position: absolute;
    bottom: 10px;
    left: 10px
}

body.who-we-are #team h3 {
    font-size: 60px
}

body.who-we-are #team h3 strong {
    font-weight: 400
}

@media (max-width: 767px) {
    body.who-we-are #testimonial {
        background-attachment: scroll
    }
}

@media (max-width: 767px) {
    body.who-we-are #testimonial {
        padding: 80px 0
    }
    body.who-we-are #team {
        padding: 80px 0
    }
    body.who-we-are #team h3 {
        font-size: 34px
    }
}

body.what-we-do #our-offering {
    padding: 100px 0 50px;
    background: #121713;
    text-align: center
}

body.what-we-do #our-offering p {
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: 100
}

body.what-we-do #our-offering p:first-child {
    font-weight: 300;
    text-transform: uppercase
}

body.what-we-do #our-offering p:first-child a {
    color: white
}

body.what-we-do #our-offering .button {
    min-width: 180px
}

body.what-we-do #our-offering .button:first-of-type {
    margin-right: 10px
}

body.what-we-do #our-offering h3 {
    max-width: 540px;
    margin: 70px auto 0;
    font-size: 44px;
    font-weight: 100;
    text-transform: uppercase
}

body.what-we-do #our-offering h3:before {
    content: "";
    display: block;
    margin: 0 auto 70px;
    background: white;
    width: 150px;
    height: 2px
}

@media (max-width: 767px) {
    body.what-we-do #our-offering h3 {
        font-size: 28px
    }
}

@media (max-width: 567px) {
    body.what-we-do #our-offering .button:first-of-type {
        margin: 0 0 20px
    }
}

body.what-we-do #events ul {
    margin: 0;
    padding: 0;
    list-style: none
}

body.what-we-do #events ul li {
    position: relative;
    float: left;
    width: 50%;
    padding: 21px;
    background-position: center center;
    background-size: cover;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.what-we-do #events ul li:before,
body.what-we-do #events ul li:after {
    content: "";
    border: 1px solid white
}

body.what-we-do #events ul li:before {
    border-right: none;
    border-left: none;
    -webkit-transition: right 0.5s;
    -moz-transition: right 0.5s;
    transition: right 0.5s;
    position: absolute;
    top: 20px;
    right: 100%;
    bottom: 20px;
    left: 20px
}

body.what-we-do #events ul li:after {
    border-top: none;
    border-bottom: none;
    -webkit-transition: top 0.5s;
    -moz-transition: top 0.5s;
    transition: top 0.5s;
    position: absolute;
    top: 100%;
    right: 20px;
    bottom: 20px;
    left: 20px
}

.no-touch body.what-we-do #events ul li:hover:before,
.touch body.what-we-do #events ul li:before {
    right: 20px
}

.no-touch body.what-we-do #events ul li:hover:after,
.touch body.what-we-do #events ul li:after {
    top: 20px
}

body.what-we-do #events ul li.weddings {
    background-image: url("images/weddings.jpg")
}
body.what-we-do #events ul li.activite1 {
    background-image: url("images/activite1.jpg")
}
body.what-we-do #events ul li.activite2 {
    background-image: url("images/activite2.jpg")
}
body.what-we-do #events ul li.activite3 {
    background-image: url("images/activite3.jpg")
}
body.what-we-do #events ul li.activite4 {
    background-image: url("images/activite4.jpg")
}
body.what-we-do #events ul li.activite5 {
    background-image: url("images/activite5.jpg")
}
body.what-we-do #events ul li.activite6 {
    background-image: url("images/activite6.jpg")
}

body.what-we-do #events ul li.birthdays {
    background-image: url("images/birthdays.jpg")
}

body.what-we-do #events ul li.business {
    background-image: url("images/business-affairs.jpg")
}

body.what-we-do #events ul li.intimate {
    background-image: url("images/intimate-parties.jpg")
}

body.what-we-do #events ul li.international {
    background-image: url("content/what-we-do/international-events-8fcd425096976de1b0b677a9361f8b0e.jpg")
}

body.what-we-do #events ul li.touches {
    background-image: url("content/what-we-do/finishing-touches-42177435d328ce933bb5b0172920620c.jpg")
}

body.what-we-do #events ul a {
    display: block;
    position: relative;
    height: 260px;
    font-size: 0;
    text-align: center;
    text-decoration: none;
    color: white;
    z-index: 1;
    -webkit-transition: background 0.5s;
    -moz-transition: background 0.5s;
    transition: background 0.5s
}

body.what-we-do #events ul a:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 0px;
    height: 100%
}

.no-touch body.what-we-do #events ul a:hover,
.touch body.what-we-do #events ul a {
    background: rgba(0, 0, 0, 0.5)
}

body.what-we-do #events ul h4 {
    display: inline-block;
    vertical-align: middle;
    margin: 0
}

body.what-we-do #events ul h4:after {
    display: none
}

@media (max-width: 767px) {
    body.what-we-do #events ul li {
        float: none;
        display: block;
        width: auto
    }
}

body.what-we-do #archive {
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: center;
    clear: both
}

body.what-we-do #archive .button {
    font-size: 46px;
    font-weight: 300
}

body.case-study #banner {
    color: white
}

body.case-study section[role="main"] {
    background: white;
    text-align: center;
    color: black
}

body.case-study section[role="main"] #main-content {
    padding: 80px 0;
    font-size: 14px;
    line-height: 1.6
}

body.case-study section[role="main"] #gallery h2,
body.case-study section[role="main"] #gallery body.what-we-do #events ul h4,
body.what-we-do #events ul body.case-study section[role="main"] #gallery h4,
body.case-study section[role="main"] #gallery #cta h3,
#cta body.case-study section[role="main"] #gallery h3 {
    margin-bottom: 40px;
    font-size: 32px;
    text-shadow: none
}

body.case-study section[role="main"] #gallery h2:after,
body.case-study section[role="main"] #gallery body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.case-study section[role="main"] #gallery h4:after,
body.case-study section[role="main"] #gallery #cta h3:after,
#cta body.case-study section[role="main"] #gallery h3:after {
    background: black
}

#gallery {
    padding-bottom: 80px
}

#gallery .gallery-grid {
    margin: 0 2%;
    padding: 0;
    list-style: none
}

@media (max-width: 567px) {
    #gallery .gallery-grid {
        width: 300px;
        margin: 0 auto
    }
}

#gallery .gallery-grid li {
    float: left;
    width: 23.5%;
    margin: 2% 2% 0 0
}

#gallery .gallery-grid li:nth-child(4n) {
    margin-right: 0
}

#gallery .gallery-grid li:nth-child(4n+1) {
    clear: both
}

@media (max-width: 1023px) {
    #gallery .gallery-grid li {
        width: 32%
    }
    #gallery .gallery-grid li:nth-child(4n) {
        margin-right: 2%
    }
    #gallery .gallery-grid li:nth-child(4n+1) {
        clear: none
    }
    #gallery .gallery-grid li:nth-child(3n) {
        margin-right: 0
    }
    #gallery .gallery-grid li:nth-child(3n+1) {
        clear: both
    }
}

@media (max-width: 768px) {
    #gallery .gallery-grid li {
        width: 49%
    }
    #gallery .gallery-grid li:nth-child(3n) {
        margin-right: 2%
    }
    #gallery .gallery-grid li:nth-child(3n+1) {
        clear: none
    }
    #gallery .gallery-grid li:nth-child(2n) {
        margin-right: 0
    }
    #gallery .gallery-grid li:nth-child(2n+1) {
        clear: both
    }
}

@media (max-width: 568px) {
    #gallery .gallery-grid li {
        float: none;
        width: auto;
        margin-right: 0 !important;
        margin-top: 20px
    }
}

#gallery .gallery-grid li.video {
    position: relative;
    background: black;
    height: 238px
}

#gallery .gallery-grid li.video img {
    opacity: 0.4;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0
}

#gallery .gallery-grid li.video:after {
    content: "Video";
    font-size: 40px;
    font-weight: 100;
    text-transform: uppercase;
    color: white;
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 10px;
    left: 10px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

#gallery .gallery-grid li img {
    display: block;
    width: 100%
}

#gallery .gallery-grid li a {
    display: block
}

body.sector .content-block {
    position: relative;
    padding-top: 485px;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

@media (max-width: 1023px) {
    body.sector .content-block {
        padding-top: 300px
    }
    body.sector .content-block .content {
        padding: 80px 0
    }
}

body.sector .content-block .background {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px
}

body.sector .content-block .background img {
    display: block;
    width: auto;
    min-width: 100%;
    max-width: none;
    min-height: 100%;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%)
}

body.sector .content-block.right .content .col {
    margin-left: auto;
    text-align: right
}

body.sector .content-block.right .content .col h2:after,
body.sector .content-block.right .content .col body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.sector .content-block.right .content .col h4:after,
body.sector .content-block.right .content .col #cta h3:after,
#cta body.sector .content-block.right .content .col h3:after {
    margin-left: auto;
    margin-right: 0
}

body.sector .content-block .content {
    position: relative;
    padding: 100px 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1
}

body.sector .content-block .content .col {
    max-width: 450px
}

body.sector .content-block .content .col h2,
body.sector .content-block .content .col body.what-we-do #events ul h4,
body.what-we-do #events ul body.sector .content-block .content .col h4,
body.sector .content-block .content .col #cta h3,
#cta body.sector .content-block .content .col h3 {
    font-size: 32px
}

body.sector .content-block .content .col h2:after,
body.sector .content-block .content .col body.what-we-do #events ul h4:after,
body.what-we-do #events ul body.sector .content-block .content .col h4:after,
body.sector .content-block .content .col #cta h3:after,
#cta body.sector .content-block .content .col h3:after {
    margin-left: 0
}

body.sector .content-block .content .col p {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6
}

body.sector #case-link {
    position: relative;
    display: inline-block;
    margin: 40px 0 80px;
    font-size: 42px;
    font-weight: 100;
    text-decoration: none;
    text-transform: uppercase;
    color: white
}

body.sector #case-link:after {
    content: "";
    background: white;
    width: 0px;
    height: 1px;
    position: absolute;
    bottom: -3px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: width 0.5s;
    -moz-transition: width 0.5s;
    transition: width 0.5s
}

.no-touch body.sector #case-link:hover:after {
    width: 100%
}

body.sector #sectors a {
    position: relative;
    display: block;
    float: left;
    width: 16.6%;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    color: white
}

body.sector #sectors a img {
    display: block;
    width: 100%
}

body.sector #sectors a h4 {
    margin: 0;
    font-size: 28px;
    font-weight: 100;
    position: absolute;
    top: 50%;
    right: 10px;
    left: 10px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

.no-touch body.sector #sectors a:hover h4 {
    text-decoration: underline
}

@media (max-width: 1300px) {
    body.sector #sectors a {
        width: 33.3%
    }
}

@media (max-width: 1023px) {
    body.sector .content-block {
        padding: 0
    }
    body.sector .content-block .background {
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto
    }
    body.sector .content-block .background img {
        width: 100%;
        min-height: 0;
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none
    }
}

@media (max-width: 767px) {
    body.sector #sectors a {
        width: 50%
    }
    body.sector .content-block .content .col h2,
    body.sector .content-block .content .col body.what-we-do #events ul h4,
    body.what-we-do #events ul body.sector .content-block .content .col h4,
    body.sector .content-block .content .col #cta h3,
    #cta body.sector .content-block .content .col h3 {
        font-size: 28px
    }
    body.sector #case-link {
        font-size: 28px
    }
}

@media (max-width: 567px) {
    body.sector #sectors a {
        width: 100%
    }
}

body.contact #banner {
    padding: 100px 0 0
}

body.contact #banner p.thanks {
    font-size: 20px
}

.span_point{
    color: #000 !important;
}
body.contact #human-form {
    /*max-width: 780px;*/
    max-width: 100%;
    margin: 0 auto 50px;
    text-align: left
}

body.contact #human-form p {
    font-size: 26px;
    font-weight: 100;
    line-height: 1.6
}

body.contact #human-form span {
    display: inline-block;
    outline: none;
    border-bottom: 3px dotted white;
    font-weight: 400;
    -webkit-transition: border-color 0.3s, color 0.3s;
    -moz-transition: border-color 0.3s, color 0.3s;
    transition: border-color 0.3s, color 0.3s
}

body.contact #human-form span.error {
    border-color: #ff8f8f;
    color: #ff8f8f
}

body.contact form {
    max-width: 780px;
    margin: 0 auto 50px;
    text-align: left
}

body.contact form fieldset {
    display: none
}

@media (max-width: 767px) {
    body.contact #human-form p {
        font-size: 18px
    }
}

#address {
    position: relative;
    padding: 50px 0;
    background: rgba(0, 0, 0, 0.5);
    color: black;
    z-index: 1;
    text-align: left
}

#address img {
    display: block;
    max-width: 240px;
    width: 100%;
    margin-bottom: 20px
}

#address p {
    margin: 0;
    font-size: 24px;
    color: white
}

#address p a {
    text-decoration: none;
    color: white
}

#address p img {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    margin: -2px 0 0
}

@media (max-width: 767px) {
    #address p {
        font-size: 18px
    }
}

body.login #banner {
    padding: 100px 0
}

body.login #banner p {
    font-size: 28px
}

body.login form {
    -moz-placeholder-color: white;
    -moz-placeholder-opacity: 0.5;
    -ms-input-placeholder-color: white;
    -ms-input-placeholder-opacity: 0.5
}

body.login form h3 {
    font-size: 28px;
    font-weight: 100
}

body.login form input[type="text"] {
    vertical-align: middle;
    height: 41px;
    margin-right: 6px;
    padding: 8px 20px;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid white;
    font-size: 16px;
    color: white;
    outline: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.login form::-webkit-input-placeholder {
    color: white;
    opacity: 0.5
}

body.login form::-moz-placeholder {
    color: white;
    opacity: 0.5
}

@media (max-width: 767px) {
    body.login #banner p {
        font-size: 24px
    }
    body.login form h3 {
        font-size: 20px
    }
}

@media (max-width: 567px) {
    body.login form input[type="text"] {
        display: block;
        width: 100%;
        margin: 0 0 10px
    }
}

body.portfolio h1,
body.portfolio body.who-we-are #team h3,
body.who-we-are #team body.portfolio h3,
body.portfolio .four-oh-four #banner p,
.four-oh-four #banner body.portfolio p {
    text-shadow: 0 0 50px black, 0 0 25px black
}

body.portfolio #folio-grid .row {
    clear: both
}

body.portfolio #folio-grid .item {
    position: relative;
    float: left;
    width: 50%
}

body.portfolio #folio-grid .item.half .image-wrap {
    float: left;
    width: 50%
}

.no-touch body.portfolio #folio-grid .item:hover>.label,
.touch body.portfolio #folio-grid .item>.label {
    opacity: 1
}

.touch body.portfolio #folio-grid .item>.label {
    font-size: 12px
}

body.portfolio #folio-grid .item img {
    display: block;
    width: 100%
}

body.portfolio #folio-grid .item .image-wrap {
    position: relative
}

.no-touch body.portfolio #folio-grid .item .image-wrap:hover>.label,
.touch body.portfolio #folio-grid .item .image-wrap>.label {
    opacity: 1
}

.touch body.portfolio #folio-grid .item .image-wrap>.label {
    font-size: 12px
}

body.portfolio #folio-grid .item .label {
    margin: 0;
    padding: 10px;
    background: rgba(0, 0, 0, 0.5);
    font-size: 14px;
    font-weight: 300;
    text-transform: uppercase;
    max-width: calc(100% - 40px);
    opacity: 0;
    position: absolute;
    bottom: 20px;
    left: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s
}

body.portfolio #folio-grid .item .label strong {
    font-weight: 600
}

body.portfolio #folio-grid .item .label sup {
    font-size: 8px
}

body.portfolio #folio-grid .item .text {
    position: relative
}

body.portfolio #folio-grid .item .text .content {
    padding: 40px;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    right: 0px;
    bottom: 0px;
    left: 0px
}

body.portfolio #folio-grid .item .text .content p {
    margin: 0;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6
}

@media (max-width: 767px) {
    body.portfolio #folio-grid .item {
        float: none;
        width: auto
    }
}

@media (max-width: 567px) {
    body.portfolio #folio-grid .item.half .image-wrap {
        float: none;
        width: 100%
    }
    body.portfolio #folio-grid .item .text .content {
        padding: 20px;
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto
    }
}

body.team #preloader {
    display: block !important
}

body.team #team-nav {
    padding: 40px 0;
    background: white;
    overflow: hidden
}

body.team #team-nav .slick-prev,
body.team #team-nav .slick-next {
    right: -30px;
    width: 30px;
    height: 20px
}

body.team #team-nav .slick-prev:before,
body.team #team-nav .slick-next:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url("interface/arrow-black-7b5700178cebc050f213ee83896ed732.svg") right top no-repeat
}

body.team #team-nav .slick-prev {
    right: auto;
    left: -30px
}

body.team #team-nav .slick-prev:before {
    background: url("interface/arrow-back-black-9e2b029b32765c1c6ce59a00a839a036.svg") left top no-repeat
}

body.team #team-nav.stuck {
    z-index: 2;
    padding: 20px 0 0;
    border-bottom: 1px solid #e3e3e3;
    position: fixed;
    top: 100px;
    right: 0px;
    left: 0px
}

body.team #team-nav.stuck span {
    display: none
}

body.team #team-nav .nav {
    margin: 0
}

body.team #team-nav a {
    display: block;
    margin: 0 10px;
    font-size: 16px;
    font-weight: 300;
    text-align: center;
    text-decoration: none;
    color: black
}

body.team #team-nav a img {
    display: block;
    width: 100%
}

body.team #team-nav a span {
    display: block;
    margin-top: 10px
}

@media (max-width: 1024px) {
    body.team #team-nav,
    body.team .sticky-wrapper {
        display: none
    }
}

body.team #team-members {
    background: white
}

body.team #team-members .member {
    background: white;
    color: black
}

body.team #team-members .member:last-child {
    padding-bottom: 25%
}

body.team #team-members .member:nth-child(odd) .content {
    margin-left: auto
}

body.team #team-members .member:nth-child(odd) .image {
    left: 0;
    right: auto
}

body.team #team-members .member blockquote {
    margin: 40px 0 0;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5
}

body.team #team-members .member blockquote:after {
    display: none
}

body.team #team-members .member .container {
    min-height: 400px;
    padding-top: 150px;
    padding-bottom: 150px;
    position: relative
}

body.team #team-members .member .content {
    position: relative;
    width: 50%;
    text-align: center
}

body.team #team-members .member .content p {
    font-size: 16px;
    line-height: 1.6
}

body.team #team-members .member .content p:last-child {
    margin-bottom: 0
}

body.team #team-members .member .image {
    overflow: hidden;
    width: 50%;
    height: 612px;
    position: absolute;
    top: 50%;
    right: 0px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

body.team #team-members .member .image:after {
    content: "";
    background-color: transparent !important;
    position: absolute;
    top: 50%;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-color: rgba(255, 255, 255, 0);
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), #fff);
    background-image: linear-gradient(rgba(255, 255, 255, 0), #fff)
}

body.team #team-members .member .image img {
    opacity: 0;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

body.team #team-members .member .image img:first-child {
    opacity: 1
}

@media (min-width: 768px) {
    body.team #team-members .member h2,
    body.team #team-members .member body.what-we-do #events ul h4,
    body.what-we-do #events ul body.team #team-members .member h4,
    body.team #team-members .member #cta h3,
    #cta body.team #team-members .member h3 {
        font-size: 32px
    }
}

@media (max-width: 1023px) {
    body.team #team-members .member .container {
        padding-top: 80px;
        padding-bottom: 80px;
        min-height: 480px
    }
    body.team #team-members .member .image {
        height: 480px
    }
}

@media (max-width: 767px) {
    body.team #team-members .member .image {
        height: 355px
    }
    body.team #team-members .member .container {
        min-height: 355px
    }
    body.team #team-members .member .content p {
        font-size: 14px
    }
    body.team #team-members .member .content blockquote {
        font-size: 20px
    }
}

@media (max-width: 567px) {
    body.team #team-members .member .content {
        width: auto
    }
    body.team #team-members .member .container {
        padding-top: 40px;
        min-height: 0
    }
    body.team #team-members .member .image {
        display: block;
        width: auto;
        height: 375px;
        margin: 0 auto 20px;
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none
    }
}

body.an-event-in-the-making {
    overflow: hidden
}

.loaded body.an-event-in-the-making {
    overflow: auto
}

body.an-event-in-the-making section[role="main"] {
    background: white
}

body.an-event-in-the-making section[role="main"] p {
    color: black
}

body.an-event-in-the-making section[role="main"] .gallery-grid li:after {
    margin-top: -15px;
    text-align: center
}

body.an-event-in-the-making section[role="main"] .gallery-grid li p {
    color: white
}

body.an-event-in-the-making #set-height {
    display: block;
    height: 49200px
}

.touch body.an-event-in-the-making #set-height {
    display: none
}

@media (max-width: 1023px) {
    body.an-event-in-the-making #set-height {
        display: none
    }
}

body.an-event-in-the-making #video-container {
    width: 100%;
    height: calc(100% - 170px);
    position: fixed;
    top: 100px;
    left: 0px;
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    transition: opacity 1s
}

body.an-event-in-the-making #video-container.init {
    opacity: 0
}

body.an-event-in-the-making #video-container video {
    min-width: 100%;
    min-height: 100%;
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

body.an-event-in-the-making .scroll-note {
    text-transform: uppercase;
    position: fixed;
    bottom: 100px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%)
}

body.an-event-in-the-making .scroll-note:after {
    content: "";
    margin-top: 10px;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: white transparent transparent transparent;
    width: 0px;
    height: 0px;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%)
}

body.an-event-in-the-making #user-guide {
    z-index: 10;
    position: fixed;
    top: 130px;
    right: 30px
}

body.an-event-in-the-making #user-guide .help {
    cursor: pointer;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.5);
    border: 2px solid white;
    text-align: center;
    font-size: 20px;
    line-height: 40px;
    width: 40px;
    height: 40px
}

body.an-event-in-the-making #user-guide .help:hover+.instructions {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s
}

body.an-event-in-the-making #user-guide .instructions {
    width: 400px;
    margin-right: 20px;
    padding: 30px;
    background: rgba(0, 0, 0, 0.8);
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0px;
    right: 100%;
    -webkit-transition: opacity 0.3s, visibility 0s 0.3s;
    -moz-transition: opacity 0.3s, visibility 0s 0.3s;
    transition: opacity 0.3s, visibility 0s 0.3s
}

body.an-event-in-the-making #user-guide p {
    font-size: 13px
}

body.an-event-in-the-making #spine {
    z-index: 3;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    position: fixed;
    bottom: 110px;
    left: 40px
}

body.an-event-in-the-making #spine .play-head {
    background: white;
    border-radius: 50%;
    z-index: 1;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0px;
    left: -4px
}

body.an-event-in-the-making #spine ul {
    position: relative;
    height: 492px;
    width: 2px;
    margin: 0;
    padding: 0;
    background: white;
    list-style: none
}

body.an-event-in-the-making #spine li {
    width: 175px;
    margin-top: -3px;
    position: absolute;
    top: 0px;
    left: -4px
}

body.an-event-in-the-making #spine li:nth-child(1) {
    top: 0
}

body.an-event-in-the-making #spine li:nth-child(2) {
    top: 100px
}

body.an-event-in-the-making #spine li:nth-child(3) {
    top: 120px
}

body.an-event-in-the-making #spine li:nth-child(4) {
    top: 190px
}

body.an-event-in-the-making #spine li:nth-child(5) {
    top: 234px
}

body.an-event-in-the-making #spine li:nth-child(6) {
    top: 280px
}

body.an-event-in-the-making #spine li:nth-child(7) {
    top: 330px
}

body.an-event-in-the-making #spine li:nth-child(8) {
    top: 360px
}

body.an-event-in-the-making #spine li:nth-child(9) {
    top: 410px
}

body.an-event-in-the-making #spine li:nth-child(10) {
    top: 485px
}

body.an-event-in-the-making #spine a {
    display: block;
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
    text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
    color: white;
    cursor: pointer
}

body.an-event-in-the-making #spine a:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin: -2px 10px 0 0;
    background: black;
    border: 2px solid white;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.an-event-in-the-making #hotspots {
    z-index: 2;
    position: fixed;
    top: 100px;
    right: 0px;
    bottom: 70px;
    left: 0px
}

body.an-event-in-the-making #hotspots .hotspot {
    position: absolute;
    padding-left: 40px;
    background: rgba(0, 0, 0, 0.5);
    border: 2px solid white;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    width: 40px;
    height: 44px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body.an-event-in-the-making #hotspots .hotspot:after {
    content: "";
    border: 2px solid white;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px
}

body.an-event-in-the-making #hotspots .hotspot:before {
    content: "+";
    font-size: 20px;
    text-align: center;
    line-height: 40px;
    color: white;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(1) {
    left: 50%;
    top: 60%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(2) {
    left: 75%;
    top: 25%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(3) {
    left: 25%;
    top: 75%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(4) {
    left: 50%;
    top: 10%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(5) {
    left: 30%;
    top: 80%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(6) {
    left: 70%;
    top: 30%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(7) {
    left: 75%;
    top: 60%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(8) {
    left: 30%;
    top: 30%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(9) {
    left: 80%;
    top: 80%
}

body.an-event-in-the-making #hotspots .hotspot:nth-child(10) {
    left: 30%;
    top: 20%
}

body.an-event-in-the-making #gallery {
    padding: 80px 0
}

body.an-event-in-the-making #gallery p {
    margin: 0;
    padding: 10px
}

@media (min-width: 1024px) {
    body.an-event-in-the-making section[role="main"] {
        display: none
    }
    .touch body.an-event-in-the-making section[role="main"] {
        display: block
    }
    body.an-event-in-the-making footer[role="contentinfo"] {
        position: fixed;
        right: 0px;
        bottom: 0px;
        left: 0px
    }
}

body.admin section[role="main"] {
    background: white
}

body.admin section[role="main"] #banner {
    min-height: 0
}

body.admin section[role="main"] .main {
    padding-top: 80px;
    padding-bottom: 80px;
    color: black
}

body.admin section[role="main"] form fieldset {
    margin: 0;
    padding: 0;
    border: none
}

body.admin section[role="main"] form input:not([type="checkbox"]) {
    width: 100%;
    margin-bottom: 20px;
    padding: 10px;
    border: 1px solid #cccccc;
    outline: none
}

body.admin section[role="main"] form input[type="checkbox"] {
    margin-bottom: 20px;
    margin-right: 10px
}

body.admin section[role="main"] form label {
    display: block;
    margin-bottom: 10px
}

header[role="banner"] {
    height: 100px;
    padding: 20px 20px;
    background: black;
    z-index: 25;
    position: fixed;
    top: 0px;
    right: 0px;
    left: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

header[role="banner"] #brand {
    display: inline-block;
    width: 330px
}

header[role="banner"] #brand img {
    max-width: 100%
}

header[role="banner"] [data-behaviour="toggle-nav"] {
    display: none;
    float: right;
    margin: 3px 0 0;
    padding: 0;
    background: none;
    border: none;
    outline: none;
    width: 40px;
    height: 40px
}

header[role="banner"] [data-behaviour="toggle-nav"]:after,
header[role="banner"] [data-behaviour="toggle-nav"]:before {
    content: "";
    display: block;
    -webkit-transition-property: all;
    -moz-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.1s;
    -moz-transition-duration: 0.1s;
    transition-duration: 0.1s;
    -webkit-transition-timing-function: ease-in;
    -moz-transition-timing-function: ease-in;
    transition-timing-function: ease-in
}

header[role="banner"] [data-behaviour="toggle-nav"]:after {
    border-top: 4px solid white
}

header[role="banner"] [data-behaviour="toggle-nav"]:before {
    border-top: 4px solid white
}

header[role="banner"] [data-behaviour="toggle-nav"] span {
    border-top: 4px solid white;
    display: block;
    margin: 10px 0;
    width: 100%;
    height: 2px;
    -webkit-transition-property: all;
    -moz-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.1s;
    -moz-transition-duration: 0.1s;
    transition-duration: 0.1s;
    -webkit-transition-timing-function: ease-in;
    -moz-transition-timing-function: ease-in;
    transition-timing-function: ease-in
}

header[role="banner"] [data-behaviour="toggle-nav"].active:after {
    margin-top: -4px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    -o-transform-origin: center;
    transform-origin: center;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d
}

header[role="banner"] [data-behaviour="toggle-nav"].active:before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    -o-transform-origin: center;
    transform-origin: center;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d
}

header[role="banner"] [data-behaviour="toggle-nav"].active span {
    display: none
}

header[role="banner"] nav[role="navigation"] {
    float: right;
    margin-top: 10px;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none
}

header[role="banner"] nav[role="navigation"] ul {
    font-size: 0
}

header[role="banner"] nav[role="navigation"] li {
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px;
    font-size: 14px;
    font-weight: 100
}

header[role="banner"] nav[role="navigation"] li:first-child {
    margin-left: 0
}

/*header[role="banner"] nav[role="navigation"] li:last-child {
    display: none
}*/

header[role="banner"] nav[role="navigation"] a {
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    color: white
}

header[role="banner"] nav[role="navigation"] a:not(.button) {
    position: relative;
    padding: 0 0 2px
}

header[role="banner"] nav[role="navigation"] a:not(.button):after {
    content: "";
    background: white;
    width: 0%;
    height: 1px;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: width 0.2s;
    -moz-transition: width 0.2s;
    transition: width 0.2s
}

.no-touch header[role="banner"] nav[role="navigation"] a:not(.button):hover:after,
.touch header[role="banner"] nav[role="navigation"] a:not(.button):active:after,
header[role="banner"] nav[role="navigation"] a:not(.button).active:after {
    width: 100%
}

.description_center{
    text-align: center !important;
}

.a_color{
    color: #FFF !important;
}

@media (max-width: 1023px) {
    header[role="banner"] {
        height: 85px;
        padding: 10px 20px
    }
    header[role="banner"] #brand {
        width: 260px
    }
    header[role="banner"] [data-behaviour="toggle-nav"] {
        display: block
    }
    header[role="banner"] nav[role="navigation"] {
        width: 100%;
        margin: 0;
        padding: 30px;
        background: rgba(255, 255, 255, 0.95);
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        z-index: 30;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        position: fixed;
        top: 70px;
        right: 100%;
        bottom: 0px;
        -webkit-transition-property: -webkit-transform;
        -moz-transition-property: -moz-transform;
        transition-property: transform;
        -webkit-transition-duration: 0.5s;
        -moz-transition-duration: 0.5s;
        transition-duration: 0.5s;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
    }
    header[role="banner"] nav[role="navigation"].open {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%)
    }
    header[role="banner"] nav[role="navigation"] li {
        display: block;
        margin: 0 0 20px
    }
    header[role="banner"] nav[role="navigation"] li:last-child {
        display: block
    }
    header[role="banner"] nav[role="navigation"] a {
        display: block;
        padding: 0 !important;
        font-size: 30px;
        font-weight: 400;
        text-align: center;
        color: black
    }
    header[role="banner"] nav[role="navigation"] a:after {
        display: none
    }
    header[role="banner"] nav[role="navigation"] .button {
        border: none
    }
    header[role="banner"] nav[role="navigation"] .button:before {
        display: none
    }
}

footer[role="contentinfo"] {
    height: 70px;
    padding: 15px 40px;
    background: black;
    text-align: right;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.no-touch .home footer[role="contentinfo"] {
    z-index: 20;
    position: fixed;
    right: 0px;
    bottom: 0px;
    left: 0px
}

footer[role="contentinfo"] p {
    margin: 0;
    font-weight: 100;
    text-transform: uppercase;
    color: white
}

footer[role="contentinfo"] p.copy {
    float: left;
    margin-top: 12px;
    font-size: 13px
}

footer[role="contentinfo"] p.copy img {
    display: inline-block;
    vertical-align: middle;
    width: 135px;
    margin: -5px 0 0 5px
}

footer[role="contentinfo"] p.copy sup {
    font-size: 8px
}

footer[role="contentinfo"] p.copy a {
    margin-left: 20px;
    text-decoration: none;
    color: white
}

footer[role="contentinfo"] p.login {
    float: right
}

footer[role="contentinfo"] p.login .button {
    margin-left: 20px
}

footer[role="contentinfo"] span.call {
    display: inline-block;
    vertical-align: middle;
    text-transform: uppercase;
    margin-top: 17px;
    font-size: 14px;
    font-weight: 100
}

@media (max-width: 1023px) {
    footer[role="contentinfo"] {
        height: auto
    }
    .no-touch .home footer[role="contentinfo"] {
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto
    }
    footer[role="contentinfo"] p.login {
        display: none
    }
    footer[role="contentinfo"] p.copy {
        float: none;
        text-align: center
    }
    footer[role="contentinfo"] span.call {
        display: block
    }
}

@media (max-width: 767px) {
    footer[role="contentinfo"] {
        padding: 15px 20px
    }
}

#banner {
    position: relative;
    padding-top: 150px;
    text-align: center;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

#banner [data-behaviour="carousel"] img {
    opacity: 0;
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    transition: opacity 1s
}

#banner [data-behaviour="carousel"] img.show {
    opacity: 1
}

.four-oh-four #banner p {
    font-size: 44px;
    margin: 0
}

.four-oh-four #banner p:after {
    display: none
}

.four-oh-four #banner p a {
    font-weight: 300;
    color: white
}

#banner.generic {
    padding: 200px 0;
    min-height: 700px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

#banner.generic h1:last-child,
#banner.generic body.who-we-are #team h3:last-child,
body.who-we-are #team #banner.generic h3:last-child,
.four-oh-four #banner.generic p:last-child {
    margin-bottom: 0
}

#banner.generic h1 small,
#banner.generic body.who-we-are #team h3 small,
body.who-we-are #team #banner.generic h3 small,
.four-oh-four #banner.generic p small {
    display: block;
    margin: 20px 0 30px;
    font-size: 24px;
    text-transform: none
}

#banner.generic h1 small strong,
#banner.generic body.who-we-are #team h3 small strong,
body.who-we-are #team #banner.generic h3 small strong,
.four-oh-four #banner.generic p small strong {
    white-space: nowrap
}

#banner .background {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px
}

#banner .background img {
    display: block;
    width: auto;
    min-width: 100%;
    max-width: none;
    min-height: 100%;
    z-index: 1;
    transition: filter 2s 3s, opacity 1s;
    -webkit-transition: -webkit-filter 2s 3s, opacity 1s;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%)
}

#banner .content {
    position: relative;
    z-index: 1
}

#banner.anim .background img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

#banner .intro {
    margin-top: 250px;
    padding: 60px 0;
    background: rgba(0, 0, 0, 0.5)
}

@media (max-width: 1023px) {
    #banner [data-behaviour="carousel"] img:not(: first-child) {
        position: absolute !important;
        top: 0 !important;
        left: 0;
        bottom: auto;
        width: 100%;
        min-height: 0
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner {
        padding: 0
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .background {
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .background img {
        display: block;
        width: 100%;
        min-height: 0;
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content {
        padding: 40px 0;
        background: white;
        color: black
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content .intro {
        margin: 40px 0 -40px;
        background: whitesmoke
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content h1,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content body.who-we-are #team h3,
    body.who-we-are #team body:not(.contact):not(.login):not(.four-oh-four) #banner .content h3,
    body:not(.contact):not(.login):not(.four-oh-four) .four-oh-four #banner .content p,
    .four-oh-four body:not(.contact):not(.login):not(.four-oh-four) #banner .content p,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content h2,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content body.what-we-do #events ul h4,
    body.what-we-do #events ul body:not(.contact):not(.login):not(.four-oh-four) #banner .content h4,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content #cta h3,
    #cta body:not(.contact):not(.login):not(.four-oh-four) #banner .content h3 {
        text-shadow: none
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content h1:after,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content body.who-we-are #team h3:after,
    body.who-we-are #team body:not(.contact):not(.login):not(.four-oh-four) #banner .content h3:after,
    body:not(.contact):not(.login):not(.four-oh-four) .four-oh-four #banner .content p:after,
    .four-oh-four body:not(.contact):not(.login):not(.four-oh-four) #banner .content p:after,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content h2:after,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content body.what-we-do #events ul h4:after,
    body.what-we-do #events ul body:not(.contact):not(.login):not(.four-oh-four) #banner .content h4:after,
    body:not(.contact):not(.login):not(.four-oh-four) #banner .content #cta h3:after,
    #cta body:not(.contact):not(.login):not(.four-oh-four) #banner .content h3:after {
        background: black
    }
    body:not(.contact):not(.login):not(.four-oh-four) #banner.generic {
        padding: 0;
        min-height: 0
    }
}

@media (max-width: 767px) {
    .four-oh-four #banner p {
        font-size: 28px
    }
}

#cta {
    padding: 80px 0;
    border-top: 2px solid #c9c9c9;
    text-align: center
}

.sector #cta {
    border-top: none
}

.sector #cta p a {
    color: white
}

.sector #cta h3:after {
    background: white
}

#cta p {
    margin-bottom: 40px;
    font-size: 24px;
    font-weight: 100
}

#cta p a {
    color: black;
    text-decoration: none
}

#cta h3 {
    margin-bottom: 40px;
    font-size: 32px;
    text-shadow: none
}

#cta h3:after {
    background: black
}

@media (max-width: 767px) {
    #cta h3 {
        font-size: 28px
    }
}

.generic-sub-page.media h3 {
    font-size: 30px;
    font-weight: 100;
    text-transform: uppercase
}

.generic-sub-page.media h3:after {
    content: "";
    display: block;
    margin-top: 20px;
    background: black;
    width: 60px;
    height: 2px
}

.media-group {
    padding: 40px 0;
    border-top: 2px solid #c9c9c9
}

.media-group:last-child {
    padding-bottom: 0
}

.media-list {
    clear: both;
    margin: 0;
    padding: 0;
    list-style: none
}

.media-list.video li img {
    margin-bottom: 20px
}

.media-list li {
    float: left;
    width: 23.5%;
    margin: 0 2% 2% 0;
    text-align: center
}

.media-list li:nth-child(4n) {
    margin-right: 0
}

.media-list li:nth-child(4n+1) {
    clear: both
}

.media-list li a {
    display: block
}

.media-list li img {
    width: 100%;
    display: block
}

@media (max-width: 1023px) {
    .media-list li {
        width: 32%
    }
    .media-list li:nth-child(4n) {
        margin-right: 2%
    }
    .media-list li:nth-child(4n+1) {
        clear: none
    }
    .media-list li:nth-child(3n) {
        margin-right: 0
    }
    .media-list li:nth-child(3n+1) {
        clear: both
    }
}

@media (max-width: 767px) {
    .media-list li {
        width: 49%
    }
    .media-list li:nth-child(3n) {
        margin-right: 2%
    }
    .media-list li:nth-child(3n+1) {
        clear: none
    }
    .media-list li:nth-child(2n) {
        margin-right: 0
    }
    .media-list li:nth-child(2n+1) {
        clear: both
    }
}

@media (max-width: 567px) {
    .media-list li {
        float: none;
        width: 100%;
        margin: 20px 0 0 !important
    }
    .media-list li:first-child {
        margin-top: 0 !important
    }
}

.lightbox {
    z-index: 300;
    background: rgba(0, 0, 0, 0.9);
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    position: fixed;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    -webkit-transition: visibility 0.3s, opacity 0.3s;
    -moz-transition: visibility 0.3s, opacity 0.3s;
    transition: visibility 0.3s, opacity 0.3s
}

.lightbox:not(.open) {
    visibility: hidden;
    opacity: 0
}

.lightbox img {
    display: block
}

.lightbox .close {
    background-image: url(interface/close-fa74104917d8e50f6260da4f738e8d5e.svg);
    z-index: 4;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 31px;
    height: 31px
}

.lightbox .next-arrow,
.lightbox .prev-arrow {
    z-index: 20;
    display: block;
    cursor: pointer;
    padding: 20px;
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -moz-transition: -moz-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55)
}

.lightbox .next-arrow:before,
.lightbox .prev-arrow:before {
    content: "";
    display: block;
    width: 16px;
    height: 20px
}

.lightbox .next-arrow:before {
    background-image: url(http://banana-split-production.cf.rawcdn.com/assets/interface/arrow-abf8d62e7112d223648bc113f9dd5212.svg)
}

.no-touch .lightbox .next-arrow:hover {
    -webkit-transform: translateX(10px);
    -moz-transform: translateX(10px);
    -ms-transform: translateX(10px);
    -o-transform: translateX(10px);
    transform: translateX(10px)
}

.lightbox .prev-arrow:before {
    background-image: url(http://banana-split-production.cf.rawcdn.com/assets/interface/arrow-back-b15e1ac9a25d1c204b1ac26febc1b9d5.svg)
}

.no-touch .lightbox .prev-arrow:hover {
    -webkit-transform: translateX(-10px);
    -moz-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    -o-transform: translateX(-10px);
    transform: translateX(-10px)
}

.lightbox__wrap {
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: justify;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: width 0.5s;
    -moz-transition: width 0.5s;
    transition: width 0.5s
}

.lightbox__showcase {
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 102px;
    left: 0px
}

.lightbox__showcase-item {
    -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
    -moz-transition: -moz-transform 0.5s, opacity 0.5s;
    transition: transform 0.5s, opacity 0.5s;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%
}

.lightbox__showcase-item img {
    max-width: 100vw;
    max-height: calc(100vh - 102px);
    pointer-events: none
}

.lightbox__showcase-item:not(.active) {
    opacity: 0;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: translate(-150%, -50%) rotateY(-90deg);
    -moz-transform: translate(-150%, -50%) rotateY(-90deg);
    -ms-transform: translate(-150%, -50%) rotateY(-90deg);
    -o-transform: translate(-150%, -50%) rotateY(-90deg);
    transform: translate(-150%, -50%) rotateY(-90deg)
}

.lightbox__showcase-item.active ~ .lightbox__showcase-item {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: translate(50%, -50%) rotateY(90deg);
    -moz-transform: translate(50%, -50%) rotateY(90deg);
    -ms-transform: translate(50%, -50%) rotateY(90deg);
    -o-transform: translate(50%, -50%) rotateY(90deg);
    transform: translate(50%, -50%) rotateY(90deg)
}

.lightbox__list-wrap {
    overflow: hidden;
    height: 102px;
    z-index: 300;
    position: absolute;
    right: 0px;
    bottom: 0px;
    left: 0px
}

.lightbox__list {
    white-space: nowrap;
    font-size: 0;
    overflow: visible;
    margin: 0 auto;
    width: 130px;
    height: 102px
}

.lightbox__list-item {
    height: 100px;
    display: inline-block;
    border: 1px solid transparent
}

.lightbox__list-item img {
    height: 100%
}

.lightbox__list-item.active {
    border: 1px solid white
}

@media all and (max-width: 1023px) {
    .lightbox__wrap {
        display: none
    }
    .lightbox__showcase {
        bottom: 52px
    }
    .lightbox__showcase-item img {
        max-height: calc(100vh - 52px)
    }
    .lightbox__list {
        width: 66px;
        height: 52px
    }
    .lightbox__list-item {
        height: 50px
    }
    .lightbox__list-wrap {
        height: 52px
    }
}

/* Extra Styles by Raheem */

#telechargementModal h5,
#telechargementModal label
{
    color: #000;
    float: left;
}
#telechargementModal label
{
    font-size: 14px;
}
#telechargementModal .modal-body p
{
    font-size: 14px;
    color: #000;
}

.s-about
{
    color: #121713;
    padding-top: 40px
}
.s-about .about-img-col
{
    margin: auto;
}
.s-header-about,.s-header-title
{
    background: #000;
}
.s-header-about .title,
.s-header-title .title
{
    margin-bottom: 0;
    text-align:center;
    padding-top: 20px;
}
.cf .third
{
    min-height: 225px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.menu-bas ul
{
    padding: 0;
    margin-top: 10vh;
    list-style: none;
}
.menu-bas ul a
{
    color: #fff;
    font-size: 16px;
    text-transform: uppercase;
    text-decoration: none;
    position: relative;
    margin-bottom: 20px;
    display: block;
    width: fit-content;
    padding-bottom: 5px;

}
.menu-bas ul a:hover
{
    color: #fff !important;
}
.menu-bas ul a:after
{
    content: "";
    background: white;
    width: 0%;
    height: 1px;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: width 0.2s;
    -moz-transition: width 0.2s;
    transition: width 0.2s;
}
.menu-bas ul a:hover:after
{
    width: 100%;
}

#archive .button {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    min-width: 140px;
    padding: 10px 20px;
    background: transparent;
    border: 1px solid black;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    color: black;
    overflow: hidden;
    outline: none;
    -webkit-transition: color 0.3s, border-color 0.3s;
    -moz-transition: color 0.3s, border-color 0.3s;
    transition: color 0.3s, border-color 0.3s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.about-row img
{
    max-width: 100%;
}
.realisation-style-2 h1
{
    font-size: 16px;
    font-weight: bold;
}
.catalogue
{
    margin: 100px 0 !important;
}
.catalogue a:hover
{
    color: #fff !important;
}