/* ----------------------------------------------------------------------------------
    Lucy Dream Gallery
    Designed & Built by Artlogic in London
---------------------------------------------------------------------------------- */

@import url(../lib/archimedes/styles/archimedes-cookie-notification.css);
#cookie_notification {
    background: #222;
}


/* ----------------------------------------------------------------------------------
  Layout
---------------------------------------------------------------------------------- */

html {
    background-color: #171717;
}

body {
    padding: 0;
    min-width: 320px;
}

body.overlay-open,
body.blockscroll {
    overflow: hidden;
}

.hidden {
    display: none;
}

.mobile-only {
    display: none;
}

#top_nav_section {
    display: none !important;
}

#header {
    pointer-events: none;
    position: fixed;
    z-index: 2101;
    top: 0;
    opacity: 0;
    left: 0;
    right: 0;
    padding: 45px 45px 20px;
    transform: translate3d(0, -100px, 0);
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 800ms ease-in-out, background 800ms ease-in-out;
    background: rgba(255, 255, 255, 0);
}

#header:before {
    display: block;
    display: none;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: opacity 800ms ease-in-out;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+1,ffffff+100&0.4+31,0+100 */
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.4) 1%, rgba(255, 255, 255, 0.4) 31%, rgba(255, 255, 255, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.4) 1%, rgba(255, 255, 255, 0.4) 31%, rgba(255, 255, 255, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.4) 1%, rgba(255, 255, 255, 0.4) 31%, rgba(255, 255, 255, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#66ffffff', endColorstr='#00ffffff', GradientType=0);
    /* IE6-9 */
}

body.cms-frontend-toolbar-active #header {
    top: 28px;
}

#header * {
    pointer-events: auto;
}

body.first-load-complete #header {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

body.splash-open #header,
body .scrolling-down #header,
body.x-page-transition-active.loader-incoming-type-standard:not(.browser-msedge) #header {
    opacity: 0;
    transform: translate3d(0, -100px, 0);
    background: rgba(255, 255, 255, 0);
}

body .hero-section-visible #header,
body .page-top #header {
    background: rgba(255, 255, 255, 0);
}

body.page-popup-active #header {
    opacity: 1;
    background: rgba(255, 255, 255, 0);
    transform: translate3d(0, 0, 0);
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 800ms ease-in-out, background 800ms ease-in-out;
}

body.active-init #container #header,
body.overlay-open #container #header {
    background: rgba(255, 255, 255, 0);
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 800ms ease-in-out, background 800ms ease-in-out;
}

body.overlay-open #container #header {
    transition: none !important;
}

#logo {
    float: left;
    width: 30px;
    height: 26px;
    position: relative;
    z-index: 10000;
    cursor: pointer;
    transition: transform 500ms cubic-bezier(.65, .06, .19, .96), opacity 500ms ease-in-out;
}

#logo a {
    display: block;
    text-indent: -9999px;
    width: 30px;
    height: 26px;
}

#logo:after {
    position: absolute;
    top: 19px;
    left: 24px;
    content: '';
    width: 6px;
    height: 6px;
    display: block;
    background: #fff;
    transition: background 800ms ease-in-out;
    border-radius: 20px;
}

#logo a:before,
#logo a:after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    width: 30px;
    height: 26px;
    display: block;
    background: url('../images/logo_full.png') 0 0 no-repeat;
    background-size: auto 100%;
    transition: opacity 800ms ease-in-out;
    top: 50%;
    transform: translateY(-50%);
}

body.first-load-complete #logo a:before,
body.first-load-complete #logo a:after {
    animation: logo-reveal 800ms cubic-bezier(.45, 0, .27, 1) 1 forwards;
    animation-delay: 1500ms;
    height: 16px;
    width: 400px;
}

body.ajax-loading-complete.loader-incoming-type-standard #logo a:before,
body.ajax-loading-complete.loader-incoming-type-standard #logo a:after,
xxxxbody #logo.hover a:before,
xxxxbody #logo.hover a:after {
    animation: none;
}

@keyframes logo-reveal {
    0% {
        width: 400px;
        height: 16px;
    }
    50% {
        width: 24px;
        height: 16px;
    }
    100% {
        width: 30px;
        height: 26px;
    }
}

body.first-load-complete #logo:after {
    animation: dot-reveal 200ms cubic-bezier(.45, 0, .27, 1) 1 forwards;
    transform: scale(0);
    animation-delay: 2200ms;
}

body.ajax-loading-complete.loader-incoming-type-standard #logo:after,
xxxxbody #logo.hover:after {
    animation: none;
}

@keyframes dot-reveal {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}

#logo a:after {
    background-image: url('../images/logo_full_reversed.png');
    opacity: 0;
}

body.content-type-reversed .hero-section-not-visible #logo:after {
    background: #151515;
}

body.content-type-reversed .hero-section-not-visible #logo a:before,
body.content-type-reversed-popup .hero-section-not-visible #logo a:before {
    opacity: 0;
}

body.content-type-reversed .hero-section-not-visible #logo a:after,
body.content-type-reversed-popup .hero-section-not-visible #logo a:after {
    opacity: 1;
}

body.overlay-open #container #logo a:after,
body.sc_quick_cart_widget_animate #container #logo a:after,
body.sc_wishlist_quick_cart_widget_animate #container #logo a:after {
    opacity: 0;
}

body.overlay-open #logo:after,
body.sc_quick_cart_widget_animate #logo:after,
body.sc_wishlist_quick_cart_widget_animate #logo:after {
    background: #fff;
}

body.page-popup-visible #container #logo a:after {
    opacity: 1;
}

body.page-popup-visible #container #logo:after {
    background: #151515;
}

body.overlay-open #container #logo a:before,
body.sc_quick_cart_widget_animate #container #logo a:before,
body.sc_wishlist_quick_cart_widget_animate #container #logo a:before {
    opacity: 1;
}

body.overlay-open #container #logo a:after,
body.sc_quick_cart_widget_animate #container #logo a:after,
body.sc_wishlist_quick_cart_widget_animate #container #logo a:after {
    opacity: 0;
}

body.overlay-open #container #logo:after,
body.sc_quick_cart_widget_animate #container #logo:after,
body.sc_wishlist_quick_cart_widget_animate #container #logo:after {
    background: #fff;
}

body.overlay-open #logo,
body.overlay-open #logo {}

body.nav-overlay-open.overlay-open #logo,
body.nav-overlay-open.overlay-open #logo {}

body.overlay-open #menu,
body.overlay-open #enquire,
body.overlay-open #search_menu,
body.overlay-open #basket,
body.overlay-open #mailinglist_signup_button,
body.overlay-open #wishlist,
body.overlay-open #top_nav,
body.page-popup-active #menu,
body.page-popup-active #enquire,
body.page-popup-active #search_menu,
body.page-popup-active #basket,
body.page-popup-active #mailinglist_signup_button,
body.page-popup-active #wishlist,
body.page-popup-active #top_nav,
body.sc_quick_cart_widget_animate #menu,
body.sc_quick_cart_widget_animate #enquire,
body.sc_quick_cart_widget_animate #search_menu,
body.sc_quick_cart_widget_animate #basket,
body.sc_quick_cart_widget_animate #mailinglist_signup_button,
body.sc_quick_cart_widget_animate #wishlist,
body.sc_quick_cart_widget_animate #top_nav,
body.sc_wishlist_quick_cart_widget_animate #menu,
body.sc_wishlist_quick_cart_widget_animate #enquire,
body.sc_wishlist_quick_cart_widget_animate #search_menu,
body.sc_wishlist_quick_cart_widget_animate #basket,
body.sc_wishlist_quick_cart_widget_animate #mailinglist_signup_button,
body.sc_wishlist_quick_cart_widget_animate #wishlist,
body.sc_wishlist_quick_cart_widget_animate #top_nav {
    opacity: 0;
    transform: translate3d(0, -100px, 0);
}

#mailinglist_signup_button {
    float: right;
    padding: 0;
    margin: 4px 0 0 15px;
    padding: 0 4px;
    cursor: pointer;
    font-size: 1.3rem;
    line-height: 2rem;
    color: #333;
    background: #fff;
    border-radius: 1px;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    position: relative;
    overflow: hidden;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out, background 400ms ease-in-out;
}

.content-type-reversed .hero-section-not-visible #mailinglist_signup_button {
    background-color: #111;
    color: #fff;
}

#menu {
    float: right;
    padding: 7px 16px 9px;
    margin: 0 0 0 20px;
    cursor: pointer;
    font-size: 1.4rem;
    line-height: 2.0rem;
    color: #ffffff;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    position: relative;
    overflow: hidden;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
    display: none;
}

#menu span {
    position: relative;
    z-index: 2;
    transition: color 400ms cubic-bezier(.65, .06, .19, .96);
}

#menu:hover span {
    color: #fff;
}

#menu:hover:after {
    transform: translate3d(0, 0, 0);
}

#basket {
    float: right;
    position: relative;
    z-index: 1900;
    padding: 4px 0 9px;
    font-size: 1.3rem;
    line-height: 2.0rem;
    font-weight: bold;
    color: #ffffff;
    display: block;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
}

.content-type-reversed .hero-section-not-visible #basket {
    color: #151515;
}

#basket #store_cart_widget {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: 18px;
    margin-left: 22px;
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
    transition: background-image 400ms linear;
}

#basket #store_cart_widget:before {
    display: block;
    float: left;
    content: '';
    height: 18px;
    width: 18px;
    background: url(../images/basket.png) left 3px no-repeat;
    background-size: 11px auto;
    transition: background-image 400ms linear;
}

.content-type-reversed .hero-section-not-visible #basket #store_cart_widget:before {
    background-image: url(../images/basket_reverse.png);
}

#basket #scw_items {
    float: left;
}

#basket #store_cart_widget {
    opacity: 0;
}

#basket #store_cart_widget.empty {
    opacity: 0 !important;
    padding: 0;
    margin: 0;
    width: 0;
}

#basket .scw_total_items {}

#basket #store_cart_widget.active .scw_total_items {}

#basket #store_cart_widget.active.empty .scw_total_items {}

#basket .scw_label {
    position: absolute;
    z-index: 4;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 1.1rem;
    line-height: 1.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: bold;
    transform: translate(0, 0);
    transition: padding 400ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear;
}

#basket a {
    position: absolute;
    z-index: 4;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
}

#basket .label_basket {
    display: none;
}

#wishlist {
    float: right;
    position: relative;
    z-index: 1900;
    padding: 4px 0 9px;
    font-size: 1.3rem;
    line-height: 2.0rem;
    font-weight: bold;
    color: #ffffff;
    display: block;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
}

.content-type-reversed .hero-section-not-visible #wishlist {
    color: #151515;
}

#wishlist #wishlist_cart_widget {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: 18px;
    margin-left: 22px;
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
}

#wishlist #wishlist_cart_widget:before {
    display: block;
    float: left;
    content: '';
    height: 18px;
    width: 18px;
    background: url(../images/wishlist.png) left 4px no-repeat;
    background-size: 13px auto;
    transition: background-image 400ms linear;
}

.content-type-reversed .hero-section-not-visible #wishlist #wishlist_cart_widget:before {
    background-image: url(../images/wishlist_reverse.png);
}

#wishlist #wcw_items {
    float: left;
}

#wishlist #wishlist_cart_widget {
    opacity: 0;
}

#wishlist #wishlist_cart_widget.empty {
    opacity: 0 !important;
    padding: 0;
    margin: 0;
    width: 0;
}

#wishlist .wcw_total_items {}

#wishlist #wishlist_cart_widget.active .wcw_total_items {}

#wishlist #wishlist_cart_widget.active.empty .wcw_total_items {}

#wishlist .wcw_label {
    position: absolute;
    z-index: 4;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 1.1rem;
    line-height: 1.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: bold;
    transform: translate(0, 0);
    transition: padding 400ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear;
}

#wishlist a {
    position: absolute;
    z-index: 4;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
}

#wishlist .label_basket {
    display: none;
}

#enquire {
    float: right;
    border: 2px solid #ffffff;
    margin: 0 0 0 25px;
    cursor: pointer;
    font-size: 12px;
    line-height: 20px;
    color: #ffffff;
    font-weight: bold;
    letter-spacing: 1px;
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    position: relative;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
}

#enquire:after {
    content: '';
    display: block;
    background: #ffffff;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    z-index: 1;
    transform: translate3d(0, -101%, 0);
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
}

#enquire a {
    padding: 7px 22px 9px;
    display: block;
    position: relative;
    z-index: 2;
    transition: color 400ms cubic-bezier(.65, .06, .19, .96);
}

#enquire:hover a {
    color: #fff;
}

#enquire:hover:after {
    transform: translate3d(0, 0, 0);
}

#search_menu {
    float: right;
    border: 2px solid transparent;
    padding: 7px 0 9px;
    margin: 0 0 0 12px;
    cursor: pointer;
    width: 27px;
    font-size: 12px;
    line-height: 20px;
    position: relative;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
    text-indent: -200px;
    overflow: hidden;
}

#search_menu:after {
    content: '';
    display: block;
    width: 11px;
    height: 12px;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    padding: 6px 8px;
    right: 0;
    transition: background 400ms ease-in-out;
    background: url(../images/search.png) center center no-repeat;
    background-size: 11px auto;
}

.content-type-reversed .hero-section-not-visible #search_menu:after {
    background-image: url(../images/search_reverse.png);
}

#top_nav {
    margin: 0 auto;
    z-index: 0;
    width: auto;
    text-align: center;
    font-size: 15.5px;
    /* New large size test */
    font-size: 20px;
    font-size: 1.5rem;
    line-height: 2.0rem;
    font-family: Calibre, Sans-Serif;
    color: #ffffff;
    font-weight: bold;
    /*font-weight: normal;*/
    -webkit-font-smoothing: antialiased;
    position: relative;
    float: right;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
}

#top_nav ul {
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

#top_nav ul li {
    display: inline-block;
    position: relative;
    margin: 0 0 0 10px;
}

#top_nav ul li:first-child {
    margin-left: 0;
}

#top_nav ul li:last-child {
    margin-right: 0;
}

#top_nav ul li a {
    display: block;
    position: relative;
    border: 2px solid transparent;
    padding: 2px 0 4px;
    cursor: pointer;
}

#top_nav ul li a:after {
    content: '';
    display: block;
    width: 0;
    border-bottom: 1px solid #ffffff;
    position: absolute;
    bottom: 0%;
    left: 0;
    transition: width 400ms ease-in-out;
}

.device-desktop #top_nav ul li:hover a:after,
#top_nav ul li.active a:after {
    width: 100%;
}

#top_nav ul li a,
#top_nav ul li a:visited {
    color: inherit;
}

#top_nav ul li ul {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 36px;
    left: 50%;
    transform: translateX(-50%);
    transition: transform 400ms ease-in-out, opacity 400ms linear;
    white-space: nowrap;
}

.device-desktop #top_nav ul li:hover ul {
    opacity: 1;
}

#top_nav ul li ul li {
    display: inline-block;
}

#top_nav>ul>li.active ul li a:after,
#top_nav>ul>li:hover ul li a:after {
    display: none !important;
}

@media screen and (max-width: 1024px) {
    #top_nav ul li ul {
        display: none !important;
    }
}

.scroll-container {
    position: relative;
    z-index: 1;
    pointer-events: none;
}

.scroll-container.is-active {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
}

.scroll-container .scroll-container-inner {
    width: 100%;
    pointer-events: none;
    background: #171717;
    /* Note - this animation is intentionally slower than the splash screen to give a rubber band effect */
    transition: opacity 1000ms ease-in-out, background 800ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
}

.scroll-container .scroll-container-inner * {
    pointer-events: auto;
}

.scroll-container .scroll-container-inner .faux_footer {
    pointer-events: none;
}

.pageload-content-area {
    min-height: 100vh;
    transition: opacity 800ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
    position: relative;
}


/*
        .pageload-content-area:after {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            height: 100%;
            width: 100%;
            opacity: 0;
            display: block;
            content: '';
            background: #000;
            transition: opacity 1000ms ease-in-out;
            pointer-events: none;
            z-index: 99999;
        }
    */


/* Page transitions
        ----------------------------------------------------------- */

body.x-browser-js-enabled .pageload-content-area,
body.x-browser-js-enabled #canvas_wrapper_background {
    opacity: 0;
}

body.splash-main-content-in .pageload-content-area,
body.first-load-complete .pageload-content-area,
body.splash-main-content-in #canvas_wrapper_background,
body.first-load-complete #canvas_wrapper_background {
    opacity: 1;
}


/* While splash screen is loading */

body.browser-js-enabled.main-content-hide .scroll-container-inner {
    transform: scale(1.6);
    opacity: 0;
    transition: none;
}


/* State to return to after splash screen */

body.browser-js-enabled.splash-init .scroll-container-inner {
    height: 100vh;
    width: 100vw;
    transform-origin: center center;
    transition: opacity 1000ms ease-in-out, transform 1200ms cubic-bezier(.45, 0, .27, 1);
}

body.browser-js-enabled.splash-init .footer {
    display: none;
}


/* Skip splash screen */

body.skip-splash-screen .scroll-container-inner,
body.skip-splash-screen #canvas_wrapper_background {
    transform: translate(0, 0);
    transition: none;
}


/*
                    New content_load_adjacent method
                        body.page-transition .pageload-content-area.pageload-old-content-area {
                            z-index: 0;
                            transition: none !important;
                            transform: none !important;
                        }
                            body.page-transition .pageload-content-area.pageload-old-content-area:after {
                                opacity: 1;
                            }

                        body .pageload-content-area.pageload-new-content-area {
                            position: fixed;
                            top: 0;
                            left: 0;
                        }
                            body.loader-active .pageload-content-area.pageload-new-content-area {
                                transform: translateX(100vw);
                            }
                            body.page-transition .pageload-content-area.pageload-new-content-area {
                                z-index: 1;
                                transform: translateX(0);
                            }
                */

body.x-page-transition-active .footer {
    display: none;
}

body.x-page-transition-active.loader-incoming-type-standard .scroll-container-inner,
body.x-page-transition-active.loader-incoming-type-standard #canvas_wrapper_background {
    transform-origin: center top;
    overflow: hidden;
    width: 0;
    transform-origin: 0 0;
    transition: opacity 800ms ease-in-out, width 800ms cubic-bezier(.45, 0, .27, 1), background 800ms ease-in-out;
}

body.x-page-transition-active.loader-incoming-type-standard .scroll-container-inner .pageload-content-area {
    width: 100vw;
    transform: translate(-5vw, 0);
    transition: opacity 800ms ease-in-out, transform 1200ms cubic-bezier(.45, 0, .27, 1);
}

body.x-page-transition-active.loader-incoming-type-standard .scroll-container-inner .pageload-content-area:after {
    opacity: 1;
}

body.x-page-transition-active.page-transition2.loader-incoming-type-standard .scroll-container-inner,
body.x-page-transition-active.ajax-loading-complete.loader-incoming-type-standard .scroll-container-inner {
    transform: translate(0, 0);
    opacity: 0;
    transition: none;
}

body.x-page-transition-active.page-transition2.loader-incoming-type-standard .scroll-container-inner .pageload-content-area,
body.x-page-transition-active.ajax-loading-complete.loader-incoming-type-standard .scroll-container-inner .pageload-content-area {
    transform: translate(0, 0);
    transition: none;
}

*/
/* Inner page element transitions
            -----------------------------------------------------------
            body.page-transition .image {
                transition: opacity 800ms ease-in-out, transform 800ms cubic-bezier(.86,.01,.14,.99) !important;
                transform: translate(-100%, 0);
            }

            body.page-transition #hero {
                overflow: hidden;
            }
            body.page-transition #hero .slide .image {
                transform: none;
                transition: opacity 800ms ease-in-out, transform 800ms cubic-bezier(.45,0,.27,1), max-width 800ms ease-in-out !important;
                transform: translateX(90%);
                opacity: 0;
            }*/

body.page-transition h1 {
    transition: opacity 800ms ease-in-out, transform 800ms cubic-bezier(.86, .01, .14, .99) !important;
    transform: translate(-200%, 0);
}

body.page-transition .artwork_detail .content h1 {
    transform: none;
}

body.page-transition .artwork_detail .image {
    transform: none;
}

.footer {
    background: #171717;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 0;
    color: #fff;
    font-size: 1.4rem;
    line-height: 2rem;
}

body.fixed-footer #footer {
    position: fixed;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translate3d(0, 0, 0);
    visibility: hidden;
}

body.fixed-footer .footer-visible #footer {
    visibility: visible;
}

body.page-transition #footer,
body.page-artwork-detail-standard #footer,
body.fixed-footer.page-artwork-detail-standard #footer {
    display: none !important;
}

body.page-artwork-detail-standard #main_content,
body.fixed-footer.page-artwork-detail-standard #main_content {
    margin-bottom: 0 !important;
}


/* PERFORMANCE ISSUE overflow auto
    body.footer-active.fixed-footer #footer {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }*/

.footer .social_media_icon:after {
    color: #fff !important;
}

.footer a,
.footer a:visited {
    color: #fff;
}

.footer h3 {
    margin: 0 0 32px;
    font-size: 2.8rem;
    line-height: 2.6rem;
}

.footer .inner {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 125px 100px 50px;
    min-height: 100vh;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    flex-direction: column;
    /* End flexbox */
    margin: 0 auto;
    max-width: 1680px;
    width: 100%;
    padding: 0 150px;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.footer .wrapper {
    padding: 40px 0;
}

.footer .main {
    clear: none;
    display: block;
    margin: 0 -75px 50px 0;
}

.footer .main .item {
    width: 33.33%;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 75px 0 0;
    vertical-align: top;
}

.footer .main.two-items .item {
    width: 50%;
}

.footer .main .item .content>div {
    margin: 0 0 18px;
}


/*
                .footer .main .item {
                    transform: translate3d(0, 200px, 0);
                    opacity: 0;
                    transition: transform 500ms cubic-bezier(.18, 1, .21, 1), opacity 500ms cubic-bezier(.18, 1, .21, 1);
                }
                .footer-visible2 .footer .main .item  {
                    opacity: 1;
                    transform: translate3d(0, 0, 0);
                    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 3500ms cubic-bezier(.18, 1, .21, 1);
                }
            */

.footer .aside {
    clear: both;
    display: block;
    margin: 0 -75px 75px 0;
    text-align: center;
}

.footer .aside .item {
    width: 33.33%;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 75px 0 0;
    vertical-align: top;
    text-align: left;
}


/*
            .footer .aside .item {
                opacity: 0;
                transition: opacity 3000ms cubic-bezier(.18, 1, .21, 1);
            }
            .footer-visible2 .footer .aside .item  {
                opacity: 1;
                transform: translate3d(0, 0, 0);
                transition-delay: 500ms;
            }
        */

.footer .social_media_links {
    margin: 0 0 20px -7px;
    text-align: left;
}

.footer .item .description {
    float: left;
    clear: both;
    width: 100%;
}


/*
    .footer .social_media_links {
        opacity: 0;
        transition: opacity 3000ms cubic-bezier(.18, 1, .21, 1);
    }
        .footer-visible2 .footer .social_media_links  {
            opacity: 1;
            transition-delay: 1000ms;
        }
        */

.footer .social_media_links .social_links_item {
    float: none;
    margin: 0 5px;
    display: inline-block;
}

.footer .credit {
    text-align: center;
    color: #666;
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
}


/*
    .footer .credit {
        opacity: 0;
        transition: opacity 3000ms cubic-bezier(.18, 1, .21, 1);
    }
        .footer-visible2 .footer .credit  {
            opacity: 1;
            transition-delay: 1000ms;
        }
        */

.footer .credit div {
    display: inline-block;
    margin: 0 10px;
}

.footer .credit a,
.footer .credit a:visited {
    color: #666;
}


/* Mailing list signup ----------------------------------------------------------- */

.footer .mailing_list_signup {
    padding: 0 0 0;
    margin: 0 0 20px;
    clear: both;
}

.footer .mailing_list_signup .prelude:after {
    margin-bottom: 20px;
}

.footer .mailing_list_signup .error {
    color: #f30000;
}

.footer .mailing_list_signup .terms_and_conditions {
    clear: both;
}

.footer .mailing_list_signup .form_row {
    width: 100%;
    position: relative;
    border: none;
    margin: 0 0 25px;
}

.footer .mailing_list_signup form .form_row input[type='text'] {
    background: transparent;
    color: #fff;
    font-weight: normal;
    font-size: 1.3rem;
    padding: 2px 60px 10px 0;
    outline: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer .mailing_list_signup .form_row input:-webkit-autofill,
.footer .mailing_list_signup .form_row input:-webkit-autofill:hover,
.footer .mailing_list_signup .form_row input:-webkit-autofill:focus .footer .mailing_list_signup .form_row input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 50px #222 inset;
    background: #222;
    -webkit-text-fill-color: #fff;
    border-color: #555;
}

.footer .mailing_list_signup form .form_row input[type='text'].active {
    color: #fff;
}

.footer .mailing_list_signup .form_row a {
    position: absolute;
    overflow: hidden;
    top: 0;
    right: 0;
    height: 30px;
    width: 47px;
    background: url('../images/arrow_right.png') center center no-repeat;
    background-size: 47px auto;
    display: block;
    text-indent: -100px;
}

#container {
    margin: 0;
    padding-top: 0;
    opacity: 1;
    transition: padding 500ms cubic-bezier(.09, .39, .02, .99), opacity 300ms linear, background 5000ms linear;
}

body.first-load-complete #container {
    opacity: 1;
    margin-top: 0;
    padding-top: 0;
}

body.navigation-open #container {
    opacity: 0;
}

#container h1.hidden {
    overflow: hidden;
    height: 0;
    width: 0;
    padding: 0;
    margin: 0;
}


/* ----------------------------------------------------------------------------------
  Classes
---------------------------------------------------------------------------------- */


/* Artwork detail
    ---------------------------------------------------------------------------------- */

.artwork_detail {
    z-index: 5;
    position: relative;
}

.subsection-artworks-detail-view {
    background: #f9f4f1;
}

.pagination_controls {
    height: 0;
}

.pagination_controls>div {
    position: absolute;
    z-index: 6;
    top: 85px;
    width: 80px;
    height: 80vh;
    cursor: pointer;
    text-indent: -200px;
    background: url('../images/arrow_left.png') 25% center no-repeat;
    background-size: 47px auto;
    opacity: 0.15;
    opacity: 0.8;
    transition: opacity 400ms ease-in-out, transform 600ms cubic-bezier(.65, .06, .19, .96);
    transform: translate3d(10px, 0, 0);
    overflow: hidden;
}

.pagination_controls>div.pagination_controls_next {
    right: 0;
    transform: translate3d(-10px, 0, 0);
    background: url('../images/arrow_right.png') 75% center no-repeat;
    background-size: 47px auto;
}


/* PERFORMANCE ISSUE - causes footer to repaint */

.pagination_controls>div:hover {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.pagination_controls>div.pagination_controls_next:hover {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.pagination_controls>div a {
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.pagination_controls>div.disabled {
    display: none;
}

body.user-distraction-free .pagination_controls,
body.user-distraction-free .pagination_controls>div,
body.user-distraction-free .pagination_controls>div a {
    opacity: 0;
    pointer-events: none;
}


/* Reversed ------------------- */

body.content-type-reversed .pagination_controls>div.pagination_controls_previous,
body.content-type-reversed-popup .pagination_controls>div.pagination_controls_previous,
body.content-type-reversed .pagination_controls>div.pagination_controls_prev,
body.content-type-reversed-popup .pagination_controls>div.pagination_controls_prev {
    background-image: url(../images/arrow_left_reverse.png);
}

body.content-type-reversed .pagination_controls>div.pagination_controls_next,
body.content-type-reversed-popup .pagination_controls>div.pagination_controls_next {
    background-image: url(../images/arrow_right_reverse.png);
}


/* Style variants ----------------------------------- */

.artwork_detail.artwork_detail_style_dark .artwork_detail_main {
    background: #262522;
}

.artwork_detail.artwork_detail_style_hero .artwork_detail_main {
    background: #262522;
}

.artwork_detail.has_hero_image .artwork_detail_main {
    background: transparent;
}

.artwork_detail .footer {
    clear: both;
    float: left;
    width: 100%;
}

.artwork_detail .artwork_detail_main {
    min-height: 100vh;
    width: 100%;
    position: relative;
    background: #f9f4f1;
    background: none !important;
    z-index: 1;
    position: relative;
    transition: background 600ms ease-in-out;
}

.artwork_detail .artwork_detail_main:after {
    content: '';
    clear: both;
    display: block;
    height: 0;
}

.artwork_hero_image_container_outer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    overflow: hidden;
}

.artwork_hero_image_container.image_lazy_load {
    background: #262522;
    transition: opacity 600ms ease-in-out, transform 800ms cubic-bezier(.75, .01, .3, .99);
}

.content-not-reversed .artwork_hero_image_container.active {
    max-height: 50px;
    opacity: 0;
}

.artwork_hero_image_container .image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 4;
    opacity: 0;
    transition: opacity 600ms ease-in-out, transform 800ms cubic-bezier(.75, .01, .3, .99);
    background: center 0 no-repeat;
    background-size: cover;
}

.artwork_hero_image_container.active .image {
    opacity: 1;
}

.artwork_hero_image_container.loading .image {
    opacity: 0;
}

.artwork_hero_image_container img {
    visibility: hidden;
}

.artwork_detail .draginner {
    transition: transform 250ms ease-in-out;
}

.artwork_detail.dragging .draginner {
    transition: none;
}

.artwork_detail .image_container {
    float: right;
    width: 60%;
    position: relative;
    z-index: 5;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 150px 0 100px 80px;
    padding: 0;
    transition: width 400ms cubic-bezier(.65, .06, .19, .96);
}

.artwork_detail.detail_variant_contact .image_container {
    position: static;
    width: 50%;
}

.artwork_detail .image_container .object_content {
    position: fixed;
    top: 150px;
    left: 80px;
    right: 0;
    bottom: 100px;
    top: 0;
    bottom: 0;
    right: 0;
    left: auto;
    width: 50%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    transition: top 400ms cubic-bezier(.65, .06, .19, .96), left 400ms cubic-bezier(.65, .06, .19, .96), right 400ms cubic-bezier(.65, .06, .19, .96), bottom 400ms cubic-bezier(.65, .06, .19, .96);
}

.footer-visible .artwork_detail .image_container .object_content,
.page-enquiry-visible .artwork_detail .image_container .object_content {
    bottom: 0;
    height: 100vh;
    top: auto;
    position: absolute;
}

.artwork_detail .image {
    max-width: 100%;
    height: 100%;
    text-align: center;
}

.artwork_detail .images .image_wrap {
    position: absolute;
    top: 150px;
    left: 0;
    right: 80px;
    bottom: 100px;
    transition: top 1000ms cubic-bezier(.65, .06, .19, .96), left 1000ms cubic-bezier(.65, .06, .19, .96), right 1000ms cubic-bezier(.65, .06, .19, .96), bottom 1000ms cubic-bezier(.65, .06, .19, .96);
}


/* Half-bleed image, right aligned but full height to the edge */

.artwork_detail .images .image.image_half_bleed .image_wrap {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}


/* How do we right align half bleed images? */

.artwork_detail .images .image.image_half_bleed .image_wrap .image_inner {}


/* Trying a cover effect */

.artwork_detail .images .image.image_half_bleed .image_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.artwork_detail .image .image_inner {
    max-width: 100%;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-align: right;
    align-items: center;
    justify-content: center;
}

body.browser-msie .artwork_detail .image .image_inner {
    display: block;
}


/*
                        Click first to zoom option
                            .artwork_detail .image:after {
                                position: absolute;
                                top: 0;
                                left: 0;
                                bottom: 0;
                                right: 0;
                                z-index: 1;
                                display: block;
                                content: '';
                                cursor: pointer;
                            }
                                .user-distraction-free .artwork_detail .image.super_zoom_enabled:after {
                                    cursor: zoom-in;
                                }
                                .artwork_detail.zoom-active .image:after {
                                    display: none;
                                }
                        */

.artwork_detail .image img {
    max-height: 100%;
    display: block;
    margin: 0 auto;
    transition: box-shadow .3s;
    border-radius:10px;
    border: 1px solid rgb(0, 0, 0);
}

.artwork_detail .image:hover img {
    box-shadow: 0 0 50px rgb(255, 255, 255); 
}

.artwork_detail.dragging .image img {
    pointer-events: none;
    -khtml-user-select: none;
    -o-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

.artwork_detail .images {
    position: absolute;
    top: 150px;
    left: 100px;
    right: 0;
    bottom: 70px;
    top: 0;
    left: 0;
    bottom: 0;
    transition: top 1000ms cubic-bezier(.65, .06, .19, .96), left 1000ms cubic-bezier(.65, .06, .19, .96), right 1000ms cubic-bezier(.65, .06, .19, .96), bottom 1000ms cubic-bezier(.65, .06, .19, .96);
}

.artwork_detail .images .image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.artwork_detail .images .image.image_hero_placeholder {
    opacity: 0 !important;
    transition: opacity 200ms ease-in-out;
}

.artwork_detail .content_container {
    float: left;
    width: 40%;
    min-height: 100vh;
    position: relative;
    z-index: 5;
    display: flex;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 150px 80px 100px 150px;
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
    transition-delay: 400ms;
}

.artwork_detail.detail_variant_contact .content_container {
    padding-left: 150px;
    padding-top: 180px;
    width: 50%;
}


/* Distraction free mode */

.user-distraction-free .artwork_detail .image_container {
    width: 100% !important;
    transition: width 1200ms cubic-bezier(.65, .06, .19, .96) !important;
}

.user-distraction-free .artwork_detail .images .image.image_hero_placeholder {
    opacity: 1 !important;
}

.user-distraction-free .artwork_hero_image_container .image {
    opacity: 0;
}

.user-distraction-free .artwork_detail .image_container .object_content,
.user-distraction-free .artwork_detail .images,
.user-distraction-free .image_wrap {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    transition: top 1200ms cubic-bezier(.65, .06, .19, .96), left 1200ms cubic-bezier(.65, .06, .19, .96), right 1200ms cubic-bezier(.65, .06, .19, .96), bottom 1200ms cubic-bezier(.65, .06, .19, .96) !important;
}

.user-distraction-free .artwork_detail .content_container {
    transform: translateX(-50vw) !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transition: transform 1200ms cubic-bezier(.65, .06, .19, .96) !important;
    transition-delay: 0 !important;
}


/* No caption mode */

.artwork_detail.no-caption .content_container {
    display: none;
}

.artwork_detail.no-caption .image_container {
    width: 100% !important;
}

.artwork_detail.no-caption .images .image.image_hero_placeholder {
    opacity: 1 !important;
}

.artwork_detail.no-caption .artwork_hero_image_container .image {
    opacity: 0;
}

.artwork_detail.no-caption .image_container .object_content,
.artwork_detail.no-caption .images,
.artwork_detail.no-caption .image_wrap {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
}

.artwork_detail.no-caption .content_container {
    transform: translateX(-50vw) !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transition-delay: 0 !important;
}

.artwork_detail.no-caption .image_container:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2000;
}

.artwork_detail .content {
    width: 100%;
    align-self: center;
}

.artwork_detail .content .prelude {
    margin: 0 0 25px;
    width: 100%;
}

.artwork_detail .content .prelude:after {
    display: block;
    clear: both;
    margin: 10px 0 0 0;
    width: 100%;
}

.artwork_detail .content h1 {
    font-size: 3.8rem;
    line-height: 4.2rem;
    margin: 0 0 50px;
    padding: 0 0 0;
    position: relative;
}

.artwork_detail .artwork_details {
    display: block;
    width: 100%;
    min-height: 300px;
    margin: 0 0 30px;
    clear: both;
}

.artwork_detail .artwork_details .subheading {
    margin: 0 0 25px;
}

.artwork_detail .artwork_details .detail_subtitle {
    margin: 0 0 25px;
}

.artwork_detail .artwork_details .subtitle {
    text-align: left;
    margin: 0;
    padding: 0;
    font-size: 22px;
    line-height: 30px;
    margin: 0 0 30px;
}

.artwork_detail .artwork_details>div {
    margin: 0 0 0;
}

.artwork_detail .fallback_cart_wrapper {
    margin: 0 0 20px;
}

.artwork_detail .artwork_detail_add_to_cart_wrapper {
    width: 100%;
    display: block;
    clear: both;
    float: left;
}

.artwork_detail .artwork_detail_add_to_cart_wrapper .store_item,
.artwork_detail .artwork_detail_add_to_cart_wrapper .store_items_container,
.artwork_detail .artwork_detail_add_to_cart_wrapper .fallback_cart_wrapper,
.artwork_detail .artwork_detail_add_to_cart_wrapper .wishlist_content,
.artwork_detail .artwork_detail_add_to_cart_wrapper .tools {
    margin: 0 20px 0 0;
    display: inline-block;
    float: none;
    clear: none;
    box-sizing: border-box;
    min-height: 31px;
    vertical-align: middle;
}

.artwork_detail .artwork_detail_add_to_cart_wrapper .wishlist_content {
    margin-right: 0;
    margin-top: -4px;
    margin-left: -4px;
}

.artwork_detail .artwork_detail_add_to_cart_wrapper .tools {
    width: auto;
    clear: none;
    padding: 4px 0 5px 0;
}

.artwork_detail .bottom {
    display: block;
    width: 100%;
    margin: 0 0 30px;
}

.artwork_detail .price {
    font-size: 1.4rem;
    padding: 20px 0 0;
}

.artwork_detail .tools {
    display: block;
    float: left;
    width: 100%;
    margin: 0;
    padding: 40px 0 0;
    position: relative;
}

.artwork_detail .tools>div {
    float: left;
    margin: 0 20px 0 0;
}

.artwork_detail .image_gallery_multiple_thumbnails {
    display: block;
    float: left;
    width: 100%;
    padding: 30px 0 0;
    margin: 0 0 30px;
}

.artwork_detail .image_gallery_multiple_thumbnails ul {
    display: block;
    margin: 0 -10px 0 0;
    padding: 0;
    list-style: none;
}

.artwork_detail .image_gallery_multiple_thumbnails ul li {
    float: left;
    width: 20%;
    min-width: 40px;
    max-width: 90px;
    margin: 0;
    padding: 0 10px 10px 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: auto;
}

.artwork_detail .image_gallery_multiple_thumbnails ul li a {
    display: block;
    position: relative;
    padding-top: 100%;
}

.artwork_detail .image_gallery_multiple_thumbnails ul li a img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.artwork_detail .image_gallery_multiple_thumbnails ul li a:after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    transition: opacity 400ms ease-in-out;
    opacity: 0;
}

.device-desktop .artwork_detail .image_gallery_multiple_thumbnails ul li a:hover:after {
    opacity: 1;
}

.artwork_detail .artwork_detail_additional {
    width: 100%;
    min-height: 100vh;
    clear: both;
    float: left;
    padding: 150px 70px 100px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #ffffff;
}

.artwork_detail .artwork_detail_additional .content {
    width: 60%;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 70px 0 0;
}

.artwork_detail .artwork_detail_additional .content .section {
    width: 100%;
    clear: both;
    margin: 0 0 50px;
}

.artwork_detail .artwork_detail_additional .content h3 {
    margin: 0 0 40px;
}

.artwork_detail .artwork_detail_additional .content .description {
    margin: 0 0 40px;
}


/*  Hero slideshow
    ---------------------------------------------------------------------------------- */

#hero_nav {
    width: 100%;
    position: absolute;
    bottom: 10px;
    left: 40px;
    z-index: 2;
    -webkit-transform-origin: 0%;
    -moz-transform-origin: 0%;
    -ms-transform-origin: 0%;
    -o-transform-origin: 0%;
    transform-origin: 0%;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    color: #fff;
    width: 305px;
    text-align: right;
    font-size: 11px;
    line-height: 12px;
    font-weight: 200;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 200;
    color: #ffffff;
    margin: 0;
    font-weight: bold;
    padding-top: 15px;
    transition: opacity 400ms ease-in-out;
}

#hero_nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#hero_nav ul li {
    float: left;
    margin: 0 20px 0 0;
    min-width: 20px;
    text-align: center;
    border-bottom: 2px solid transparent;
    transition: border 300ms ease-in-out;
    cursor: pointer;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out;
    opacity: 0;
    transform: translate3d(0, -70px, 0);
}

#hero_nav ul li:nth-of-type(2) {
    transition-delay: 50ms;
}

#hero_nav ul li:nth-of-type(3) {
    transition-delay: 100ms;
}

.first-load-complete .hero-section-active #hero_nav ul li {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

#hero_nav ul li:after {
    display: block;
    clear: both;
    content: '';
    width: 0;
    margin: 12px 0 0;
    border-bottom: 2px solid #ccc;
    transition: width 800ms ease-in-out, border 300ms ease-in-out;
}

#hero_nav ul li:hover:after {
    width: 100%;
    transition: width 300ms ease-in-out;
}

#hero_nav ul li.active:after {
    width: 100%;
    border-color: #ffffff;
}

#hero {
    position: fixed !important;
    width: 100%;
    height: 105vh;
    z-index: 0;
    overflow: hidden;
    background: #171717;
}

#hero .arrow {
    position: absolute;
    bottom: 60px;
    left: 50px;
    display: block;
    content: '';
    z-index: 200;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 800ms ease-in-out;
    transform: none;
    opacity: 0;
    height: 72px;
    width: 28px;
    margin-left: -14px;
    cursor: pointer;
}

.page-top #hero .arrow {
    transform: translateY(0);
    opacity: 1;
}

#hero .arrow:before {
    position: absolute;
    display: block;
    width: 50px;
    left: 0;
    bottom: 2px;
    content: 'Scroll';
    text-align: left;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: Calibre, Sans-Serif;
    font-weight: bold;
    color: #fff;
    font-size: 1.4rem;
    line-height: 2.0rem;
    transform: rotate(-90deg);
    transform-origin: 0 0;
}

#hero .arrow:after {
    position: absolute;
    display: block;
    content: '';
    left: 16px;
    bottom: 0;
    background: url('../images/arrow_down.png') center center no-repeat;
    background-size: 7px 47px;
    height: 72px;
    width: 27px;
    /*transition: transform 600ms cubic-bezier(.65,.06,.19,.96), opacity 800ms ease-in-out;*/
    animation: scroll-arrow 4000ms infinite;
    pointer-events: none;
}

@keyframes scroll-arrow {
    0%,
    40%,
    50%,
    60%,
    100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    45% {
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
    55% {
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
}

.hidden-off-screen,
.hidden-off-screen #hero {
    /* This was causing issues on some of the galleries machines, hidden-off-screen would always be on the element so it would not be visible... Unresolved issue. */
    visibility: hidden;
    opacity: 0;
    pointer-events: none !important;
}

body.content-type-reversed .scroll-container #hero,
body.content-type-reversed .scroll-container #hero h1,
body.content-type-reversed .scroll-container #hero h2,
body.content-type-reversed .scroll-container #hero .wishlist_button,
body.content-type-reversed .scroll-container #hero .wishlist_button a {
    color: #fff !important;
}

body.content-type-reversed #hero .prelude:after {
    background: #fff;
}

.hidden-off-screen #hero * {
    pointer-events: none !important;
}

#hero .slide {
    width: 100%;
    bottom: 0;
    right: 0;
}

#hero .slide .mask {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0;
    z-index: 3;
    pointer-events: none;
}

#hero .slide .content {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 2;
    box-sizing: border-box;
    padding: 0 150px;
    opacity: 0;
    transform: translate3d(0, 0, 0);
    transition: transform 1000ms ease-in-out, opacity 400ms ease-in-out;
}

#hero.slide-active .slide .content {
    opacity: 1;
}

#hero.slide-end .slide .content {
    transform: translate3d(-50px, 0, 0);
}

#hero .slide .content .scroll {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer;
}

#hero.has_navigation .slide .content .scroll {
    margin-left: 40px;
}

#hero .slide .content .scroll:hover {
    background-position: 0 47px;
}

.hero-section-active #hero .slide .content .scroll {
    opacity: 1;
}

#hero .slide .content .content_header {
    position: absolute;
    top: 50%;
    left: 0;
    padding: 0 150px;
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
    opacity: 1;
    transform: translate3d(0, 0, 0) translateY(-50%);
    transition: opacity 400ms ease-in-out, transform, transform 400ms ease-in-out;
}

#hero .slide .content .content_header.has_prelude {
    min-height: 260px;
}

.hero-section-active #hero .slide .content .content_header {
    opacity: 1;
    transform: translate3d(0, 0, 0) translateY(-50%);
    transition: opacity 2000ms ease-in-out, transform, transform 1200ms cubic-bezier(0, 0, .58, 1);
}

.hero-section-animate #hero .slide .content .content_header {
    transform: translate3d(0, -400px, 0) translateY(-50%);
    transition: opacity 2000ms ease-in-out, transform, transform 500ms cubic-bezier(.69, .02, .99, .19);
}

#hero .slide .content .content_header h1,
#hero .slide .content .content_header .faux_h1 {
    width: 100%;
    margin-bottom: 0;
}

#hero .slide .content .content_header .hero_h1_alt {
    text-align: center;
    font-size: 6.5rem;
    line-height: 7.0rem;
    margin: 0 0 20px;
}

#hero .slide .content .content_header .hero_long_caption {
    font-size: 2.6rem;
    line-height: 3.2rem;
    font-weight: bold;
    text-align: center;
}

#hero .slide .content .content_header h2 {
    font-size: 8.6rem;
    line-height: 9.0rem;
    letter-spacing: -1px;
    clear: both;
    padding: 15px 0 0;
}

#hero .slide .content .content_header .subtitle {
    font-size: 6.2rem;
    line-height: 6.2rem;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    margin: 0 0 44px;
}

#hero .slide .content .content_header .caption {
    margin: 0 0 30px;
    line-height: 2.3rem;
}

.section-store #hero .slide .content .content_header .caption .artist {
    display: none;
}

#hero .slide .content .content_header .bottom {
    color: #ffffff;
    font-weight: bold;
}

#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper {
    width: 100%;
    display: block;
    clear: both;
    float: left;
}

#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper .store_item,
#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper .store_items_container,
#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper .fallback_cart_wrapper,
#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper .wishlist_content {
    margin: 0 20px 0 0;
    display: inline-block;
    float: none;
    clear: none;
    vertical-align: middle;
}

#hero .slide .content .content_header .artwork_detail_add_to_cart_wrapper .wishlist_content {
    margin-right: 0;
    margin-top: -4px;
}

#hero .slide .content .content_header .prelude {
    float: left;
    width: 100%;
    margin: 0 0 15px;
}

#hero.slide-active .slide .content .content_header .prelude:after {
    transform: scaleX(1);
    transition-delay: 0;
}

#hero.slide-begin .slide .content .content_header .prelude:after {
    transform: scaleX(0);
    transition-delay: 0;
}

#hero .slide .content .pull_quote {
    position: absolute;
    bottom: 20vh;
    right: 150px;
    max-width: 500px;
    width: 35%;
    font-size: 2.2rem;
    line-height: 4.4rem;
}

#hero .slide .image {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1;
    background: center center no-repeat;
    background-size: cover;
    transition: max-width 800ms cubic-bezier(.45, 0, .27, 1), transform 800ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out;
    opacity: 0;
}

#hero.slide-active .slide .image {
    opacity: 1;
}


/*  Media wrappers
    ---------------------------------------------------------------------------------- */

.media_wrapper {
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    overflow: hidden;
    display: block;
    background: #000;
}

.media_wrapper .video_fallback_button {
    display: none;
}

#hero .media_wrapper .image_media img {
    opacity: 0.9;
    position: absolute;
    filter: contrast(1.3);
}


/* disable filter on single exhibitions & artists pages as requested by client */

.page-param-type-artist_id #hero .media_wrapper .image_media img,
.page-param-type-exhibition_id #hero .media_wrapper .image_media img {
    filter: none;
}

#hero .media_wrapper .image_media:before,
#hero .media_wrapper .slideshow:before,
#hero .media_wrapper .video_background:before {
    position: absolute;
    display: block;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    height: 200px;
    pointer-events: none;
    z-index: 2;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.65+0,0+100;Neutral+Density */
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
    /* IE6-9 */
}

#hero .media_wrapper .image_media:after,
#hero .media_wrapper .slideshow:after,
#hero .media_wrapper .video_background:after {
    position: absolute;
    display: block;
    content: '';
    height: 50vh;
    pointer-events: none;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.65+100 */
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000', GradientType=0);
    /* IE6-9 */
}

.media_wrapper .image_media {
    width: 100%;
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    overflow: hidden;
    display: block;
    transition: opacity 600ms ease-in-out;
}

.media_wrapper .image_media {
    opacity: 0;
    opacity: 1;
}

.media_wrapper.show_fallback .image_media {
    opacity: 1;
}

.media_wrapper .image_media img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
}

.media_wrapper .slideshow {
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    overflow: hidden;
    display: block;
    opacity: 0;
    transition: opacity 600ms ease-in-out;
}

.media_wrapper.show_slideshow .slideshow {
    opacity: 1;
}

.media_wrapper .video_background {
    width: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    overflow: hidden;
    display: none;
    opacity: 0;
    transition: opacity 1400ms ease-in-out;
}

.media_wrapper.media_has_video .video_background {
    display: block;
}

.media_wrapper.video_can_start .video_background {
    opacity: 1;
}

.media_wrapper .video_background video {
    object-fit: cover;
    height: 100%;
    width: 100%;
    opacity: 1;
    display: none;
    position: relative;
    z-index: 0;
    font-family: 'object-fit: cover;';
}

.visible .media_wrapper .video_background video {
    display: block;
    position: relative;
    z-index: 1;
}


/*  Scroll sections
    ---------------------------------------------------------------------------------- */

#feature_panel_section_heading {
    opacity: 0;
    transition: opacity 400ms ease-in-out, transform 5000ms cubic-bezier(.18, 1, .21, 1);
    pointer-events: none;
    width: 100%;
    transform: translateY(150px);
    position: absolute;
    width: 100%;
    padding: 0 150px 0;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    transform: translateY(0);
    position: fixed;
    top: 50%;
    z-index: 2;
}

#feature_panel_section_heading * {
    pointer-events: none;
    transition: none;
}

#feature_panel_section_heading.visible {
    opacity: 1;
}

#feature_panel_section_heading_content {
    text-align: center;
    transform: translateY(-55%);
    padding: 0;
}

#feature_panel_section_nav {
    width: 100%;
    position: fixed;
    top: 0;
    left: 52px;
    z-index: 2;
    transform-origin: 0%;
    transform: rotate(90deg);
    width: 100vh;
    text-align: right;
    font-family: Calibre, Sans-Serif;
    font-weight: bold;
    /*font-weight: normal;*/
    color: #ffffff;
    font-size: 1.4rem;
    line-height: 2.0rem;
    margin: 0;
    transition: opacity 400ms ease-in-out;
}

#feature_panel_section_nav.nav-hidden {
    display: none;
}

.hero-section-active #feature_panel_section_nav,
.hero-section-active #feature_panel_section_nav * {
    pointer-events: none;
}

#feature_panel_section_nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    white-space: nowrap;
    text-align: center;
}

#feature_panel_section_nav ul li {
    display: inline-block;
    margin: 0 20px 0 0;
    border-bottom: 2px solid transparent;
    transition: border 300ms ease-in-out;
    cursor: pointer;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out;
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

#feature_panel_section_nav ul li.no-label {
    margin: 0;
}

#feature_panel_section_nav ul li:nth-of-type(2) {
    transition-delay: 50ms;
}

#feature_panel_section_nav ul li:nth-of-type(3) {
    transition-delay: 100ms;
}

#feature_panel_section_nav ul li:nth-of-type(4) {
    transition-delay: 150ms;
}

#feature_panel_section_nav ul li:nth-of-type(5) {
    transition-delay: 200ms;
}

.hero-section-visible #feature_panel_section_nav,
.hero-section-visible #feature_panel_section_nav * {
    pointer-events: auto;
}

.hero-section-visible #feature_panel_section_nav ul li,
.scroll-section-setup #feature_panel_section_nav ul li,
.footer-visible #feature_panel_section_nav ul li {
    opacity: 0;
    transform: translate3d(0, 70px, 0);
}

.footer-visible #feature_panel_section_nav {}

#feature_panel_section_nav ul li a {
    display: block;
}

#feature_panel_section_nav ul li a:after {
    display: block;
    clear: both;
    content: '';
    width: 0;
    margin: 6px 0 0;
    border-bottom: 1px solid #fff;
    transition: width 300ms ease-in-out, border 300ms ease-in-out;
}

#feature_panel_section_nav ul li a:hover:after {
    width: 100%;
    transition: width 300ms ease-in-out;
}

#feature_panel_section_nav ul li.active a:after {
    width: 100%;
    border-color: #ffffff;
}

.scroll_section {
    width: 100%;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #171717;
    transition: background 800ms ease-in-out;
}

.scroll_section.scroll_section_top {
    min-height: 100vh;
    transition: background 400ms ease-in-out;
}

.hero-section-animate .scroll_section.scroll_section_top {}

.scroll_section.scroll_section_panels {
    padding: 0 0 0;
    min-height: 100vh;
}

.scroll_section.scroll_section_panels>.inner {
    width: 100%;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

.scroll_section.scroll_section_panels.section_index_1>.inner,
.scroll_section.scroll_section_standard.section_index_1>.inner {
    /*padding-top: 150px;*/
}

.scroll_section .heading_wrapper {
    margin: 0 0 50px;
    padding: 20px 0 0;
}

.scroll_section>.inner>.heading_wrapper {
    max-width: 1680px;
    padding: 0 150px 0;
    margin: 0 auto;
}

.scroll_section .heading_wrapper:after {
    content: '';
    display: block;
    clear: both;
    overflow: hidden;
    height: 0;
}

.scroll_section .heading_wrapper h1 {
    font-size: 35px;
    line-height: 38px;
    float: left;
}

.scroll_section.scroll_section_standard>.inner {
    max-width: 1680px;
    width: 100%;
    padding: 75px 150px 0;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}


/* Page enquiry widget
    ---------------------------------------------------------------------------------- */

.page_enquiry_widget {
    display: block;
    clear: both;
    background: #1f1f20;
    transition: background 800ms ease-in-out;
}

.page_enquiry_widget form {
    display: block;
    padding: 100px 150px 90px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    transform: translate3d(0, 150px, 0);
    opacity: 0;
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 4000ms cubic-bezier(.18, 1, .21, 1);
}

.page_enquiry_widget.visible form {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.page_enquiry_widget .page_enquiry_above {
    margin: 0 0 10px;
    font-size: 2.8rem;
    line-height: 2.6rem;
}

.page_enquiry_widget h2 {
    text-align: left;
    max-width: 800px;
    margin: 0 0 40px;
}

.page_enquiry_widget .field_wrapper {
    width: 100%;
}

.page_enquiry_widget .form_checkboxes_wrapper {
    margin: 0 0 20px;
    border: 0;
}

.page_enquiry_widget .form_checkboxes_wrapper.form_checkboxes_level2 {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 400ms ease-in-out, opacity 400ms linear;
}

.page_enquiry_widget .form_checkboxes_wrapper.form_checkboxes_level2.active {
    max-height: 650px;
    opacity: 1;
    overflow: visible;
}

.page_enquiry_widget .form_checkboxes_wrapper h3 {
    font-size: 2.2rem;
    line-height: 2.4rem;
    margin: 0 0 5px;
}

.page_enquiry_widget .form_checkboxes_wrapper .form_checkbox_item {
    float: left;
    margin: 0 20px 0 0;
}

.page_enquiry_widget .form_checkboxes_wrapper.form_checkboxes_level2 .form_checkboxes {
    clear: both;
    float: left;
    width: 100%;
    margin: 0 0 20px;
}

.page_enquiry_widget_field {
    display: block;
    width: 33.33%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 1.5rem;
    line-height: 2.0rem;
    color: #ffffff;
    font-weight: bold;
    padding: 0;
    position: relative;
    margin: 0 0 20px;
    overflow: hidden;
    white-space: nowrap;
    height: 55px;
}

.content-type-reversed .page_enquiry_widget_field,
.content-type-reversed .page_enquiry_widget_field .page_enquiry_widget_submit a {
    border-color: rgba(0, 0, 0, 0.1);
}

.content-type-reversed .page_enquiry_widget_field .page_enquiry_widget_submit a {
    background-image: url(../images/arrow_right_reverse.png);
}

.page_enquiry_widget_field_outer {
    margin: 0 80px 0 0;
    height: 55px;
    position: relative;
    overflow: hidden;
}

.page_enquiry_widget_field .page_enquiry_field_wrapper {
    transition: opacity 400ms ease-in-out, transform 800ms ease-in-out;
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.page_enquiry_widget_field .page_enquiry_field_wrapper:before {
    display: inline-block;
    content: '1/2';
    color: #888;
    width: 12%;
    padding: 16px 0 18px 14px;
    box-sizing: border-box;
    font-size: 1.3rem;
    line-height: 2.0rem;
    text-align: center;
}


/* Submission step 1 ------------------------------------ */

.page_enquiry_widget_field.step_1 .page_enquiry_field_wrapper.page_enquiry_field_wrapper_step_1 {
    transform: translateX(0);
    opacity: 1;
}

.page_enquiry_widget_field.step_2 .page_enquiry_field_wrapper.page_enquiry_field_wrapper_step_1 {
    transform: translateX(-100%);
    opacity: 0;
}


/* Submission step 2 ------------------------------------ */

.page_enquiry_widget_field .page_enquiry_field_wrapper.page_enquiry_field_wrapper_step_2:before {
    content: '2/2';
}

.page_enquiry_widget_field.step_1 .page_enquiry_field_wrapper.page_enquiry_field_wrapper_step_2 {
    transform: translateX(100%);
    opacity: 0;
}

.page_enquiry_widget_field.step_2 .page_enquiry_field_wrapper.page_enquiry_field_wrapper_step_2 {
    transform: translateX(0);
    opacity: 1;
}

.page_enquiry_widget_field label {
    display: none;
}

.page_enquiry_widget_field input {
    border: 0;
    outline: none;
    font-size: 1.3rem;
    line-height: 2.0rem;
    padding: 16px 18px 18px 12px;
    width: 88%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 0 1px 0;
}

.page_enquiry_widget_field input::placeholder {
    color: #fff;
}

.page_enquiry_widget_field input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #222 inset;
    color: #fff;
    -webkit-text-fill-color: #fff;
}

body.device-handheld .page_enquiry_widget_field input {
    font-size: 16px
}

.page_enquiry_widget_field .page_enquiry_widget_submit {
    float: right;
    width: 80px;
    height: 55px;
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
}

.page_enquiry_widget_field .page_enquiry_widget_submit .loader {
    display: block;
    width: 80px;
    height: 55px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.page_enquiry_widget_field .page_enquiry_widget_submit a {
    display: block;
    margin: 0 auto;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    width: 80px;
    height: 55px;
    background: url('../images/arrow_right.png') center center no-repeat;
    background-size: 47px auto;
    display: block;
    text-indent: -100px;
    overflow: hidden;
    position: relative;
    z-index: 1;
    transition: background 400ms ease-in-out;
}

.page_enquiry_widget_field .page_enquiry_widget_submit a:hover {
    background-position: 75% center;
}

.page_enquiry_widget_field .page_enquiry_widget_submit.loading a,
.page_enquiry_widget_field .page_enquiry_widget_submit.loading a:visited {
    opacity: 0;
    transition: opacity 400ms ease-in-out;
}

.page_enquiry_widget_field .page_enquiry_widget_submit .loader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 55px;
    overflow: hidden;
    z-index: 5;
    transition: transform 400ms cubic-bezier(.75, .01, .3, .99);
    transform: translateY(-100%);
}

.page_enquiry_widget_field .page_enquiry_widget_submit.loading .loader {
    transform: translateY(0);
}

.page_enquiry_widget_field .page_enquiry_widget_submit.loading .loader svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    height: 23px;
    width: 23px;
    position: absolute;
    top: 15px;
    left: 28px;
}

.page_enquiry_widget_field .page_enquiry_widget_submit.loading .loader svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    stroke-linecap: round;
}

.page_enquiry_widget .page_enquiry_message_below {
    color: #999;
    max-width: 475px;
    font-size: 1.3rem;
    line-height: 2rem;
}

.page_enquiry_widget .page_enquiry_message_below a {
    text-decoration: underline;
}


/*  Feature panels
    ---------------------------------------------------------------------------------- */

.feature_panels:after,
.feature_panels_content:after {
    content: '';
    clear: both;
    display: block;
    height: 0;
    overflow: hidden;
}

.feature_panels section {
    float: left;
    width: 100%;
    position: relative;
    padding: 0 0 0;
    /* 100px 0 0 Removed - asked to reduce space between elements */
}

.feature_panels section.panel_index_1 {
    padding: 60px 0 0;
}

.scroll_section.section_index_1 .feature_panels section.panel_index_1 {
    padding: 150px 0 0;
}

.scroll_section.section_index_1>.inner>.heading_wrapper {
    padding-top: 150px;
}

.scroll_section.section_index_1 .filter_toolbar {
    padding: 150px 0 0;
}

.feature_panels section .area_wrapper {
    max-width: 1680px;
    padding: 0 150px 0;
    margin: 0 auto;
}

.subsection-blog-detail .feature_panels section:not(.panel_index_1) {
    padding-top: 0;
}

.subsection-blog-detail .feature_panels section .area_wrapper {
    padding-top: 0;
}

.blog-share-wrapper {
    width: 33.3%;
    float: right;
    text-align: right;
}

.blog-share-wrapper .share_links {
    display: inline-block;
}

.blog-share-wrapper .share_links .share_options {
    left: auto;
    right: -20px;
}

.blog-share-wrapper .share_links .share_options:after {
    left: auto;
    right: 30px;
}

.feature_panels section .panel_heading_splash {
    display: none;
}

.feature_panels section .panel_footer {
    width: 100%;
    padding-top: 15px;
    padding-right: 75px;
    margin: 0 0 75px;
    float: left;
}

.feature_panels section .panel_heading {
    width: 100%;
    padding-top: 15px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 75px;
    margin: 0 0 50px;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 2.1rem;
    transform: translate3d(0, 0, 0);
}

.feature_panels section .panel_heading h1 {
    font-size: 60px;
    line-height: 66px;
    margin-bottom: 40px;
}

.feature_panels section .panel_heading h2 {
    font-weight: normal;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 2.1rem;
    margin: 0;
    font-size: 1.1rem;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.feature_panels section .panel_heading h2:after {
    display: inline-block;
    content: '';
    height: 1px;
    margin: -1px 0 0 15px;
    vertical-align: middle;
    width: 175px;
    transition: transform 1100ms ease-in-out, background 400ms linear;
    transform: scaleX(0);
    transform-origin: 0 0;
    background: #fff;
}

.content-type-reversed .feature_panels section .panel_heading h2:after {
    background: #151515;
}

.feature_panels section .panel_heading.visible h2:after {
    transform: scaleX(1);
    transition-delay: 200ms;
}

.feature_panels section .panel_filters {
    width: 100%;
    margin: 0 0 85px;
}

.feature_panels section .panel_filters ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.feature_panels section .panel_filters ul li {
    font-size: 1.1rem;
    line-height: 1.2rem;
    font-weight: 200;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0 10px 0 0;
    display: inline-block;
    font-weight: bold;
}

.feature_panels section .panel_filters ul li a {
    display: block;
    position: relative;
    border: 2px solid transparent;
    padding: 7px 0 9px;
    cursor: pointer;
}

.feature_panels section .panel_filters ul li a:after {
    content: '';
    display: block;
    width: 0;
    border-bottom: 2px solid #ffffff;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 400ms ease-in-out;
}

.feature_panels section .panel_filters ul li:hover a:after,
.feature_panels section .panel_filters ul li.active a:after {
    width: 100%;
}

.feature_panels section .panel_filters ul li a,
.feature_panels section .panel_filters ul li a:visited {
    color: inherit;
}

.panel_footer {
    display: block;
}

.panel_footer.panel_footer_revealable_link {
    margin: 0 85px 75px 0;
    text-align: left;
}

.panel_footer.panel_footer_revealable_link .button {
    display: inline-block;
    float: none;
}

.panel_footer.panel_footer_revealable_link .button a {
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    font-size: 1.05em;
}

.panel_footer.panel_footer_revealable_link:before {
    display: block;
    display: none;
    content: '';
    height: 2px;
    background: #ffffff;
    margin: 15px 0 30px;
    width: 33.33%;
    max-width: 100px;
    transition: width 1100ms ease-in-out;
}

.panel_footer.panel_footer_revealable_link.disabled {
    display: none;
}


/*  Custom enquiries panel
        ---------------------------------------------------------------------------------- */

.feature_panels section.panel_custom_enquiries {
    margin: 0 0 75px;
}

.feature_panels section.panel_custom_enquiries .area_wrapper {
    margin: 0 -75px 0 0;
    display: block;
}

.feature_panels section.panel_custom_enquiries .enquiry_form {
    width: 66.66%;
    max-width: 642px;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 75px 0 0;
}

.feature_panels section.panel_custom_enquiries .enquiry_text {
    width: 33.33%;
    float: right;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 75px 0 0;
}

.feature_panels section.panel_custom_enquiries .enquiry_text .content .description {
    margin-bottom: 15px;
}

.feature_panels section.panel_custom_enquiries .enquiry_text .content .columns {
    margin-bottom: 15px;
}


/*  Basic page layout format
    ---------------------------------------------------------------------------------- */

.content_basic_layout {
    padding: 150px 150px;
    max-width: 1023px;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.content_basic_layout .heading_wrapper {
    margin: 0 0 40px;
}

.content_basic_layout .heading_wrapper:after {
    content: '';
    display: block;
    clear: both;
    overflow: hidden;
    height: 0;
}

.content_basic_layout h1 {
    font-size: 3.5rem;
    line-height: 3.8rem;
    display: block;
    margin: 0 0 20px;
}

.content_basic_layout .subtitle {
    display: block;
    clear: both;
    margin: 0 0 20px;
}

.content_basic_layout .prelude {
    width: 33.33%;
}

.content_basic_layout .heading_image {
    margin: 0 0 40px;
}


/*  Text columns
    ---------------------------------------------------------------------------------- */

.text_columns {
    margin: 0 -75px 75px 0;
    display: block;
}

.text_columns .aside {
    clear: both;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 33.33%;
    padding: 30px 75px 0 0;
}

.text_columns .aside .pull_quote {
    margin: 0 0 40px;
}

.text_columns .content {
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 66.66%;
    padding: 0 75px 0 0;
}

.text_columns .content_initial_text.no_heading {
    padding: 0 0 0;
}

.text_columns .content_initial_text {
    display: block;
    transition: all 600ms ease-in-out;
    padding: 50px 0 0;
}

.text_columns .content_initial_text .inner {
    display: block;
    /*
                        -webkit-column-count: 2;
                        -moz-column-count: 2;
                        column-count: 2;

                        -webkit-column-gap: 75px;
                        -moz-column-gap: 75px;
                        column-gap: 75px;
                    */
}

.text_columns .extended_text_show .content_initial_text {
    max-height: 0;
    overflow: hidden;
    display: none;
}

.text_columns .content_extended_text {
    display: block;
    transition: all 2000ms cubic-bezier(.18, 1, .21, 1);
}

.text_columns .content_extended_text .inner {
    display: block;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 75px;
    -moz-column-gap: 75px;
    column-gap: 75px;
    padding: 75px 0 0;
}

.text_columns .extended_text_hidden .content_extended_text {
    opacity: 0;
    transform: translateY(200px);
    transition: none;
    height: 0;
    overflow: hidden;
}

.text_columns .extended_text_show .content_reveal_more_link {
    display: none;
}


/*  Basic records grid styles
    ---------------------------------------------------------------------------------- */

.records_no_results {
    text-align: center;
    padding: 50px 50px 50px 0;
    margin: 0 0 50px;
    width: 100%;
    box-sizing: border-box;
    font-size: 1.8rem;
    line-height: 2.2rem;
    font-weight: bold;
}

.records_grid {
    transition: transform 500ms cubic-bezier(.65, .06, .19, .96), opacity 500ms ease-in-out;
}

.records_grid.filter_transition {
    transform: translateY(100px);
    opacity: 0;
}


/*  Standard grid
    ---------------------------------------------------------------------------------- */

.standard_grid {
    width: auto;
    margin: 0 -75px 0 0;
}

.standard_grid .item {
    box-sizing: border-box;
    width: 33.33%;
    padding: 0 75px 75px 0;
    display: inline-block;
    vertical-align: top;
    transform: translate3d(0, 50px, 0);
    opacity: 0;
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
}


/* Tile list variant ------------------------ */

.standard_grid.tile_grid .group {
    box-sizing: border-box;
    width: 33.33%;
    padding: 0 75px 0 0;
    display: inline-block;
    vertical-align: top;
}

.standard_grid.tile_grid .group .item {
    width: 100%;
    padding: 0 0 75px 0;
}

.standard_grid .item.animate-from-bottom {
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
}

.standard_grid .item.animate-from-top {
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.standard_grid .item.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.standard_grid .item.revealable {
    display: none;
}

.standard_grid .item .image {
    width: 100%;
    margin: 0 0 30px;
    display: flex;
    min-height: 100px;
    overflow: hidden;
}

body.browser-msie .standard_grid .item .image {
    display: block;
}

.standard_grid .item .image img {
    max-width: 100%;
    display: block;
    align-self: flex-end;
    transition: transform 500ms ease-out;
}

.standard_grid .item .prelude {
    margin: 0 0 22px;
}

.standard_grid .item .prelude:after {
    width: 80px;
}

.standard_grid .item .prelude.prelude_no_text {
    display: none;
}

.standard_grid .item h3 {
    min-height: 100px;
    margin: 0 0 22px;
    font-size: 3.0rem;
    line-height: 3.4rem;
}

.standard_grid .item .subtitle {
    margin: 0 0 10px;
}

.standard_grid .item .content {
    margin: 0 0 20px;
    padding: 0 30px 0 0;
    color: #fff;
    line-height: 2.3rem;
}

.content-type-reversed .standard_grid .item .content {
    color: #444;
}

.standard_grid .item .bottom {
    margin: 0 0 20px;
}


/*  Condensed variant
        ---------------------------------------------------------------------------------- */

.standard_grid.standard_grid_condensed .item {
    padding-bottom: 50px;
}

.standard_grid.standard_grid_condensed .item h3 {
    min-height: 0;
    margin: 0 0 12px;
    font-size: 2.0rem;
    line-height: 2.8rem;
}

.standard_grid.standard_grid_condensed .item .bottom {
    margin: 0;
}


/*  Text grid
    ---------------------------------------------------------------------------------- */

.text_grid {
    width: auto;
    margin: 0 -75px 0 0;
    padding: 0 0 75px;
}

.text_grid .item {
    box-sizing: border-box;
    width: 33.33%;
    padding: 0 75px 0 0;
    display: inline-block;
    vertical-align: top;
}

.text_grid .item h3 {
    margin: 0 0 50px;
}

.text_grid .item .content {
    font-size: 15px;
    line-height: 32px;
}


/*  Instagram grid
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_211 .page-track-scroll-container {
    position: static;
}

.feature_panels section.panel_type_211 .panel_heading {
    margin: 0;
}


/*  Artworks grid
    ---------------------------------------------------------------------------------- */

.works_grid {
    width: auto;
    margin: 0 -75px 0 0;
}

.works_grid .item {
    box-sizing: border-box;
    width: 33.33%;
    padding: 0 85px 75px 0;
    display: inline-block;
    vertical-align: top;
    transform: translate3d(0, 80px, 0);
    opacity: 0;
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}


/* Tile list variant ------------------------ */

.works_grid.tile_grid .group {
    box-sizing: border-box;
    width: 33%;
    padding: 0 75px 0 0;
    display: inline-block;
    vertical-align: top;
}

.works_grid.tile_grid .group .item {
    width: 100%;
    padding: 0 0 75px 0;
}


/* Blog image list variant */

.subsection-blog-detail .works_grid.tile_grid {
    margin-right: -35px;
}

.subsection-blog-detail .works_grid.tile_grid .group {
    padding-right: 35px;
}


/* Uneven tile list variant ------------------------ */


/* This should probably have a variant class - at the moment this applies to all tile grids */

.works_grid.tile_grid .group:nth-of-type(1) {
    padding-top: 40px;
}

.works_grid.tile_grid .group:nth-of-type(2) {
    padding-top: 80px;
}

.works_grid.tile_grid .group:nth-of-type(3) {
    padding-top: 0;
}

.works_grid .item.animate-from-top {
    transform: translate3d(0, -80px, 0);
}

.works_grid .item.visible {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.works_grid .item:nth-of-type(2),
.works_grid .item:nth-of-type(5) {
    transition-delay: 150ms;
}

.works_grid .item:nth-of-type(3),
.works_grid .item:nth-of-type(6) {
    transition-delay: 300ms;
}

.works_grid .item.revealable {
    display: none;
}

.works_grid .item .image {
    width: 100%;
    margin: 0;
    display: flex;
    overflow: hidden;
    margin: 0 0 20px 0;
}

body.browser-msie .works_grid .item .image {
    display: block;
}

.works_grid .item .image img {
    max-width: 100%;
    display: block;
    align-self: flex-end;
    transition: transform 500ms ease-out;
}

.works_grid .item .caption {
    line-height: 2.3rem;
}

.works_grid .item .bottom .caption p {
    margin-bottom: 0;
}

.works_grid .item .caption .price {
    padding: 10px 0 0;
}

.works_grid .item .prelude {
    margin-bottom: 8px;
    white-space: nowrap;
    overflow: hidden;
}

.works_grid .item .prelude:after {
    max-width: 100px;
}

.works_grid .item h3 {
    margin: 0 0 22px;
    font-size: 3.0rem;
    line-height: 3.4rem;
}


/*  Large grid
    ---------------------------------------------------------------------------------- */

.full_grid {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
}

.full_grid .item {
    width: auto;
    margin: 0 0 75px 0;
    position: relative;
    transform: translate3d(0, 80px, 0);
    opacity: 0;
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.full_grid .item.animate-from-bottom {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.full_grid .item.animate-from-top {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.full_grid .item.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.full_grid .item .area {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.full_grid .item .area .content {
    margin: 0 0 20px;
}

.full_grid .item .area .align_bottom {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.full_grid .item .image {
    width: 100%;
    margin: 0 0 40px;
    display: block;
    box-sizing: border-box;
    vertical-align: top;
    overflow: hidden;
}

.full_grid .item .image img {
    max-width: 100%;
    display: block;
}


/* Records slider panel
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_215 .page-track-scroll-container {
    position: static;
}

.feature_panels section.panel_type_215 .panel_heading {
    margin: 0;
}


/* Images slider panel
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_219 .page-track-scroll-container {
    position: static;
}

.feature_panels section.panel_type_219 .panel_heading {
    margin: 0;
}


/* 2x feature small
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_216 {}

.feature_panels section.panel_type_216 .area_wrapper {}

.feature_panels section.panel_type_216 h2 {
    margin: 0 0 20px;
}

.feature_panels section.panel_type_216 .subtitle {
    font-size: 2.0rem;
    line-height: 2.8rem;
    font-weight: bold;
    text-align: left;
    margin: 0 0 20px;
}

.feature_panels section.panel_type_216 .image1_container {
    float: left;
    width: 50%;
    box-sizing: border-box;
    min-height: 500px;
    position: relative;
    padding-right: 80px;
    margin-bottom: 150px;
}

.feature_panels section.panel_type_216 .image1_container .image {
    float: left;
    width: 60%;
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    transform: translateY(20px);
    opacity: 0;
}

.feature_panels section.panel_type_216 .image1_container .image img {
    display: block;
}

.feature_panels section.panel_type_216 .image1_container .area_content {
    float: right;
    width: 65%;
    position: relative;
    z-index: 1;
    padding-top: 150px;
    transform: translateY(150px);
    opacity: 0;
}

.feature_panels section.panel_type_216 .image2_container {
    float: right;
    width: 50%;
    box-sizing: border-box;
    min-height: 500px;
    position: relative;
    margin-top: 125px;
    padding-right: 80px;
    margin-bottom: 150px;
}

.feature_panels section.panel_type_216 .image2_container .image {
    float: right;
    width: 60%;
    position: absolute;
    z-index: 0;
    right: 0;
    top: 0;
    transform: translateY(20px);
    opacity: 0;
}

.feature_panels section.panel_type_216 .image2_container .image img {
    display: block;
}

.feature_panels section.panel_type_216 .image2_container .area_content {
    float: left;
    width: 65%;
    position: relative;
    z-index: 1;
    padding-top: 150px;
    transform: translateY(150px);
    opacity: 0;
}

.feature_panels section.panel_type_216 .visible .image_container .image {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.feature_panels section.panel_type_216 .visible .image_container .area_content {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.feature_panels section.panel_type_216 .visible .image_container .image,
.feature_panels section.panel_type_216 .visible .image_container .area_content {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}


/* Events list
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_207 .list-preview-scroll-container {}

.feature_panels section.panel_type_207 .panel_heading {
    margin: 0;
}


/* 2x feature large
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_217 {
    overflow: hidden;
}

.feature_panels section.panel_type_217 .area_wrapper {}

.feature_panels section.panel_type_217 h2 {
    margin: 0 0 20px;
}

.feature_panels section.panel_type_217 .subtitle {
    font-size: 2.0rem;
    line-height: 2.8rem;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    margin: 0 0 20px;
}

.feature_panels section.panel_type_217 .image1_container {
    float: left;
    width: 50%;
    box-sizing: border-box;
    min-height: 500px;
    position: relative;
    padding-right: 80px;
    margin-bottom: 150px;
}

.feature_panels section.panel_type_217 .image1_container .image {
    width: 100%;
    max-height: 700px;
    height: 80vh;
    z-index: 0;
    left: 0;
    top: 0;
    transform: translateY(20px);
    opacity: 0;
}

.feature_panels section.panel_type_217 .image1_container .image img {
    display: block;
    float: right;
    max-width: none;
    max-height: 100%;
}

.feature_panels section.panel_type_217 .image1_container .area_content {
    float: right;
    width: 100%;
    position: relative;
    z-index: 1;
    padding-top: 100px;
    transform: translateY(150px);
    opacity: 0;
}

.feature_panels section.panel_type_217 .image2_container {
    float: right;
    width: 50%;
    box-sizing: border-box;
    min-height: 500px;
    position: relative;
    padding-right: 80px;
    margin-bottom: 150px;
}

.feature_panels section.panel_type_217 .image2_container .image {
    width: 100%;
    max-height: 700px;
    height: 80vh;
    z-index: 0;
    right: 0;
    top: 0;
    transform: translateY(20px);
    opacity: 0;
}

.feature_panels section.panel_type_217 .image2_container .image img {
    display: block;
    float: left;
    max-width: none;
    max-height: 100%;
}

.feature_panels section.panel_type_217 .image2_container .area_content {
    float: left;
    width: 100%;
    position: relative;
    z-index: 1;
    padding-top: 100px;
    padding-bottom: 100px;
    transform: translateY(150px);
    opacity: 0;
}

.feature_panels section.panel_type_217 .visible .image_container .image {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.feature_panels section.panel_type_217 .visible .image_container .area_content {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.feature_panels section.panel_type_217 .visible .image_container .image,
.feature_panels section.panel_type_217 .visible .image_container .area_content {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}


/*  Full bleed / hero panel
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_214 {
    margin: 0 0 40px;
}

.full_bleed_panel {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    position: relative;
    background: #111;
}

.full_bleed_panel .image {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
}

.full_bleed_panel .image img {
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
    z-index: 0;
    transition: transform 400ms ease-out, opacity 400ms ease-in-out;
    transform: scale(1.2);
    opacity: 0;
}

.full_bleed_panel.visible .image img {
    transform: scale(1);
    opacity: 1;
    transition: transform 3000ms ease-out, opacity 3000ms ease-out;
}

.full_bleed_panel .image:after {
    content: '';
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.full_bleed_panel .area {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 620px;
    display: flex;
    align-items: center;
}

.full_bleed_panel .area .area_inner {
    padding: 75px 150px;
    max-width: 1680px;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: center;
}

.full_bleed_panel .area .area_inner h2 {
    font-size: 8.0rem;
    line-height: 9.0rem;
    text-align: center;
    color: #fff !important;
}

.full_bleed_panel .area .area_inner .prelude {
    color: #fff !important;
}

.full_bleed_panel .area .area_inner .prelude:after {
    background: #fff !important;
}


/*  Full bleed slideshow
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_218 {
    margin: 0 0 40px;
}

.full_bleed_panel_slideshow {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    position: relative;
    background: #111;
}

.full_bleed_panel_slideshow .image {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
}

.full_bleed_panel_slideshow .image img {
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
    z-index: 0;
    transition: transform 400ms ease-out, opacity 400ms ease-in-out;
    transform: scale(1.2);
    opacity: 0;
}

.full_bleed_panel_slideshow.visible .image img {
    transform: scale(1);
    opacity: 1;
    transition: transform 3000ms ease-out, opacity 3000ms ease-out;
}

.full_bleed_panel_slideshow .image:after {
    content: '';
    background: rgba(0, 0, 0, 0.5);
    background: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 22%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 22%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 22%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.full_bleed_panel_slideshow .area {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    pointer-events: none;
}

.full_bleed_panel_slideshow .area .area_inner {
    padding: 75px 150px;
    max-width: 1680px;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: center;
}

.full_bleed_panel_slideshow .area .area_inner h2 {
    font-size: 8.0rem;
    line-height: 9.0rem;
    text-align: center;
    color: #fff !important;
}

.full_bleed_panel_slideshow .area .area_inner .prelude {
    color: #fff !important;
}

.full_bleed_panel_slideshow .area .area_inner .prelude:after {
    background: #fff !important;
}

.full_bleed_panel_slideshow .image_gallery_multiple_container {}

.full_bleed_panel_slideshow .image_gallery_multiple_container .pagination_controls {
    position: absolute;
    top: auto;
    right: 20px;
    left: auto;
    bottom: 0;
    width: 160px;
    height: 120px;
}

.full_bleed_panel_slideshow .image_gallery_multiple_container .pagination_controls>div {
    height: 100%;
    top: 0;
}

.full_bleed_slideshow {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
}

.full_bleed_slideshow .slide {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
}

.full_bleed_slideshow .slide .caption {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 40vw;
    z-index: 2;
    padding: 40px;
    line-height: 18px;
}


/*  Large grid
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_204 {}

.feature_panels section.panel_type_204 .area_wrapper {
    padding-right: 0;
    padding-left: 0;
    max-width: none;
}

.large_grid {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
}

.large_grid .item {
    width: auto;
    min-height: 110vh;
    margin: 0 0 75px 0;
    position: relative;
}

.large_grid .item:after {
    content: '';
    display: block;
    height: 0;
    clear: both;
    overflow: hidden;
}

.large_grid .item .area {
    width: 45%;
    padding-right: 75px;
    padding-left: 150px;
    float: left;
    vertical-align: top;
    box-sizing: border-box;
    min-height: 110vh;
    display: flex;
    align-items: center;
}

.large_grid .item .area .content {
    margin: 0 0 20px;
    padding: 0 30px 0 0;
}

.large_grid .item .area .prelude {
    margin: 0 0 30px;
}

.large_grid .item .area h2 {
    margin: 0 0 30px;
    font-size: 4.0rem;
    line-height: 4.8rem;
}

.large_grid .item .area .content {
    margin: 0 0 20px;
    padding: 0 30px 0 0;
}

.large_grid .item .image {
    width: 55%;
    float: right;
    box-sizing: border-box;
    vertical-align: top;
    overflow: hidden;
    min-height: 110vh !important;
    position: relative;
}

.large_grid .item .image img {
    max-width: none;
    margin: 0;
    display: block;
    transition: transform 500ms ease-out;
    object-position: 50% 50%;
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
}


/* Animations ------------------------ */

.large_grid .item .area {
    transform: translate3d(0, 150px, 0);
    opacity: 0;
    transition: transform 12000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.large_grid .item.animate-from-bottom .area {
    transition: transform 12000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.large_grid .item.animate-from-top .area {
    transition: transform 12000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -150px, 0);
}

.large_grid .item.visible .area {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.large_grid .item .image {
    transform: translate3d(0, 50px, 0);
    opacity: 0;
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.large_grid .item.animate-from-bottom .image {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.large_grid .item.animate-from-top .image {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.large_grid .item.visible .image {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}


/* Cascade grid panel
    ---------------------------------------------------------------------------------- */

.feature_panels section.panel_type_2022 {
    padding-top: 0;
}

.feature_panels section.panel_type_2022 .area_wrapper {
    padding-top: 0;
}


/*  Multi image feature - Store features etc
    ---------------------------------------------------------------------------------- */

.multi_image_feature {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
}

.multi_image_feature .item {
    width: auto;
    margin: 0 -75px 75px 0;
    position: relative;
    transform: translate3d(0, 50px, 0);
    opacity: 0;
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.multi_image_feature .item.animate-from-bottom {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.multi_image_feature .item.animate-from-top {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.multi_image_feature .item.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.multi_image_feature .item:after {
    content: '';
    display: block;
    height: 0;
    clear: both;
    overflow: hidden;
}

.multi_image_feature .item .image {
    width: 66.66%;
    float: left;
    padding-right: 75px;
    box-sizing: border-box;
    vertical-align: top;
    overflow: hidden;
}

.multi_image_feature .item .image img {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    transition: transform 500ms ease-out;
}

.multi_image_feature .item .area {
    width: 33.33%;
    padding-right: 75px;
    float: right;
    vertical-align: top;
    box-sizing: border-box;
}

.multi_image_feature .item .area .image {
    padding: 0;
    margin: 0 0 45px;
    width: 100%;
}

.multi_image_feature .item.no-caption .area .image {
    margin: 0 0 75px;
}

.multi_image_feature .item .area .area_content {
    clear: both;
}

.multi_image_feature .item .area .content {
    margin: 0 0 20px;
    padding: 0 30px 0 0;
}

.multi_image_feature .item .area .content .caption_heading {
    line-height: 2.3rem;
}

.multi_image_feature .item .area .content .caption {
    line-height: 2.3rem;
}

.multi_image_feature .item .area h3 {
    font-size: 27px;
    line-height: 34px;
}

.multi_image_feature .item .area .align_bottom {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}


/*  Medium grid
    ---------------------------------------------------------------------------------- */

.medium_grid {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
}

.medium_grid .item {
    width: auto;
    margin: 0 0 75px 0;
    position: relative;
    transform: translate3d(0, 50px, 0);
    opacity: 0;
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.medium_grid .item.animate-from-bottom {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
}

.medium_grid .item.animate-from-top {
    transition: transform 5000ms cubic-bezier(.18, 1, .21, 1), opacity 5000ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.medium_grid .item.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.medium_grid .item:after {
    content: '';
    display: block;
    height: 0;
    clear: both;
    overflow: hidden;
}

.medium_grid .item .area {
    width: 50%;
    padding-right: 0;
    padding-left: 75px;
    float: left;
    vertical-align: top;
    box-sizing: border-box;
}

.medium_grid .item .area .prelude {
    margin: 0 0 30px;
}

.medium_grid .item .area h3 {
    min-height: 125px;
    min-height: 0;
    margin: 0 0 30px;
}

.medium_grid .item .area .content {
    margin: 0 0 20px;
    padding: 0 30px 0 0;
}

.medium_grid .item .image {
    width: 50%;
    min-height: 10px;
    float: left;
    box-sizing: border-box;
    vertical-align: top;
    overflow: hidden;
}

.medium_grid .item .image img {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    transition: transform 500ms ease-out;
}


/* Lazy load
    ---------------------------------------------------------------------------------- */

.image_lazy_load {
    position: relative;
}

.image_lazy_load:before {
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    background: rgba(255, 255, 255, 0.04);
    transition: opacity 400ms ease-in-out, background 400ms ease-in-out;
    content: '';
    display: block;
}

.content-type-reversed .image_lazy_load:before {
    background: rgba(0, 0, 0, 0.02);
}

.image_lazy_load img {
    transition: opacity 400ms ease-in-out;
}

.image_lazy_load img.zoomImg {
    transition: none;
}

.image_lazy_load img.init_img {
    max-width: 100%;
    width: 100%;
}

.image_lazy_load.loaded img.init_img {
    display: none;
}

.image_lazy_load.loading img {
    opacity: 0;
    transition: none;
}

.image_lazy_load.loading:before {
    opacity: 1;
}

.image_lazy_load .loader {
    display: none;
}

.image_lazy_load.loading .loader {
    display: block;
}

.image_lazy_load.loading svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -10px 0 0 -10px;
    display: block;
}

.image_lazy_load.loading svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    stroke-linecap: round;
}

.content-type-reversed .image_lazy_load.loading svg .path {
    animation: dash 1.5s ease-in-out infinite, color-dark 6s ease-in-out infinite;
}

@-webkit-keyframes rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px;
    }
    100% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px;
    }
}

@keyframes dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px;
    }
    100% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px;
    }
}

@-webkit-keyframes color {
    100%,
    0% {
        stroke: #ffffff;
    }
    40% {
        stroke: #ffffff;
    }
    66% {
        stroke: #ffffff;
    }
    80%,
    90% {
        stroke: #ffffff;
    }
}

@keyframes color {
    100%,
    0% {
        stroke: #ffffff;
    }
    40% {
        stroke: #ffffff;
    }
    66% {
        stroke: #ffffff;
    }
    80%,
    90% {
        stroke: #ffffff;
    }
}

@-webkit-keyframes color-dark {
    100%,
    0% {
        stroke: rgba(0, 0, 0, 0.2);
    }
    40% {
        stroke: rgba(0, 0, 0, 0.1);
    }
    66% {
        stroke: rgba(0, 0, 0, 0.2);
    }
    80%,
    90% {
        stroke: rgba(0, 0, 0, 0.1);
    }
}

@keyframes color-dark {
    100%,
    0% {
        stroke: rgba(0, 0, 0, 0.2);
    }
    40% {
        stroke: rgba(0, 0, 0, 0.1);
    }
    66% {
        stroke: rgba(0, 0, 0, 0.2);
    }
    80%,
    90% {
        stroke: rgba(0, 0, 0, 0.1);
    }
}

@-webkit-keyframes color2 {
    100%,
    0% {
        stroke: #fff;
    }
    40% {
        stroke: #fff;
    }
    66% {
        stroke: #ccc;
    }
    80%,
    90% {
        stroke: #ccc;
    }
}

@keyframes color2 {
    100%,
    0% {
        stroke: #fff;
    }
    40% {
        stroke: #fff;
    }
    66% {
        stroke: #ccc;
    }
    80%,
    90% {
        stroke: #ccc;
    }
}

@-webkit-keyframes color3 {
    100%,
    0% {
        stroke: #fff;
    }
    40% {
        stroke: #fff;
    }
    66% {
        stroke: #fff;
    }
    80%,
    90% {
        stroke: #fff;
    }
}

@keyframes color3 {
    100%,
    0% {
        stroke: #fff;
    }
    40% {
        stroke: #fff;
    }
    66% {
        stroke: #fff;
    }
    80%,
    90% {
        stroke: #fff;
    }
}

@-webkit-keyframes color4 {
    100%,
    0% {
        stroke: #151515;
    }
    40% {
        stroke: #151515;
    }
    66% {
        stroke: #151515;
    }
    80%,
    90% {
        stroke: #151515;
    }
}

@keyframes color4 {
    100%,
    0% {
        stroke: #151515;
    }
    40% {
        stroke: #151515;
    }
    66% {
        stroke: #151515;
    }
    80%,
    90% {
        stroke: #151515;
    }
}


/*  Misc
    ---------------------------------------------------------------------------------- */

.video_embed_wrapper {}

.video_embed_wrapper .video_embed_functions {
    display: none;
}

.text_blocks {
    display: block;
}

.text_blocks .block {
    display: block;
    margin: 0 0 15px;
}

.columns {
    margin: 0 -25px 0 0;
    display: block;
}

.columns:after {
    content: '';
    clear: both;
    height: 0;
    overflow: hidden;
    display: block;
}

.columns .column {
    float: left;
    vertical-align: top;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    padding: 0 25px 25px 0;
}

.columns .column .content {
    color: rgba(255, 255, 255, 0.5);
}

.columns .column .content>div {
    margin: 0 0 15px;
    color: rgba(255, 255, 255, 0.5);
}

.columns .column .content p {
    margin: 0 0 15px;
}

.content-type-reversed .columns .column .content {
    color: rgba(0, 0, 0, 0.5);
}

.content-type-reversed .columns .column .content>div {
    color: rgba(0, 0, 0, 0.5);
}

.link,
.content_read_more_link {
    color: #ffffff;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 2.0rem;
    transition: color 400ms linear;
}

.content-type-reversed .link,
.content-type-reversed-popup .link {
    color: #151515;
}

.links .link {
    display: inline-block;
    margin: 0 25px 0 0;
    vertical-align: top;
}

.content_read_more_link {
    clear: both;
    display: block;
    padding-top: 20px;
}

.content_reveal_more_link {
    clear: both;
    display: block;
    padding-top: 30px;
}

.link.link_more a:before {
    content: '+ ';
}

.links_simple ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.links_simple ul li {
    display: block;
    margin: 0 0 8px;
}

.links_simple ul li a {
    color: #ffffff;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 2.1rem;
}

.fallback_cart_wrapper {
    padding: 0;
    font-size: 1.3rem;
    line-height: 2.0rem;
    background: rgba(255, 255, 255, 0.9);
    color: #151515;
    padding: 10px 14px 9px 15px;
    white-space: nowrap;
    text-align: center;
}

.content-type-reversed .fallback_cart_wrapper {
    background: rgba(0, 0, 0, 0.9);
    color: #fff;
}

.fallback_cart_wrapper,
.content-type-reversed .fallback_cart_wrapper {
    color: #fff;
}

.fallback_cart_wrapper.sold_out,
.content-type-reversed .fallback_cart_wrapper.sold_out {
    background: #a50f0f;
}

.fallback_cart_wrapper .link a,
.fallback_cart_wrapper .link span {
    color: #151515;
}

.content-type-reversed .fallback_cart_wrapper .link a,
.content-type-reversed .fallback_cart_wrapper .link span {
    color: #fff;
}

.fallback_cart_wrapper .price,
.fallback_cart_wrapper .link {
    display: inline-block;
    margin: 0 20px 0 0;
}

.fallback_cart_wrapper .price:last-child,
.fallback_cart_wrapper .link:last-child {
    margin-right: 0;
}

.fallback_cart_wrapper .link {
    display: block;
    clear: both;
    width: 100%;
    cursor: pointer;
}

.fallback_cart_wrapper .link span {
    display: block;
}

.fallback_cart_wrapper .price {
    display: block;
    clear: both;
    width: 100%;
}

.fallback_cart_wrapper .price.sold_out {
    display: block;
    clear: both;
    width: 100%;
}

.featured_context .fallback_cart_wrapper {
    float: left;
    padding: 12px;
}

.featured_context .fallback_cart_wrapper .link span {
    font-size: 2.1rem;
    padding: 10px 15px 9px 15px;
}

.caption_heading {
    font-size: 1.3rem;
    line-height: 2.1rem;
    font-weight: bold;
    margin: 0 0 5px;
}

.caption {
    font-size: 1.4rem;
    font-weight: normal;
}

.list_caption_wrapper {
    display: flex;
    width: 100%;
    transition: color 400ms linear;
}

.list_caption_wrapper .content,
.list_caption_wrapper .caption {
    float: left;
    width: 100%;
}

.list_caption_wrapper .buttons {
    float: right;
    white-space: nowrap
}

.list_caption_wrapper .buttons>div {
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
}

.list_caption_wrapper .buttons>div:first-child {
    margin-left: 0;
}

.list_caption_wrapper .buttons>div.wishlist_content {
    margin-left: 3px;
}


/*
                        .list_caption_wrapper .buttons > div.enquire_link.enquire_link_icon {
                            margin-top: 1px;
                        }
                    */

.bottom {
    font-size: 1.3rem;
    line-height: 2.1rem;
    font-weight: bold;
}

.price {
    font-size: 1.3rem;
    line-height: 2.1rem;
    font-weight: bold;
}

.detail_subtitle {
    font-size: 1.4rem;
    line-height: 2.2rem;
    font-weight: normal;
}

.label {
    font-size: 1.3rem;
    line-height: 2.1rem;
    transform: translate3d(0, 0, 0);
    margin: 0 0 30px;
}

.status_divider {
    font-size: 1.4rem;
    line-height: 2.1rem;
    font-weight: bold;
}

.terms_and_conditions {
    color: #999;
    font-size: 1.2rem;
    line-height: 1.8rem;
}

.terms_and_conditions a,
.terms_and_conditions a:visited {
    text-decoration: underline;
    color: #999;
}

.subtitle {
    font-size: 1.4rem;
    line-height: 2.6rem;
    font-weight: bold;
    font-weight: normal;
    color: #999;
    margin: 0 0 30px;
}

.content-type-reversed .subtitle,
.content-reversed .subtitle {
    color: #888;
}

.subtitle .dates,
.subtitle .location {
    display: inline-block;
    margin: 0 15px 0 0;
}

.list_content_header {
    display: block;
    margin: 0 0 30px;
}

.list_content_header h3 {
    margin: 0 0 5px;
}

.list_content_header .subtitle {
    margin: 0;
}

.prelude {
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 2.0rem;
    transform: translate3d(0, 0, 0);
    font-size: 1.2rem;
    font-size: 1.1rem;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.prelude .dates,
.prelude .location {
    display: inline-block;
    margin: 0 20px 0 0;
}

.prelude:after {
    display: inline-block;
    vertical-align: middle;
    width: 120px;
    background: #fff;
    content: '';
    height: 1px;
    margin: -1px 0 0 20px;
    transition: transform 1100ms ease-in-out;
    transform: scaleX(0);
    transform-origin: 0 0;
}

.prelude.prelude_no_text:after {
    margin-top: 0;
    margin-left: 0;
    margin-bottom: 20px;
}

.content-type-reversed .prelude:after,
.content-type-reversed-popup .prelude:after {
    background: #151515;
}

.visible .prelude:after,
.records_grid.standard_grid .prelude:after {
    transform: scaleX(1);
    transition-delay: 200ms;
}

.prelude_heading:after {
    display: inline-block;
    vertical-align: middle;
    width: 120px;
    background: #fff;
    content: '';
    height: 1px;
    margin: -1px 0 0 20px;
    transition: transform 1100ms ease-in-out;
    transform: scaleX(0);
    transform-origin: 0 0;
}

.content-type-reversed #container .prelude_heading:after {
    background: #151515;
}

.visible .prelude_heading:after {
    transform: scaleX(1);
    transition-delay: 200ms;
}


/*
            .item.visible:hover .prelude:after {
                -webkit-animation: preludehover 1000ms  cubic-bezier(.86,.01,.14,.99) 1;
                animation: preludehover 1000ms  cubic-bezier(.86,.01,.14,.99) 1;
            }
                @-webkit-keyframes preludehover {
                    0% {
                        transform: scaleX(1);
                        transform-origin: 100% 0;
                    }
                    50% {
                        transform: scaleX(0);
                        transform-origin: 100% 0;
                    }
                    51% {
                        transform: scaleX(0);
                        transform-origin: 0 0;
                    }
                    100% {
                        transform: scaleX(1);
                    }
                }
                @keyframes preludehover {
                    0% {
                        transform: scaleX(1);
                        transform-origin: 100% 0;
                    }
                    50% {
                        transform: scaleX(0);
                        transform-origin: 100% 0;
                    }
                    51% {
                        transform: scaleX(0);
                        transform-origin: 0 0;
                    }
                    100% {
                        transform: scaleX(1);
                    }
                }
        */


/*  Filters
    ---------------------------------------------------------------------------------- */

.filter_toolbar {
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    text-align: center;
}

.filter_toolbar .filter_toolbar_button {
    display: inline-block;
    font-weight: bold;
    font-size: 1.3rem;
    padding: 12px;
    cursor: pointer;
    box-sizing: border-box;
    display: block;
    width: 100%;
}

.filter_toolbar .filters_clear_button {
    display: inline-block;
    cursor: pointer;
    font-weight: bold;
    font-size: 1.3rem;
    padding: 12px;
    display: none;
}

.filters_panel {
    transition: max-height 500ms cubic-bezier(.65, .06, .19, .96), opacity 500ms ease-in-out;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    background: #010101;
    color: #fff;
}

.filters_panel.active {
    max-height: 800px;
    opacity: 1;
}

.filters_panel h3 {
    color: #fff !important;
    font-size: 2.8rem;
    line-height: 3.4rem;
}

.filters_panel h3:after,
#container .filters_panel .prelude:after {
    background: #fff !important;
}

#container .filters_panel .prelude {
    margin: 0 0 30px;
    white-space: nowrap;
    overflow: hidden;
}

#container .filters_panel.active .prelude:after {}

.filters_panel .filters_inner {
    box-sizing: border-box;
    max-width: 1680px;
    margin: 0 auto;
    padding: 50px 150px;
    text-align: left;
}

.filters_panel .main {
    width: 100%;
    float: left;
}

.filters_panel .filters_submit {
    width: 25%;
    float: right;
    display: none;
    background: #fff !important;
}

.filters_panel .filters_submit span {
    box-sizing: border-box;
    width: 100%;
    color: #151515 !important;
}

.filters_panel .list_wrapper {
    display: inline-block;
    padding: 0 40px 0 0;
    vertical-align: top;
    text-align: left;
    width: 33.33%;
    box-sizing: border-box;
}

.filters_panel .filters_list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.filters_panel .filters_list li a {
    transition: max-height 500ms cubic-bezier(.65, .06, .19, .96), opacity 250ms ease-in-out;
    opacity: 0.5;
}

.filters_panel .filters_list li.active a {
    opacity: 1;
}


/* Forms
    ----------------------------------------------------------- */

form {
    margin: 0;
    padding: 0;
}

form .form_row .g-recaptcha {
    margin: 0 0 10px;
}

form .form_row {
    display: block;
    clear: both;
    margin: 0 0 10px;
    float: left;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.content-type-reversed form .form_row {
    border-color: rgb(255, 252, 252);
}

form .form_row_submit {
    border: 0;
}

form .form_row.error_row {
    border: 0;
    max-height: 0;
    opacity: 0;
    margin: 0;
    padding: 0;
    font-size: 1.4rem;
    line-height: 2.1rem;
    color: #f30000;
    transition: all 400ms ease-in-out;
}

form .form_row.error_row.active {
    opacity: 1;
    max-height: 100px;
    padding: 0 0 10px;
}

form .form_row_types {
    float: left;
    width: 100%;
    padding: 0 0 20px;
}

form .form_row_types ul {
    margin: 0;
    padding: 0;
    list-style: none;
    float: left;
    width: 100%;
}

form .form_row_types ul li {
    float: left;
    margin: 0 15px 0 0;
    color: rgba(255, 255, 255, 0.5);
    transition: color 200ms ease-in-out;
    cursor: pointer;
    line-height: 2.2rem;
}

form .form_row_types ul li.active {
    color: rgb(0,0,0,0);
}

form .form_row label {
    display: none;
}

form .form_row .checkbox_container {
    float: left;
    clear: both;
    width: 100%;
    cursor: pointer;
}

form .form_row .checkbox_container input {
    display: none;
}

form .form_row .checkbox_container label {
    display: block;
    float: left;
    padding: 0 0 0 30px;
    margin: 5px 0 10px;
    position: relative;
    cursor: pointer;
    user-select: none;
}

form .form_row .checkbox_container label:after {
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    left: 0px;
    height: 20px;
    width: 20px;
    border: 1px solid #666;
    border-radius: 2px;
}

form .form_row .checkbox_container label:before {
    content: '';
    display: block;
    position: absolute;
    top: 6px;
    left: 3px;
    height: 11px;
    width: 15px;
    font: normal normal normal 20px/1 FontAwesome;
    content: "\f00c";
    font-size: 13px;
    line-height: 20px;
    color: #fff;
    text-align: center;
    opacity: 0;
    transform: scale(0.2);
    transform-origin: center center;
    transition: opacity 400ms ease-in-out, transform 400ms cubic-bezier(.12, 1.93, .58, 1);
}

body.content-type-reversed #container form .form_row .checkbox_container label:before {
    color: #151515;
}

body.content-type-reversed #container form form .form_row .checkbox_container label:after {
    border-color: #aaa;
}

form .form_row .checkbox_container input:checked+label:before {
    transform: scale(1);
    opacity: 1;
}

form .form_row input[type='text'],
form .form_row textarea,
form .form_row select {
    background: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    color: rgba(255, 255, 255, 0.5);
    padding: 10px 0px;
    outline: none;
    border-radius: 0;
    resize: none;
}

.content-type-reversed form .form_row input[type='text'],
.content-type-reversed form .form_row textarea,
.content-type-reversed form .form_row select {
    color: rgba(255, 255, 255, 0.5);
}

form .form_row.error input[type='text'],
form .form_row.error textarea,
form .form_row.error select,
form .form_row.error .checkbox_container label {
    color: #f30000;
}

form .form_row input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #222 inset;
    color: #fff;
    -webkit-text-fill-color: #fff;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    /* Stops mobile safari from zooming-in when you focus on a field */
    .device-handheld form .form_row input,
    .device-handheld form .form_row textarea,
    .device-handheld form .form_row select {
        font-size: 16px;
    }
}

form .form_row textarea {
    min-height: 100px;
}

form .form_row input.active,
form .form_row textarea.active,
form .form_row select.active {
    color: #ffffff;
}

.content-type-reversed form .form_row input.active,
.content-type-reversed form .form_row textarea.active,
.content-type-reversed form .form_row select.active {
    color: #222;
}

.select_container {
    position: relative;
}

.select_container:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(0, -3px);
    right: 15px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #ffffff;
    pointer-events: none;
}

form .button {
    margin-top: 12px;
}


/* Enquire icon
    --------------------------------------------------------------------------------- */

.enquire_link.enquire_link_icon {
    text-indent: -200px;
    overflow: hidden;
    width: 14px;
    line-height: 25px;
    height: 25px;
    border-radius: 2px;
    padding: 0 5px;
    /*
                background: url(/images/enquire.png) center center no-repeat;
                background-size: 12px auto;
            */
    background: #fff;
    color: #111;
    text-indent: 0;
    width: auto;
    font-size: 10.5px;
    font-weight: bold;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 300ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear, background 200ms linear;
}

body.content-type-reversed .enquire_link.enquire_link_icon {
    background: #222;
    color: #fff;
}

.enquire_link.enquire_link_icon:hover,
body.content-type-reversed .enquire_link.enquire_link_icon:hover {
    background: #00af4c;
    transition: background 200ms linear;
}


/* Wishlist button
    --------------------------------------------------------------------------------- */

.wishlist_button {
    overflow: hidden;
    clear: both;
    position: relative;
    border: none;
    color: #151515;
    font-size: 1.4rem;
    line-height: 2.0rem;
    display: block;
    margin: 0 0 0;
    padding: 0 0 0 4px;
    overflow: hidden;
    float: left;
    white-space: nowrap;
    color: #ffffff;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 2.0rem;
    width: 14px;
}

.content-type-reversed .wishlist_button {
    color: #151515;
}

.wishlist_button .store_item_controls {
    transition: transform 300ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear;
    display: inline-block;
    padding: 5px 15px 5px 0;
}

.wishlist_button.active .store_item_controls {
    opacity: 0;
    pointer-events: none;
}

.wishlist_button .store_item_controls .store_item_add_container a.add_to_wishlist:before {
    display: inline-block;
    vertical-align: middle;
    content: '';
    background: url(../images/wishlist.png) 0 0 no-repeat;
    background-size: 13px 12px;
    width: 13px;
    height: 12px;
    margin: 0 5px 0 0;
    transform: scale(1);
    transition: transform 300ms cubic-bezier(.14, .86, .3, 1.51), opacity 300ms linear;
}

.wishlist_button.active .store_item_controls .store_item_add_container a.add_to_wishlist:before {
    transform: scale(0);
}

.content-type-reversed .wishlist_button .store_item_controls .store_item_add_container a.add_to_wishlist:before,
.content-type-reversed-popup .wishlist_button .store_item_controls .store_item_add_container a.add_to_wishlist:before {
    background-image: url(../images/wishlist_reverse.png);
}

#hero .wishlist_button .store_item_controls .store_item_add_container a.add_to_wishlist:before {
    background-image: url(../images/wishlist.png);
}

.wishlist_button:hover .store_item_controls .store_item_add_container a.add_to_wishlist:before {
    transform: scale(0.8);
}

.wishlist_button .store_item_controls .store_item_add_container {
    display: inline-block;
    vertical-align: middle;
}

.wishlist_button .store_item_remove_container {
    transition: transform 300ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear;
    display: block !important;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding: 5px 15px 5px 4px;
    opacity: 0;
}

.wishlist_button .store_item_remove_container,
.wishlist_button .store_item_remove_container * {
    pointer-events: none;
}

.wishlist_button .store_item_remove_container button {
    padding: 0 !important;
    background: none !important;
}

.wishlist_button.active .store_item_remove_container,
.wishlist_button.active .store_item_remove_container * {
    pointer-events: auto;
}

.wishlist_button.active .store_item_remove_container {
    opacity: 1;
}

.store_item_remove_from_wishlist {
    cursor: pointer
}

.wishlist_button .store_item_remove_container .store_item_remove_from_wishlist span:before {
    display: inline-block;
    vertical-align: middle;
    content: '';
    background: url(../images/wishlist_active.png) 0 0 no-repeat;
    background-size: 13px 12px;
    width: 13px;
    height: 12px;
    margin: 5px 5px 0 0;
    transform: scale(0);
    transition: opacity 300ms linear;
    position: absolute;
    left: 0;
    top: 0;
}

.wishlist_button.active .store_item_remove_container .store_item_remove_from_wishlist span:before {
    transform: scale(1);
    transition: transform 800ms cubic-bezier(.65, .06, .19, .96), opacity 300ms linear;
}

.wishlist_button .store_item_remove_from_wishlist {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
}

.wishlist_button .store_item_remove_from_wishlist>span {
    text-indent: -200px;
    overflow: hidden;
    display: block;
    position: relative;
    padding-left: 18px;
}

.wishlist_button .store_item_remove_from_wishlist>span:after {
    content: 'Saved';
    text-indent: 0;
    display: block;
    position: absolute;
    top: 0;
}


/* Featured context ----------------------- */

.featured_context .wishlist_button {
    width: auto;
}

.featured_context .wishlist_button.active .store_item_controls {
    transform: translateX(-100%);
}

.featured_context .wishlist_button .store_item_remove_container {
    transform: translateX(100%);
}

.featured_context .wishlist_button.active .store_item_remove_container {
    transform: translateX(0);
}


/*  Store item
    ---------------------------------------------------------------------------------- */

.store_item {
    overflow: hidden;
    clear: both;
    position: relative;
    border: none;
    background: #00af4c;
    color: #fff;
    float: left;
    padding: 0 0;
    cursor: pointer;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    transition: color 300ms cubic-bezier(.65, .06, .19, .96), background 300ms linear;
    font-size: 13px;
    line-height: 20px;
    font-weight: bold;
    min-width: 88px;
}

.store_item:before {
    content: '';
    pointer-events: none;
    background: #151515;
    position: absolute;
    top: -50px;
    left: -40px;
    right: 0;
    z-index: 0;
    bottom: -50px;
    width: 0;
    transform: translate3d(0, 0, 0) rotate(15deg);
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96), width 400ms cubic-bezier(.65, .06, .19, .96);
}

.device-desktop .store_item:not(.store_item_sold_out):hover:before {
    width: calc(100% + 40px);
    transform: none;
}

.store_item .title {
    display: none;
}

.store_item .quantity {
    height: 0;
    width: 0;
    overflow: hidden;
    visibility: hidden;
}

.store_item .price {
    float: none;
    display: block;
    margin: 0;
    position: relative;
    z-index: 5;
    white-space: nowrap;
    pointer-events: none;
    padding: 10px 15px 9px 35px;
    line-height: 20px;
    font-size: 13px;
    line-height: 20px;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96);
}

.store_item .price.sold_out_dynamic {
    padding-left: 16px;
    background: #8a8a8a;
}

.store_item.active .price {
    transform: translate3d(0, 46px, 0);
}

.device-desktop .store_item:not(.store_item_sold_out):hover .price {
    transform: translate3d(0, 46px, 0);
}

.store_item .delivery_info {
    float: left;
    margin: 0;
    padding: 15px 0 11px;
    line-height: 1.8rem;
    color: #e62330;
}

.store_item .store_item_controls {
    float: left;
    margin: 0;
}

.store_item .store_item_remove_container {
    opacity: 1 !important;
}

.store_item .store_item_remove_container .store_item_remove_from_cart {
    display: none !important;
}

.store_item .store_item_controls {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
    z-index: 1;
}

.store_item .store_item_controls:after {
    position: absolute;
    top: 13px;
    left: 15px;
    display: block;
    content: '';
    background: url('../images/basket.png') 0 0 no-repeat;
    background-size: 11px auto;
    width: 11px;
    height: 26px;
    transition: background 300ms linear;
}

.store_item .store_item_add_to_cart {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    cursor: pointer;
}

.store_item .store_item_add_to_cart span {
    display: none !important;
    position: absolute;
    pointer-events: none;
    top: 0;
    right: 40px;
    width: 65px;
    padding: 6px 0px 4px;
    line-height: 20px;
    cursor: pointer;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: right;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96);
}

.store_item .store_item_add_to_cart:after {
    content: 'Add';
    display: block !important;
    position: absolute;
    pointer-events: none;
    top: 0;
    right: 0;
    width: 65px;
    padding: 10px 15px 9px;
    line-height: 20px;
    cursor: pointer;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: right;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96);
    transform: translate3d(0, 46px, 0);
}

.device-desktop .store_item:not(.store_item_sold_out):hover .store_item_add_to_cart:after {
    transform: translate3d(0, 0, 0);
}

.store_item.active .store_item_add_to_cart:after {
    transform: translate3d(0, -46px, 0);
}

.device-desktop .store_item:not(.store_item_sold_out):hover .store_item_add_to_cart span {
    transform: translate3d(0, -46px, 0);
}

.store_item .store_item_remove_container {
    display: block !important;
    position: absolute;
    pointer-events: none;
    transform: translate3d(0, 46px, 0);
    top: 0;
    right: 0;
    padding: 10px 15px 9px 0;
    line-height: 20px;
    cursor: pointer;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: right;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96);
}

.store_item .store_item_remove_container,
.store_item .store_item_remove_container * {
    pointer-events: none;
}

.store_item.active .store_item_add_to_cart span {
    transform: translate3d(0, -46px, 0);
}

body .store_item.active .store_item_remove_container {
    transform: translate3d(0, 0, 0);
    pointer-events: none;
    white-space: nowrap;
}

.store_item.active:not(.store_item_sold_out):hover .store_item_remove_container {
    transform: translate3d(0, 46px, 0);
}

.store_item.active .store_item_remove_container * {
    pointer-events: none;
}


/* Featured context ----------------------- */

.featured_context .store_item {
    display: block;
    float: left;
    margin: 0 0 0;
    padding: 12px;
    font-size: 2.0rem;
    min-width: 140px;
}

.featured_context .store_item .price {
    font-size: 2.1rem;
}

.featured_context .store_item .store_item_remove_container,
.featured_context .store_item .store_item_add_to_cart:after {
    transform: translate3d(0, 65px, 0);
    padding: 21px 22px 21px 42px;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
}

.featured_context .store_item .store_item_controls:after {
    top: 24px;
    left: 25px;
}


/*  Buttons
    ---------------------------------------------------------------------------------- */

.button,
button:not(.store_item_add_to_cart) {
    float: left;
    position: relative;
    background: #fff;
    overflow: hidden;
    font-family: inherit;
    outline: none;
    border: none;
    border-radius: 0;
    transition: background 400ms linear;
}

.store_item_add_to_cart {
    color: inherit;
    background: none;
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    line-height: inherit;
    border: 0;
    width: 100%;
}

.button em.qty {
    display: inline-block;
    background: #333;
    border-radius: 50px;
    height: 22px;
    width: 22px;
    /*border: 2px solid #151515;*/
    vertical-align: top;
    transition: transform 400ms cubic-bezier(.75, .01, .3, .99), opacity 400ms ease-in-out, color 400ms ease-in-out, background 400ms ease-in-out;
    transform: scale(0.5);
    opacity: 0;
    font-style: normal;
    color: #fff;
    margin-top: -4px;
    margin-left: 8px;
    font-size: 1.0rem;
    line-height: 2.3rem;
    text-align: center;
    font-weight: bold;
    letter-spacing: -0.6px;
    text-indent: -1px;
}

.filters_active .button em.qty {
    transform: scale(1);
    opacity: 1;
}

.button:hover em.qty {
    transform: scale(1.2);
    background: #f9f4f1;
    color: #222;
}

.button a,
.button>span,
button:not(.store_item_add_to_cart) {
    float: left;
    border: none;
    color: #151515;
    font-weight: bold;
    font-style: normal;
    font-size: 1.3rem;
    line-height: 2.0rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding: 22px 55px 22px;
    cursor: pointer;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    transition: color 300ms cubic-bezier(.65, .06, .19, .96), border 300ms cubic-bezier(.65, .06, .19, .96), background 300ms linear;
}

.button_smaller.button a {
    padding: 18px 45px;
}

.button:not(.store_item_add_to_cart):before {
    content: '';
    pointer-events: none;
    background: #00af4c;
    position: absolute;
    top: -80px;
    left: -60px;
    right: 0;
    bottom: -80px;
    width: 0;
    transform: translate3d(0, 0, 0) rotate(15deg);
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96), width 400ms cubic-bezier(.65, .06, .19, .96);
}

.device-desktop .button:not(.store_item_add_to_cart):hover:before {
    width: calc(100% + 60px);
    transform: none;
}


/* Reversed ------------------------------ */

.content-type-reversed #container .button:not(.store_item_add_to_cart),
.content-type-reversed #container button:not(.store_item_add_to_cart),
.content-reversed .button:not(.store_item_add_to_cart),
.content-reversed button:not(.store_item_add_to_cart) {
    background: #171717;
}

.content-type-reversed #container .button a,
.content-type-reversed #container .button>span,
.content-type-reversed #container button:not(.store_item_add_to_cart),
.content-reversed .button a,
.content-reversed .button>span,
.content-reversed button:not(.store_item_add_to_cart) {
    color: #fff;
}


/* Alt button ------------------------------ */

.button.prominent,
.button.prominent,
button.prominent,
.notify_panel .button.prominent {}

.button.prominent a,
.notify_panel .button.prominent a {}

.button.prominent:before,
.notify_panel .button.prominent:before {}

.button.loading {
    pointer-events: none;
}

.button.loading a {
    opacity: 0;
    transition: opacity 400ms ease-in-out;
}

.button.loading:after {
    transform: translateX(100px);
}

.button .loader {
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -10px;
    min-width: 0;
    z-index: 5;
    padding: 0 !important;
    transition: top 400ms ease-in-out;
}

.button.loading .loader {
    top: 20px;
}

.button.loading .loader svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    height: 20px;
    width: 20px;
}

.button.loading .loader svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: dash 1.5s ease-in-out infinite, color4 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color4 6s ease-in-out infinite;
    stroke-linecap: round;
}


/* -----------------------------------------------------------
   Notify panel / slide-in panel
----------------------------------------------------------- */

.notify_panel {
    display: none;
    position: fixed;
    z-index: 2000;
    top: 0;
    left: 0;
    bottom: 0;
    max-width: 600px;
    width: 60vw;
    background: #111;
    transition: all 600ms cubic-bezier(.65, .06, .19, .96);
    transform: translate3d(-60vw, 0, 0);
    opacity: 1;
}

body.cms-frontend-toolbar-active .notify_panel {
    top: 28px;
}

.notify_panel.active {
    display: block;
}

.notify_panel.active.animate {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.notify_panel_mask {
    display: none;
    transition: background 700ms ease-in-out;
}

.notify_panel_content_scrollable {
    position: absolute;
    top: 0;
    bottom: 64px;
    left: 0;
    right: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

body.sc_quick_cart_widget_active,
body.sc_wishlist_quick_cart_widget_active {
    overflow: hidden;
}

body.sc_quick_cart_widget_active .notify_panel_mask,
body.sc_wishlist_quick_cart_widget_active .notify_panel_mask,
body.active-init .notify_panel_mask {
    position: fixed;
    display: block;
    z-index: 1999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    -webkit-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out;
}

body.sc_quick_cart_widget_active.sc_quick_cart_widget_animate .notify_panel_mask,
body.sc_wishlist_quick_cart_widget_active.sc_wishlist_quick_cart_widget_animate .notify_panel_mask,
body.active-init.overlay-open .notify_panel_mask {
    opacity: 1;
}

body.sc_quick_cart_widget_animate #main_content,
body.sc_wishlist_quick_cart_widget_animate #main_content {
    transform: translate3d(25vw, 0, 0);
}

.notify_panel .notify_panel_header {
    width: 100%;
    clear: both;
    padding: 140px 70px 30px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_header h2 {
    font-size: 25px;
    line-height: 32px;
    margin: 0 0 20px;
    text-align: left;
    margin: 0;
}

.notify_panel .notify_panel_header .description {
    line-height: 2rem;
}

.notify_panel h3 {
    font-size: 1.8rem;
    line-height: 2.3rem;
    margin: 0 0 10px;
    padding: 10px 0 0 4px;
    float: left;
}

.notify_panel_close {
    color: #fff;
    position: absolute;
    top: 38px;
    right: 35px;
    border: 2px solid transparent;
    padding: 7px 0 9px;
    margin: 0 0 0 25px;
    z-index: 1200;
    cursor: pointer;
    font-size: 13px;
    line-height: 20px;
    font-family: Calibre, Sans-Serif;
    color: #ffffff;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    transition: transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
}

.notify_panel .notify_panel_content {
    display: block;
    clear: both;
    padding: 0 0 0;
}

.notify_panel .notify_panel_items {
    float: left;
    width: 100%;
}

.notify_panel .notify_panel_content form {
    padding: 20px;
}

.notify_panel .notify_panel_content ul {
    margin: 0;
    float: left;
    width: 100%;
    padding: 0;
    list-style: none;
}

.notify_panel .notify_panel_content ul li {
    display: block;
    float: left;
    width: 100%;
    padding: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    clear: both;
    max-height: 500px;
}

.notify_panel .notify_panel_content ul li:last-child {
    margin: 0 0 40px;
}

.notify_panel .notify_panel_content ul li.hide {
    transition: max-height 500ms cubic-bezier(.65, .06, .19, .96), padding 500ms cubic-bezier(.65, .06, .19, .96);
    max-height: 0;
    padding: 0;
    transition-delay: 500ms;
}

.notify_panel .notify_panel_content ul li.hide .item_inner {
    transition: transform 500ms cubic-bezier(.65, .06, .19, .96);
    transform: translate3d(-100%, 0, 0);
}

.notify_panel .notify_panel_content ul li .item_inner {
    display: block;
    width: 100%;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 70px 0;
}

.notify_panel .notify_panel_content ul li .item_image {
    display: inline-block;
    vertical-align: middle;
    width: 32%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
}

.notify_panel .notify_panel_content ul li .item_image img {
    max-height: 215px;
    margin: 0 auto;
    display: block;
}

.notify_panel .notify_panel_content ul li .item_content {
    display: inline-block;
    vertical-align: middle;
    width: 68%;
    padding-left: 40px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_content .items_list:after {
    display: none;
    margin: 20px;
    clear: both;
    float: left;
    font-size: 1.3rem;
    line-height: 1.8rem;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.1);
    clear: both;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    padding: 15px 20px;
    content: 'Please note: Items in your basket are not reserved. Please complete your order to secure the purchase of the item.';
}

.notify_panel .notify_panel_content ul li .content {
    float: left;
    width: 70%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_content ul li .item_content .sqcw_item_error,
.notify_panel .notify_panel_content ul li .item_unavailable {
    width: 100%;
    display: block;
    font-size: 1.3rem;
    line-height: 2.1rem;
    color: #f30000;
    margin: 0 0 10px;
    display: none;
}

.notify_panel .notify_panel_content ul li.sqcw_max_qty_error .sqcw_item_content .sqcw_item_error,
.notify_panel .notify_panel_content ul li .sqcw_item_unavailable {
    display: block;
}

.notify_panel .notify_panel_content ul li .item_content .item_details {
    width: 100%;
    display: block;
}

.notify_panel .notify_panel_content ul li .item_content .item_details .title,
.notify_panel .notify_panel_content ul li .content .title,
.notify_panel .notify_panel_content ul li .content .artist,
.notify_panel .notify_panel_content ul li .details,
.notify_panel .notify_panel_content ul li .content .content_type {
    display: block;
    margin: 0 0 10px;
    line-height: 1.8rem;
}

.notify_panel .notify_panel_content ul li .item_content .item_details .title {
    font-weight: bold;
}

.notify_panel .notify_panel_content ul li .content .content_type {
    margin: 0;
}

.notify_panel .notify_panel_content ul li .content .artist {
    margin: 0;
}

.notify_panel .notify_panel_content ul li .content .title em {
    font-style: normal;
}

.notify_panel .notify_panel_content ul li .item_content .item_details .details,
.notify_panel .notify_panel_content ul li .content {
    display: none;
}

.notify_panel .notify_panel_content ul li .item_content.wqcw_item_content .item_details .details {
    display: block;
    margin: -5px 0 12px;
    color: rgba(255, 255, 255, 0.5);
}

.notify_panel .notify_panel_content ul li .content {
    margin: 0
}

.notify_panel .notify_panel_content ul li .item_content .item_tools {
    width: 100%;
    display: block;
    float: left;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 11px 0 0;
}

.notify_panel .notify_panel_content ul li .item_content .item_tools .sqcw_cell_singleprice {
    display: none;
}

.notify_panel .notify_panel_content ul li .item_content .item_tools .sqcw_cell_quantity {
    float: left;
    line-height: 1.8rem;
    margin: 0 20px 0 0;
}

.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_quantity .qty {
    padding: 0 4px;
}

.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_quantity .qty:after {
    /*content: 'x';
                                    display: inline-block;
                                    padding: 0 8px;
                                    text-transform: lowercase;
                                    */
}

.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_quantity .sqcw_item_qty_label {
    display: none;
}

.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_quantity .decrease_qty.disabled,
.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_quantity .increase_qty.disabled {
    opacity: 0.3;
}

.notify_panel .notify_panel_content ul li .sqcw_item_content .sqcw_item_tools .sqcw_cell_total {
    float: left;
    line-height: 1.8rem;
}

.notify_panel .notify_panel_content ul li .item_content .item_tools .item_remove {
    float: right;
}

.notify_panel .notify_panel_content ul li .item_content .item_tools .item_remove a {
    display: block;
    text-align: left;
    text-indent: -100px;
    overflow: hidden;
    height: 14px;
    width: 14px;
    margin-right: -4px;
    background: url(../images/close_small.png) center center no-repeat;
    background-size: 7px 7px;
}

.notify_panel .notify_panel_content .notify_panel_empty {
    display: block;
    padding: 50px 20px;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5rem;
    line-height: 3.2rem;
    font-weight: bold;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.notify_panel .notify_panel_footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 64px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.06);
}

.notify_panel .notify_panel_footer #sqcw_total {
    display: block;
    float: left;
    line-height: 20px;
    font-weight: bold;
    padding: 20px 30px 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_footer #sqcw_total .sqcw_total_label {
    float: left;
    color: #777;
    padding: 0 20px 0 0;
}

.notify_panel .notify_panel_footer #sqcw_total .sqcw_total_price {
    float: right;
}

.notify_panel .notify_panel_footer #sqcw_total .sqcw_total_price_currency {
    padding-right: 6px;
}

.notify_panel .notify_panel_footer #wqcw_total {
    display: block;
    float: left;
    line-height: 20px;
    font-weight: bold;
    padding: 20px 30px 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_footer #wqcw_total .wqcw_total_label {
    float: left;
    color: #777;
    padding: 0 20px 0 0;
}

.notify_panel .notify_panel_footer #wqcw_total #wqcw_item_count {
    float: left;
    color: #fff;
}

.notify_panel .notify_panel_footer #wqcw_checkout {
    float: right;
    display: block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_footer #sqcw_checkout {
    float: right;
    display: block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.notify_panel .notify_panel_footer .sqcw_checkout_button {
    display: block;
    width: 100%;
    float: none;
}

.notify_panel .notify_panel_footer .sqcw_checkout_button a {
    width: 100%;
    text-align: left;
}

.notify_panel .notify_panel_footer .sqcw_checkout_button.button {}

.notify_panel .notify_panel_footer .sqcw_checkout_button.button:before {}

.notify_panel .notify_panel_footer .sqcw_checkout_button.button a,
.notify_panel .notify_panel_footer .sqcw_checkout_button.button a:visited {}

.notify_panel .notify_panel_footer .sqcw_checkout_button.button:hover a,
.notify_panel .notify_panel_footer .sqcw_checkout_button.button:hover a:visited {}


/* -----------------------------------------------------------
   Shopping cart / Checkout
----------------------------------------------------------- */

@media screen and (min-width: 901px) {
    .section-store h1,
    .section-store .faux_h1 {
        font-size: 5.6rem;
        line-height: 6.0rem;
    }
}

#sc_processing_payment {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 200000;
    display: none;
}

.section-store.page-param-basket.sc-payment-processing #sc_processing_payment {
    display: block;
}

#sc_processing_payment div.arpromptfade {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 200000;
    opacity: 0.6;
}

#sc_processing_payment div#arprompt {
    z-index: 200001;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
}

#sc_processing_payment div.arprompt .arpromptmessage {
    margin: 0;
}

.section-store.page-param-basket #header #basket,
.section-store.page-param-basket #header #wishlist,
.section-wishlist.page-param-basket #header #basket,
.section-wishlist.page-param-basket #header #wishlist {
    display: none;
}

.section-store .subsection-store-basket,
.section-wishlist .subsection-store-basket {
    margin: 0 auto;
}

.section-store .subsection-store-basket:after,
.section-wishlist .subsection-store-basket:after {
    height: 0;
    display: block;
    content: '';
    clear: both;
    overflow: hidden;
}

.section-store .subsection-store-basket #content_module,
.section-wishlist .subsection-store-basket #content_module {
    float: left;
    width: 60%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 150px 100px 50px;
}

.section-store .subsection-store-basket #sidebar,
.section-wishlist .subsection-store-basket #sidebar {
    float: right;
    clear: none;
    width: 40%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 150px 50px 50px;
    background: rgba(255, 255, 255, 0.05);
}

.section-store .subsection-store-basket h2,
.section-wishlist .subsection-store-basket h2,
.section-store .subsection-store-basket h3,
.section-wishlist .subsection-store-basket h3 {
    margin: 0 0 35px;
    font-size: 3.2rem;
    line-height: 4rem;
}

#sc_checkout_content #shipping_container #shipping_zones_container h3,
#sc_checkout_content #shipping_container #shipping_options_container h3 {
    font-size: 13px;
}

#sc_checkout_content .divider {
    height: 40px;
}

#sc_coupon_container {}

#sc_coupon_container.active .form:before {
    font: normal normal normal 20px/1 FontAwesome;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f058";
    margin: 5px 16px 0 2px;
    color: #a3d940;
    float: left;
}

#sc_coupon_container .form .inputField {
    float: left;
    width: 200px;
    margin: 0 16px 0 0;
    min-height: 33px;
}

#sc_coupon_container .form .button {
    float: left;
    clear: none;
    margin: 0;
}

#sc_contents_container {}

#sc_contents_container #sc_reserve_note {
    float: left;
    clear: both;
    padding: 15px 0 0;
    font-size: 1.4rem;
    line-height: 2rem;
}

#sc_contents_container #sc_vat_note {
    float: left;
    clear: both;
    padding: 30px 0 0;
    font-size: 1.4rem;
    line-height: 2rem;
}

#sc_contents_container #sc_totalweight {
    float: left;
    display: none;
    padding: 15px 0 0;
}

#sc_contents_container #sc_vat_note {
    display: none;
}

#shopping_cart_information,
#wishlist_information {
    width: 100%;
}

#shopping_cart_information .sc_cell_item,
#wishlist_information .sc_cell_item {
    float: left;
    width: 100%;
    clear: both;
    margin: 0 0 30px;
    padding: 0 0 30px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

#shopping_cart_information .sc_cell_item .image,
#wishlist_information .sc_cell_item .image {
    float: left;
    padding: 0 30px 0 0;
    width: 55%;
    max-width: 350px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#shopping_cart_information .sc_cell_item .image img,
#wishlist_information .sc_cell_item .image img {
    max-height: 250px;
    display: block;
    margin: 0 auto;
}

#shopping_cart_information .sc_cell_item .content,
#wishlist_information .sc_cell_item .content {
    float: left;
    width: 45%;
}

#shopping_cart_information .sc_cell_item .content .title,
#wishlist_information .sc_cell_item .content .title {
    display: block;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    font-size: 2.1rem;
    line-height: 2.8rem;
    margin: 0 0 20px;
    font-weight: bold;
}

#shopping_cart_information .sc_cell_item .content .details,
#wishlist_information .sc_cell_item .content .details {
    display: block;
    color: #888;
    margin: 0 0 20px;
}

#shopping_cart_information .sc_cell_item .content .tools,
#wishlist_information .sc_cell_item .content .tools {
    display: block;
    color: #ffffff;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 2.0rem;
    letter-spacing: 0.5px;
}

#shopping_cart_information .sc_cell_quantity,
#wishlist_information .sc_cell_quantity {
    float: left;
}

#shopping_cart_information .sc_cell_quantity .decrease_qty,
#shopping_cart_information .sc_cell_quantity .increase_qty,
#wishlist_information .sc_cell_quantity .decrease_qty,
#wishlist_information .sc_cell_quantity .increase_qty {
    float: left;
    font-size: 1.6rem;
    font-weight: bold;
}

#shopping_cart_information .sc_cell_quantity .decrease_qty.disabled,
#wishlist_information .sc_cell_quantity .decrease_qty.disabled {
    opacity: 0.4;
    cursor: default;
}

#shopping_cart_information .sc_cell_quantity .qty,
#wishlist_information .sc_cell_quantity .qty {
    float: left;
    padding: 0 8px;
}

#shopping_cart_information .sc_cell_singleprice,
#wishlist_information .sc_cell_singleprice {
    display: none;
}

#shopping_cart_information .sc_cell_total,
#wishlist_information .sc_cell_total {
    float: right;
}

#shopping_cart_information .sc_cell_unavailable,
#wishlist_information .sc_cell_unavailable {
    color: red;
    font-weight: bold;
}

#shopping_cart_information td .sc_cell_error_message,
#wishlist_information td .sc_cell_error_message {
    color: red;
    font-weight: bold;
}

#shopping_cart_information .sc_cell_remove .remove,
#wishlist_information .sc_cell_remove .remove {
    display: block;
    float: right;
    text-align: left;
    text-indent: -100px;
    margin-left: 10px;
    overflow: hidden;
    height: 20px;
    width: 14px;
    margin-right: -2px;
    background: url(../images/close_small.png) center center no-repeat;
    background-size: 7px 7px;
}

#sc_checkout_container {}

#sc_checkout_container .terms_and_conditions {
    padding: 25px 0 0;
    clear: both;
}

#sc_checkout_container #sc_demo_note {
    margin-top: 50px;
    font-size: 1.2rem;
    line-height: 1.8rem;
    color: #151515;
}

#sc_checkout_content {}

#sc_checkout_content .divider {
    display: none;
}

#sc_checkout_content .sc_subtotal_label,
#sc_checkout_content .sc_discount_label,
#sc_checkout_content .sc_vat_total_label,
#sc_checkout_content .sc_shipping_total_label,
#sc_checkout_content .sc_order_total_label {
    float: left;
    width: 100px;
    color: #888;
}

#sc_checkout_content #sc_subtotal,
#sc_checkout_content #sc_discount,
#sc_checkout_content #sc_vat_total,
#sc_checkout_content #sc_shipping_total,
#sc_checkout_content #sc_order_total {
    padding: 0 0 0;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 2rem;
    margin: 0 0 20px;
    font-weight: bold;
    color: #ffffff;
}

#sc_checkout_content .order_total {
    font-size: 25px;
}

#sc_checkout_content .currency {
    padding-right: 5px;
}

#sc_checkout_content #shipping_container {
    margin: 0;
    padding: 20px 0 0;
    clear: both;
    position: relative;
    overflow: hidden;
    clear: both;
}

#sc_checkout_container #shipping_container #shipping_container_loader {
    position: absolute;
    top: 50%;
    left: -50%;
    transform: translate3d(-50%, -50%, 0);
    z-index: 5;
    display: block;
    transition: opacity 400ms ease-in-out;
    opacity: 0;
}

#sc_checkout_container #shipping_container.shipping_options_loading #shipping_container_loader {
    opacity: 1;
    left: 50%;
}

#sc_checkout_container #shipping_container.shipping_options_loading #shipping_container_loader svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    height: 30px;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 30px;
}

#sc_checkout_container #shipping_container.shipping_options_loading #shipping_container_loader svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    stroke-linecap: round;
}

#sc_checkout_container #shipping_container:after {
    content: '';
    background: rgba(35, 35, 35, 0.9);
    position: absolute;
    top: 0;
    left;
    0;
    right: 0;
    height: 0;
    z-index: 0;
    opacity: 0;
    width: 100%;
    pointer-events: none;
    transition: opacity 400ms ease-in-out;
}

#sc_checkout_container #shipping_container.shipping_options_loading:after {
    display: block;
    height: auto;
    opacity: 1;
    bottom: 0;
    z-index: 1;
    pointer-events: auto;
}

#sc_checkout_content #shipping_container select {
    border: 0;
    padding: 10px 0;
    width: 100%;
    background: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    border-radius: 0;
    resize: none;
}

#sc_checkout_content #shipping_container select::-ms-expand {
    display: none;
}

#sc_checkout_content #shipping_container select.active {}

#sc_checkout_content #shipping_container #shipping_zones_container,
#sc_checkout_content #shipping_container #shipping_options_container {
    display: none;
    margin: 0 0 15px;
    padding: 0 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

#sc_checkout_content #shipping_container #shipping_zones_container.active,
#sc_checkout_content #shipping_container #shipping_options_container.active {
    display: block;
}

#sc_checkout_content #shipping_container #shipping_zones_container h3,
#sc_checkout_content #shipping_container #shipping_options_container h3 {
    margin: 0 0 10px;
}

#sc_checkout_container .button {
    float: left;
    display: inline;
}

#sc_checkout_container .proceed_to_payment {
    display: none;
    position: relative;
}

#sc_checkout_container .proceed_to_payment.active,
#sc_checkout_container .proceed_to_payment.loading,
#sc_checkout_container .proceed_to_payment.placeholder {
    display: block;
}

#sc_checkout_container .proceed_to_payment #stripe_loader {
    position: absolute;
    top: 7px;
    left: 50%;
    margin-left: -15px;
    z-index: 5;
}

#sc_checkout_container .proceed_to_payment #stripe_loader svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    height: 30px;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 30px;
}

#sc_checkout_container .proceed_to_payment #stripe_loader svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    stroke-linecap: round;
}

#sc_checkout_container .proceed_to_payment #stripe_button_container {
    -webkit-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out;
    opacity: 0.3;
    z-index: 10;
    position: relative;
    height: 45px;
}

#sc_checkout_container .proceed_to_payment.active #stripe_button_container {
    opacity: 1;
}

#sc_checkout_container .proceed_to_payment.placeholder #stripe_button_container {
    opacity: 0.4;
}

#sc_checkout_container .proceed_to_payment.placeholder button {
    cursor: default;
}

#sc_total_price_container {
    padding: 15px 0 0;
}

#sc_total_price_container h3 {
    margin: 0 0 15px;
    padding: 0 0 15px;
    border-bottom: 1px solid #444;
    display: none;
}

#sc_total_price_container .order_total_wrapper {}

#sc_checkout_content #sc_terms_box {
    margin: 30px 0 10px;
    position: relative;
}

#sc_checkout_content #sc_terms_box input {
    display: inline-block;
    position: absolute;
    top: 9px;
    left: 0;
}

#sc_checkout_content #sc_terms_box label {
    display: inline-block;
    padding: 0 0 0 25px;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 2.8rem;
    font-weight: bold;
    color: #888;
}

#sc_checkout_content #sc_checkout_button {
    padding: 20px 0 0;
    min-height: 50px;
    position: relative;
    -moz-transition: opacity 0.4s ease-in-out;
    -webkit-transition: opacity 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out;
}

#sc_checkout_content #sc_checkout_button.sc_terms_unconfirmed #stripe_button_container,
#sc_checkout_content #sc_checkout_button.sc_fields_unconfirmed #stripe_button_container {
    opacity: 0.3;
}

#sc_checkout_content #sc_checkout_button.sc_terms_unconfirmed .proceed_to_payment,
#sc_checkout_content #sc_checkout_button.sc_shipping_unconfirmed .proceed_to_payment,
#sc_checkout_content #sc_checkout_button.sc_fields_unconfirmed .proceed_to_payment {
    pointer-events: none;
}

#sc_checkout_content #sc_checkout_button.sc_terms_unconfirmed:after,
#sc_checkout_content #sc_checkout_button.sc_shipping_unconfirmed:after,
#sc_checkout_content #sc_checkout_button.sc_fields_unconfirmed:after {
    content: '.';
    text-indent: -100px;
    display: block;
    position: absolute;
    overflow: hidden;
    z-index: 1000000;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
}

#basket_footer {}

#basket_footer #store_payment_logos {
    clear: both;
    float: left;
    width: 100%;
}

#basket_footer #store_payment_logos ul {
    list-style: none;
    padding: 0;
    margin: 0;
    float: left;
    width: 100%;
}

#basket_footer #store_payment_logos ul li {
    float: left;
    margin: 0 10px 0 0;
    text-indent: -100px;
    height: 32px;
    width: 52px;
    background: 0 0 no-repeat;
}

#basket_footer #store_payment_logos ul li.wp_worldpay {
    background-image: url(../lib/worldpay/images/worldpay.jpg);
    width: 100px
}

#basket_footer #store_payment_logos ul li.wp_visa {
    background-image: url(../lib/images/payment/visa-curved-32px.png)
}

#basket_footer #store_payment_logos ul li.wp_mastercard {
    background-image: url(../lib/images/payment/mastercard-curved-32px.png)
}

#basket_footer #store_payment_logos ul li.wp_amex {
    background-image: url(../lib/images/payment/american-express-curved-32px.png)
}

#basket_footer #store_payment_logos ul li.wp_paypal {
    background-image: url(../lib/images/payment/paypal-curved-32px.png)
}

#basket_footer #store_payment_logos ul li.wp_stripe {
    background-image: url(../lib/images/payment/powered-by-stripe.png);
    width: 120px;
    background-position: center;
}

.sc_warning,
#sc_demo_note,
.sc_demo_note {
    clear: both;
    font-size: inherit;
    border: 1px solid #ffd503;
    background: #f7f3de;
    color: #151515;
    clear: both;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    padding: 15px 20px;
    line-height: inherit;
    max-width: 600px;
}

.sc_warning h3,
.sc_demo_note h3 {
    font-size: 2.4rem;
    line-height: 3rem;
    margin: 0 0 10px;
}

#sc_dev_mode_box {
    display: inline-block;
    padding: 40px 0 0;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 2.8rem;
    font-weight: bold;
    color: #888;
}

#sc_dev_mode_box h4 {
    font-size: 1.6rem;
    margin: 0 0 15px;
}


/* Store confirmation
    ---------------------------------------- */

.subsection-store-basket .subsection-confirmation {}

.subsection-store-basket .subsection-confirmation .content_basic_layout h1 {
    width: 100%;
    float: none;
    margin: 0 0 40px;
}

.subsection-store-basket .subsection-confirmation .divider {
    height: 0;
}

.subsection-store-basket .subsection-confirmation .sc_confirmation_body {
    margin: 0 0 50px;
}

.subsection-store-basket .subsection-confirmation .sc_warning,
.subsection-store-basket .subsection-confirmation .sc_demo_note {
    margin: 0 0 50px;
}


/* Stripe button
    ---------------------------------------- */

.stripe-button-el {
    /* Default stripe button styles, including these here for the placeholder button */
    overflow: hidden;
    display: inline-block;
    visibility: visible !important;
    background-image: -webkit-linear-gradient(#28a0e5, #015e94);
    background-image: -moz-linear-gradient(#28a0e5, #015e94);
    background-image: -ms-linear-gradient(#28a0e5, #015e94);
    background-image: -o-linear-gradient(#28a0e5, #015e94);
    background-image: -webkit-linear-gradient(#28a0e5, #015e94);
    background-image: -moz-linear-gradient(#28a0e5, #015e94);
    background-image: -ms-linear-gradient(#28a0e5, #015e94);
    background-image: -o-linear-gradient(#28a0e5, #015e94);
    background-image: linear-gradient(#28a0e5, #015e94);
    -webkit-font-smoothing: antialiased;
    border: 0;
    padding: 1px;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
    cursor: pointer;
    /* END Default stripe button styles */
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    -ms-border-radius: 0 !important;
    -o-border-radius: 0 !important;
    border-radius: 0 !important;
    width: 100%;
    background: none !important;
    box-shadow: none !important;
    outline: none;
}

.stripe-button-el span {
    /* Default stripe button styles, including these here for the placeholder button */
    display: block;
    position: relative;
    padding: 0 12px;
    height: 30px;
    line-height: 30px;
    background: #fff;
    font-size: 14px;
    color: #fff;
    font-weight: bold;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -ms-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -o-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    /* END Default stripe button styles */
    border: 2px solid #ffffff !important;
    font-size: 14px !important;
    line-height: 20px !important;
    font-family: Calibre, serif !important;
    color: #151515 !important;
    background: #ffffff !important;
    font-weight: bold !important;
    padding: 19px 50px 19px !important;
    cursor: pointer !important;
    min-width: 160px !important;
    -moz-box-sizing: border-box !important;
    -webkit-box-sizing: border-box !important;
    box-sizing: border-box !important;
    text-align: center !important;
    position: relative !important;
    transition: color 600ms cubic-bezier(.65, .06, .19, .96) !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    -ms-border-radius: 0 !important;
    -o-border-radius: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    text-align: center !important;
    height: auto !important;
}

.stripe-button-el span:before {
    font-family: FontAwesome;
    content: "\f023";
    position: absolute;
    right: 20px;
}


/* Checkout 2.0 compatability
    ----------------------------------------------------- */

#sc_checkout_container.submitting,
#sc_checkout_container form.submitting {
    pointer-events: none;
}

.section-store .subsection-store-basket #content_module {
    width: 65%;
    box-sizing: border-box;
    padding-right: 50px;
    margin-bottom: 70px;
}

.section-store .subsection-store-basket #sidebar {
    width: 35%;
}

#sc_checkout_container .sc_field_group {
    margin: 0 0 40px;
    clear: both;
    float: left;
    width: 100%;
}

#sc_checkout_container h3.subheading {
    text-transform: uppercase;
    letter-spacing: 2.5px;
    margin: 0 0 30px;
    font-size: 1.1rem;
    line-height: 1.8rem;
    font-family: inherit;
    color: #555;
    position: relative;
    display: block;
    border-bottom: none;
    padding-bottom: 0;
}

#sc_checkout_container h3.subheading:before {
    border-bottom: 1px solid #4c4b4b;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -2px;
    left: 0;
    right: 0;
    z-index: 0;
}

#sc_checkout_container h3.subheading:after {
    display: none;
}

#sc_checkout_container h3.subheading span {
    background: #242424;
    position: relative;
    z-index: 1;
    padding-right: 10px;
    color: white;
    font-size: 13px;
}

#sc_checkout_container form .form_row label {
    display: block;
    margin-bottom: 5px;
    float: left;
    width: 40%;
    box-sizing: border-box;
    padding: 10px 20px 0 0;
    margin-right: 0;
}

#sc_checkout_container .form_row>select,
#sc_checkout_container .select_container,
#sc_checkout_container .inputField {
    padding: 10px 10px;
    border: 1px solid #4c4b4b;
    float: left;
    width: 60%;
    box-sizing: border-box;
    line-height: 2.4rem;
    outline: none;
    color: white;
}

#sc_checkout_container #cardholder-name.inputField {
    line-height: 1.4rem;
    -webkit-font-smoothing: antialiased;
    color: #333;
}

#sc_checkout_container #sc_checkout_payment_form .form_row label {
    width: 40%;
}

#sc_checkout_container #sc_checkout_payment_form .form_row .inputField {
    width: 60%;
}

#sc_checkout_container .select_container {
    border: 0;
    padding: 0;
}

#sc_checkout_container .select_container select {
    padding: 10px 10px;
    border: 1px solid #eaeaea;
    line-height: 2.4rem;
}

#sc_checkout_container form .form_row:after {
    display: none;
}

#sc_checkout_container .button {
    width: 100%;
    text-align: center;
    margin: 0;
}

#sc_checkout_container .button a {
    float: none;
    width: 100%;
    display: block;
}

#sc_checkout_back_button {
    padding: 25px 0 0;
    margin: 0 0 20px;
}

.required_field_label {
    color: #777;
}

#cardholder-name.inputField::placeholder {
    color: #aaa;
}

#sc_checkout_content #shipping_container #shipping_zones_container,
#sc_checkout_content #shipping_container #shipping_options_container {
    border: none;
}

#sc_checkout_content #shipping_container #shipping_zones_container,
#sc_checkout_content #shipping_container #shipping_options_container {
    margin-bottom: 15px;
    padding-bottom: 0;
}

#sc_checkout_content #shipping_container select {
    padding-right: 25px;
    height: auto;
    padding-left: 10px;
}

#sc_checkout_container form .form_row {
    display: block;
    clear: both;
    float: left;
    width: 100%;
}

#sc_checkout_container form .form_row select {
    background: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    color: #666;
    padding: 10px 0px;
    border-radius: 0;
    resize: none;
    cursor: pointer;
}

#sc_checkout_container form .form_row .select_container {
    position: relative;
}

#sc_checkout_container form .form_row .select_container:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(0, -3px);
    right: 15px;
    width: 0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 3px solid white;
    pointer-events: none;
}

#sc_additional_fields {
    border: none;
}

#sc_checkout_container #sc_checkout_content select {
    background-image: none;
}

#sc_total_price_container {
    border: none;
}

#sc_checkout_content #sc_subtotal,
#sc_checkout_content #sc_discount,
#sc_checkout_content #sc_vat_total,
#sc_checkout_content #sc_shipping_total,
#sc_checkout_content #sc_order_total {
    border-bottom: 1px solid #4c4b4b;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

#sc_checkout_button {
    clear: both;
}

#sc_checkout_container #privacy_policy_form_msg,
#sc_checkout_container .required_field_label {
    margin-top: 30px;
    color: #999;
}

#sc_checkout_container #sc_checkout_content input,
#sc_checkout_container #sc_checkout_content select {
    border: solid 1px #4c4b4b;
    color: white;
}

#sc_checkout_button .button a {
    transition: none;
}

#sc_checkout_container form .form_row {
    border-bottom: none;
}

#sc_checkout_payment_form .inputField {
    background-color: white;
    padding: 15px;
    border-radius: 4px;
}

#sc_checkout_payment_form .inputField:-webkit-autofill,
#sc_checkout_payment_form .inputField:-webkit-autofill:hover,
#sc_checkout_payment_form .inputField:-webkit-autofill:focus,
#sc_checkout_payment_form .inputField:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

#sc_checkout_payment_form .inputField:-webkit-autofill {
    -webkit-text-fill-color: #333 !important;
}

#sc_checkout_container #privacy_policy_form_msg {
    font-size: 1.2rem;
    line-height: 1.8rem;
}


/* Share links
    ----------------------------------------------------------- */

.share_links {
    position: relative;
    z-index: 5;
}

.share_links .link a {
    outline: none;
}

.share_links .share_options {
    width: 0;
    opacity: 0;
    position: absolute;
    top: 16px;
    left: 0;
    transition: width 600ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
    white-space: nowrap;
    overflow: hidden;
    padding: 6px 0 0;
    cursor: default;
}

.share_links.active .share_options {
    width: 130px;
    /* 5 items: width: 162px; */
    opacity: 1;
}

.share_links .share_options_inner {
    position: relative;
    background: #fff;
    border: 2px solid #ffffff;
    padding: 5px;
    height: 22px;
}

.share_links .share_options:after {
    top: 0;
    left: 23px;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: transparent;
    border-bottom-color: #ffffff;
    border-width: 4px;
    margin-left: -4px;
}

.share_links .share_options .social_links_item {
    display: inline-block;
    float: none;
}

.share_links .share_options .social_links_item .social_media_icon:after {
    color: #151515;
    font-size: 16px;
}

.share_links .share_options .social_links_item .social_media_icon:hover:after {}


/* Reversed ----------------- */

.content-type-reversed .share_links .share_options_inner,
.content-type-reversed-popup .share_links .share_options_inner {
    background: #151515;
}

.content-type-reversed .share_links .share_options:after,
.content-type-reversed-popup .share_links .share_options:after {
    border-bottom-color: #151515;
}

.content-type-reversed .share_links .share_options .social_links_item .social_media_icon:after,
.content-type-reversed-popup .share_links .share_options .social_links_item .social_media_icon:after {
    color: #fff;
}


/* Position top -------------- */

.share_links.position_top .share_options {
    bottom: 26px;
    top: auto;
    padding: 0 0 6px;
}

.share_links.position_top .share_options:after {
    bottom: 0;
    top: auto;
    left: 23px;
    border-color: transparent;
    border-top-color: #ffffff;
    border-width: 3px;
    margin-left: -3px;
}


/* Social media icons
    ----------------------------------------------------------- */


/* Icons ----------------------------------------------------------- */

.social_media_links {
    width: 100%;
    float: left;
    clear: both;
    margin: 0;
}

.social_links_item {
    margin: 0 5px 0 0;
    width: auto;
    height: auto;
    float: left;
}

.social_links_item:last-child {
    margin-right: 0;
}

.social_links_item a {
    position: relative;
    width: 22px;
    height: 22px;
    float: left;
    text-indent: -100px;
}

.social_media_icon {
    float: left;
    text-indent: -200px;
    text-align: center;
    border: 0;
    background: none;
    margin: 0;
    width: 22px;
    height: 22px;
    position: relative;
    overflow: hidden;
}

.social_media_icon:after {
    display: block;
    width: 100%;
    text-align: center;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 19px;
    line-height: 23px;
    float: left;
    text-rendering: auto;
    position: relative;
    z-index: 2;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transition: color 200ms ease-in-out, background 200ms ease-in-out, transform 400ms cubic-bezier(.2, 1.1, .78, .99);
    color: #fff;
    text-align: center;
    text-indent: 0;
}

.content-type-reversed .social_media_icon:after {
    color: #222;
}

.social_media_icon:hover:after {}

.social_media_icon.facebook:after {
    content: "\f09a";
}

.social_media_icon.twitter:after {
    content: "\f099";
}

.social_media_icon.instagram:after {
    content: "\f16d";
}

.social_media_icon.pinterest:after {
    content: "\f231";
}

.social_media_icon.tumblr:after {
    content: "\f173";
}

.social_media_icon.wechat:after {
    content: "\f1d7";
}

.social_media_icon.artsy:after {
    content: "";
    background: url(../images/artsy.svg) center center no-repeat;
    background-size: 20px 20px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: background 400ms ease-in-out;
    display: block;
}

.subsection-contact-content .social_links_item a:hover .social_media_icon.artsy:after,
.content-type-reversed .subsection-contact-content .social_links_item a .social_media_icon.artsy:after {
    background-image: url(../images/artsy_reversed.svg);
}


/* Pageload loader
    ----------------------------------------------------------- */

#preloader #loader_wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    z-index: 10000;
    height: 4px;
    width: 100% !important;
    transition: opacity 400ms ease-in-out;
}

body.cms-frontend-toolbar-active #preloader #loader_wrapper {
    top: 28px;
}

#preloader #splash_loader_icon {
    display: none;
}

#preloader #loader {
    height: 2px;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    width: 100% !important;
    overflow: hidden;
    background-color: transparent !important;
}

#preloader #loader:before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    width: auto;
    height: 2px;
    background-color: #ffffff;
    animation: loading2 1200ms cubic-bezier(.87, .17, .18, .85) infinite;
    transition: background 400ms ease-in-out;
}

.content-type-reversed #preloader #loader:before {
    background-color: #222;
}

body.splash-loader-active #preloader #loader_wrapper #loader {
    display: none;
}


/* Basic states
                ------------------------------------------- */

body.browser-js-enabled #preloader {
    display: block;
}

body.first-load-complete #preloader {
    display: none;
    height: 4px;
    bottom: auto;
}

body.first-load-complete #preloader_mask {
    height: 0;
    display: none;
}

body.first-load-complete.loader-active #preloader {
    display: block;
}


/* Ajax page loading
                ------------------------------------------- */

#preloader #loader {
    opacity: 0;
    transition: opacity 800ms ease-in-out, width 400ms ease-in-out;
    -webkit-transition: opacity 800ms ease-in-out, width 400ms ease-in-out;
}

body.ajax-loading #preloader #loader {
    opacity: 1;
}

body.ajax-loading-complete #preloader {
    opacity: 0;
    transition: opacity 800ms ease-in-out, width 400ms ease-in-out;
    -webkit-transition: opacity 800ms ease-in-out, width 400ms ease-in-out;
}


/* Splash screen
                ------------------------------------------- */

body.splash-loader-active {
    overflow: hidden;
}

body.splash-loader-active.splash-screen-in #preloader {
    cursor: pointer;
}

body.splash-loader-active.loader-active #preloader #loader_wrapper {
    opacity: 0;
}

body.splash-loader-active.loader-active #preloader.loading-bar-start #loader_wrapper {
    opacity: 1;
}

@keyframes loading2 {
    from {
        width: 0;
        opacity: 0.8;
    }
    50% {
        left: 0;
        width: 100%;
        opacity: 1;
    }
    to {
        left: 100%;
        width: 100%;
        opacity: 0.4;
    }
}


/* Popups (extended details, artworks)
    ----------------------------------------------------------- */

body.content-swipe,
body.page-popup-active {
    overflow: hidden;
}

body.content-swipe #popup_box,
body.content-swipe #popup_content {
    overflow: hidden;
}

#popup_container {}

#popup_overlay {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1100;
}

#popup_box {
    margin: 0 auto;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1200;
}

#popup_box .inner {
    float: left;
    width: 100%;
    overflow: hidden;
}

#popup_box .close {
    color: #ffffff;
    position: fixed;
    top: 34px;
    right: 26px;
    border: 2px solid transparent;
    padding: 7px 27px 9px 0;
    margin: 0 0 0 25px;
    z-index: 1200;
    cursor: pointer;
    font-weight: bold;
    font-size: 13px;
    line-height: 20px;
    font-family: Calibre, Sans-Serif;
    color: #ffffff;
    font-weight: bold;
    -moz-transition: opacity 2s cubic-bezier(.18, 1, .21, 1);
    -o-transition: opacity 2s cubic-bezier(.18, 1, .21, 1);
    -webkit-transition: opacity 2s cubic-bezier(.18, 1, .21, 1);
    transition: opacity 2s cubic-bezier(.18, 1, .21, 1);
}

.content-type-reversed-popup #popup_box .close {
    color: #151515;
}

#popup_box .close:after {
    display: block;
    content: '';
    position: absolute;
    top: 9px;
    right: 0;
    height: 17px;
    width: 17px;
    background: url(../images/close.png) 0 0 no-repeat;
    transition: background 400ms ease-in-out;
    background-size: 17px 17px;
}

.content-type-reversed-popup #popup_box .close:after {
    background-image: url(../images/close_alt.png);
}

#popup_content {
    width: 100%;
    max-height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}


/* Hide the pagination controls which are within the ajax page content */

#popup_content .artwork_detail .pagination_controls {
    display: none;
}


/* Effects ----------------------------------------------------------- */

#popup_container {
    display: none;
}


/* .loader-incoming-type-popup #popup_container */

.page-popup-active #popup_container {
    display: block;
}

#popup_overlay {
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
    -webkit-transition: opacity 0.6s ease-in-out;
}


/*.loader-incoming-type-popup.ajax-loading #popup_overlay */

.page-popup-visible #popup_overlay {
    opacity: 1;
}

#popup_box .close {
    opacity: 0;
    transform: translate3d(200px, 0, 0);
    transition: transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
    -webkit-transform: translate3d(200px, 0, 0);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
}


/*.loader-incoming-type-popup.ajax-loading #popup_box .close */

.page-popup-visible #popup_box .close {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
}

body.overlay-open.page-popup-visible #popup_box .close {
    opacity: 0;
    transform: translate3d(200px, 0, 0);
    -webkit-transform: translate3d(200px, 0, 0);
}

#popup_box .pagination_controls {
    opacity: 0;
    transition: transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
}


/*.loader-incoming-type-popup.ajax-loading #popup_box .close */

.page-popup-visible #popup_box .pagination_controls {
    opacity: 1;
}

#popup_content {
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
}


/* .loader-incoming-type-popup.ajax-loading #popup_content */

.page-popup-visible #popup_content {
    opacity: 1;
}

#popup_content .image_container {
    opacity: 0;
    transform: translate3d(0, 0, 0) scale(0.9);
    transition: transform 400ms cubic-bezier(.86, .01, .14, .99), opacity 400ms ease-in-out;
}

.page-popup-visible #popup_content .image_container {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

#popup_content .content_container {
    opacity: 0;
    transform: translate3d(0, 50px, 0);
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
}

.page-popup-visible #popup_content .content_container {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 1000ms ease-in-out;
}


/* Standard artworks ----------------------------------------------------------- */

#popup_content .content_basic_layout {
    transition: transform 600ms cubic-bezier(.86, .01, .14, .99), opacity 600ms ease-in-out;
    transform: translate3d(0, 600px, 0);
    opacity: 0;
}

.page-popup-visible #popup_content .content_basic_layout {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}


/* Previous / Next animation ----------------------------------------------------------- */

body.page-popup-transition #popup_box .artwork_hero_image_container {
    opacity: 0;
}

body.page-popup-transition.page-popup-transition2 #popup_box .artwork_hero_image_container {
    opacity: 0;
}

body.page-popup-transition #popup_box .artwork_detail .image_container {
    opacity: 0;
    transform: translate3d(0, 0, 0);
}

body.page-popup-transition.page-popup-transition2 #popup_box .artwork_detail .image_container {
    opacity: 0;
    transform: translate3d(0, 0, 0);
}

body.page-popup-transition #popup_box .artwork_detail .content_container {
    opacity: 0;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
    transform-origin: center top;
    transform: translate3d(0, -20px, 0);
}

body.page-popup-transition.page-popup-transition2 #popup_box .artwork_detail .content_container {
    transform: translate3d(0, 0, 0);
    transition: none;
}

body.page-popup-transition #popup_box .artwork_detail .content_container .label {}

body.page-popup-transition.page-popup-transition2 #popup_box .artwork_detail .content_container .label {
    width: 0;
}

body.page-popup-transition-initial #popup_box .pagination_controls .artwork_detail .pagination_controls_previous,
body.page-popup-transition-initial #popup_box .pagination_controls .artwork_detail .pagination_controls_next {
    opacity: 0;
}


/* ----------------------------------------------------------------------------------
  Page specific
---------------------------------------------------------------------------------- */


/* Advisory
    ---------------------------------------------------------------------------------- */

.section-advisory .scroll_section.scroll_section_top {
    height: auto;
    min-height: 0;
}

.section-advisory #hero {
    height: auto;
}

.section-advisory #hero .arrow {
    display: none !important;
}

.section-advisory #hero .media_wrapper .image_media img {
    opacity: 0.3;
    filter: contrast(1);
}

.section-advisory #hero {
    position: relative !important;
}

.section-advisory #hero .slide {
    position: static !important;
}

.section-advisory #hero .slide .content {
    position: relative;
}

.section-advisory #hero .slide .content .content_header {
    transform: none;
    padding: 100px 0;
    position: static;
    margin: 0 auto;
}

.section-advisory .contact-wrapper-form {
    margin: 0 auto;
    max-width: 650px;
    padding: 50px 0 0;
}


/* Mailing list
    ---------------------------------------------------------------------------------- */

.section-mailing-list .page_enquiry_widget {
    min-height: 100vh;
    display: flex;
}

.section-mailing-list .page_enquiry_widget form {
    align-self: center;
}


/* Home
    ---------------------------------------------------------------------------------- */

#homepage_overall_container {
    min-height: 100vh;
    /*background: #171717;*/
}

.scroll-container .scroll-container-inner .page-track-scroll-container,
.scroll-container .scroll-container-inner .page-track-scroll-container * {
    pointer-events: none;
}

.scroll-container .scroll-container-inner .page-track-scroll-container .page-track-item * {
    pointer-events: auto;
}

.section-home #main_content {
    background: none;
    min-height: 0 !important;
    height: 100vh;
}

.section-home #footer,
.section-home .faux_footer {
    display: none;
}

#canvas_wrapper_background {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
}

.main_slideshow_active #canvas_wrapper_background {
    display: block;
}

#canvas_wrapper_background_inner {
    width: 100vw !important;
    /* was 105vh */
    height: 100vh !important;
    /* was 105vh */
}

#canvas_wrapper_background .inner {
    opacity: 0;
    transition: opacity 1000ms ease-in-out;
}

.main_slideshow_animate #canvas_wrapper_background .inner {
    opacity: 1;
}

#canvas_wrapper_background canvas {
    position: absolute;
    opacity: 0;
    transition: opacity 800ms ease-in-out;
    width: 100vw !important;
    /* was 105vh */
    height: 100vh !important;
    /* was 105vh */
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
}

#canvas_wrapper_background canvas {
    opacity: 1;
}

#main_slideshow_nav {
    position: absolute;
    right: 0;
    z-index: 2;
    display: none;
}

#main_slideshow_pagination {
    position: absolute;
    right: 28px;
    z-index: 1003;
    top: 50%;
    margin: -50px 0 0;
    height: 135px;
    width: 38px;
    font-family: Calibre, Apercu_Pro, serif;
    color: #fff;
    font-weight: normal;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 1px;
    transition: color 400ms ease-in-out, opacity 400ms ease-in-out;
}

#main_slideshow_pagination .page_numbers {
    clear: both;
    text-align: center;
    white-space: nowrap;
    padding: 8px 0;
}

#main_slideshow_pagination .page_numbers div {
    display: inline-block;
    padding: 0 2px;
}

#main_slideshow_pagination .prev {
    margin: 0 auto;
    height: 47px;
    width: 7px;
    width: 100%;
    background: url('../images/arrow_up.png') center center no-repeat;
    background-size: 7px auto;
    cursor: pointer;
}

#main_slideshow_pagination .next {
    margin: 0 auto;
    height: 47px;
    width: 7px;
    width: 100%;
    background: url('../images/arrow_down.png') center center no-repeat;
    background-size: 7px auto;
    cursor: pointer;
}

#main_slideshow_progress {
    position: absolute;
    right: 0;
    z-index: 1001;
    top: 50%;
    margin: -85px 0 0;
    height: 200px;
    width: 70px;
    font-family: Calibre, Apercu_Pro, serif;
    color: #fff;
    font-weight: normal;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 1px;
    transition: color 400ms ease-in-out, opacity 400ms ease-in-out;
    display: none;
}

#main_slideshow_progress .bar {
    position: absolute;
    top: 25px;
    bottom: 65px;
    left: 34px;
    width: 1px;
}

#main_slideshow_progress .bar:before {
    position: absolute;
    z-index: 1;
    content: '';
    display: block;
    background: #fff;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.2;
    transition: background 400ms ease-in-out;
}

#main_slideshow_progress .bar .progress {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 1px;
    height: 0;
    background: #fff;
    transition: height 0 ease-in-out, background 400ms ease-in-out;
}

#main_slideshow_progress .number {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
}

#main_slideshow_progress .total {
    position: absolute;
    z-index: 2;
    bottom: 40px;
    left: 0;
    width: 100%;
}

#main_slideshow_progress .pause {
    cursor: pointer;
    position: absolute;
    z-index: 2;
    bottom: 10px;
    left: 0;
    width: 100%;
    height: 15px;
    font-family: Apercu_Pro, serif;
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 1px;
    transition: opacity 400ms ease-in-out;
    overflow: hidden;
    opacity: 0;
}

#main_slideshow_progress:hover .pause {
    opacity: 1;
}

#main_slideshow_progress .pause:after {
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(255, 255, 255, 0);
    border-left-color: white;
    border-width: 3px;
    text-indent: 0;
    display: block;
    position: absolute;
    right: 0;
    left: 50%;
    top: 50%;
    margin-left: -3px;
    transition: opacity 200ms ease-in-out;
    opacity: 0;
}

#main_slideshow_progress.paused .pause {
    text-indent: -9999px;
}

#main_slideshow_progress.paused .pause:after {
    opacity: 1;
}

#main_slideshow_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    z-index: 50;
}

#main_slideshow {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}

#main_slideshow .slide {
    width: 100%;
    position: absolute;
    z-index: auto !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

#main_slideshow .slide .content {
    width: 100%;
    position: absolute;
    z-index: 1002;
    top: 0;
    left: 0;
    bottom: 0;
    box-sizing: border-box;
    opacity: 1;
    transition: transform 400ms ease-in-out, opacity 400ms ease-in-out;
    cursor: pointer;
}

#main_slideshow .slide.no-link .content {
    cursor: default;
}

#main_slideshow .slide .content .content_header {
    position: absolute;
    top: 50%;
    left: 10vw;
    right: 10vw;
    transform: translateY(-50%);
    box-sizing: border-box;
    padding: 0;
}

#main_slideshow .slide .content .content_header .pre-title {
    transition: opacity 400ms ease-in-out, transform 400ms cubic-bezier(.45, 0, .27, 1);
    transform: translate3d(0, -100px, 0);
    opacity: 0;
    text-align: center;
    /*margin-top: -15px;*/
    /* mix-blend-mode: exclusion; */
}

#main_slideshow .slide .content .content_header .faux_h1 {
    margin: 0 0 20px;
    width: 100%;
    max-width: 100%;
    min-height: 215px;
    padding: 0;
    font-size: 275px;
    line-height: 275px;
    letter-spacing: -8px;
    text-align: center;
    line-height: 0 !important;
    transform: translateY(50%);
    height: 0;
}

#main_slideshow .slide .content .content_header .pre-title .text_animate {
    display: block;
    white-space: nowrap;
}

#main_slideshow .slide .content .content_header .top_caption {
    width: 100%;
    font-family: Calibre, Apercu_Pro, serif;
    color: #fff;
    font-weight: bold;
    line-height: 1.8rem;
    font-size: 1.5rem;
    position: relative;
    box-sizing: border-box;
    min-height: 115px;
    opacity: 0;
    margin: 0;
    padding: 20px 0 0;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out, color 800ms ease-in-out;
}

#main_slideshow .slide .content .content_header .top_caption .top_caption_additional {
    padding-top: 10px;
    margin-top: 10px;
    position: relative;
}

#main_slideshow .slide .content .content_header .top_caption .top_caption_additional:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: '.';
    text-indent: -9999px;
    height: 2px;
    border-bottom: 1px solid #fff;
    width: 0;
    transition: width 1100ms cubic-bezier(.65, .06, .19, .96), border 400ms ease-in-out;
    vertical-align: middle;
    margin-top: -4px;
}

#main_slideshow .slide .content .description {
    display: block;
    clear: both;
    float: right;
    font-size: 1.4rem;
    line-height: 38px;
    font-weight: normal;
    margin-right: 40px;
    right: 0;
    max-width: 300px;
    width: 100%;
    padding-left: 55px;
    transform: translate3d(0, 0, 0);
    opacity: 0;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out, color 800ms ease-in-out;
}

#main_slideshow .slide .content .description .description_inner {
    display: block;
    clear: both;
}

#main_slideshow .slide .content .button {
    transition: opacity 400ms ease-in-out;
    opacity: 0;
}

#main_slideshow .slide .content .description .button {
    display: block;
    clear: both;
    margin-top: 30px;
    transition: opacity 400ms ease-in-out;
}

#main_slideshow .slide .image_hover_area {
    width: 55vh;
    height: 78vh;
    position: absolute;
    top: 12vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1002;
    opacity: 0;
    transform: translate(-50%, 40px);
    transition: opacity 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
}

.device-canvas-fallback-mode #main_slideshow .slide .image_hover_area {
    display: none;
}

#main_slideshow .slide .image {
    width: 55vh;
    height: 78vh;
    position: absolute;
    top: 12vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1001;
    opacity: 0;
    transform: translate(-50%, 40px);
    transition: opacity 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
}

#main_slideshow .slide .image_inner {
    width: 100%;
    position: absolute;
    display: none;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

#main_slideshow .slide .image_media,
#main_slideshow .slide .video_background {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}


/* Slideshow fallback mode */

#homepage_overall_container.device-canvas-fallback-mode {}

#homepage_overall_container.device-canvas-fallback-mode #main_slideshow .slide .image {
    display: block;
    visibility: visible;
    z-index: 999;
}

#homepage_overall_container.device-canvas-fallback-mode #main_slideshow .slide .image_inner {
    display: block;
}

#main_slideshow .media_wrapper .video_background video {
    display: block;
}


/* Slideshow slide type variants */


/* Full bleed */

#main_slideshow .slide.slide_layout_2 {}

#main_slideshow .slide.slide_layout_2 .image_hover_area {
    height: 60vh;
}

#main_slideshow .slide.slide_layout_2 .image {
    width: 105vw;
    height: 105vh;
    top: 0;
}

#main_slideshow .slide.slide_layout_2 .image:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.2);
}

#main_slideshow .slide.slide_layout_2 .content .content_header {
    text-align: center;
}

#main_slideshow .slide.slide_layout_2 .content .content_header .short_prefix {
    /*
                                font-size: 1.9rem;
                                line-height: 2.2rem;
                                font-weight: bold;
                                letter-spacing: 0.2px;
                            */
    text-align: center;
    width: 100%;
    font-weight: bold;
    font-size: 1.2rem;
    font-size: 1.1rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin: 0 0 40px;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out, color 800ms ease-in-out;
    opacity: 0;
}

#main_slideshow .slide.slide_layout_2 .content .content_header .short_prefix div {
    display: inline-block;
    padding: 0 15px;
}

#main_slideshow .slide.slide_layout_2 .content .content_header .short_prefix:after {
    display: inline-block;
    content: '.';
    text-indent: -9999px;
    height: 2px;
    border-bottom: 1px solid #fff;
    width: 0;
    transition: width 1100ms cubic-bezier(.65, .06, .19, .96), border 400ms ease-in-out;
    vertical-align: middle;
    margin-top: -4px;
    margin-left: 15px;
}

#main_slideshow.slide-begin .slide.slide_layout_2 .content .content_header .short_prefix:after {
    width: 100px;
}

#main_slideshow .slide.slide_layout_2 .content .content_header .faux_h1 {
    font-size: 6.5rem !important;
    line-height: 6.5rem !important;
    letter-spacing: normal !important;
    height: auto !important;
    transform: none;
    min-height: 0;
}

#main_slideshow .slide.slide_layout_2 .content .content_header .pre-title .main_subtitle {
    font-weight: normal;
    font-size: 5.9rem !important;
}

#main_slideshow .slide.slide_layout_2 .content_header .button {
    display: inline-block;
    float: none;
    margin: 30px auto 0;
}

#main_slideshow .slide.slide_layout_2 .content_header .link {
    margin: 30px auto 0;
}

#main_slideshow .slide.slide_layout_2 .content .description {
    padding: 60px 0 0;
    float: none;
    margin: 0 auto;
    text-align: center;
    max-width: 400px;
    position: absolute;
    bottom: 40px;
    margin: 0 auto;
    left: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

#main_slideshow .slide.slide_layout_2 .content .description .description_inner {
    box-sizing: border-box;
    text-align: left;
    padding: 0 50px 0 0;
    max-width: 400px;
    float: left;
    display: none !important;
    /* Removed for now */
}

#main_slideshow .slide.slide_layout_2 .content .description .button {
    float: none;
    margin: 30px auto 0;
    display: inline-block;
}

#main_slideshow .slide.slide_layout_2 .content .description .link {
    float: none;
    margin: 30px auto 0;
    display: inline-block;
    font-size: 1.4rem;
}


/* Slideshow permanent variants */

.cycle-single-slide #main_slideshow_progress {
    display: none;
}

.cycle-single-slide #main_slideshow_pagination {
    display: none;
}


/* Slideshow cycle active functions */

#main_slideshow.slide-active {}

.slide-active #main_slideshow_progress .bar .progress {
    height: 100%;
    transition: height 4120ms linear, background 400ms ease-in-out;
}

#main_slideshow .slide.cycle-slide .content .content_header .pre-title {
    transform: translate3d(0, 0, 0);
    transition: opacity 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
    opacity: 1;
}


/* Slideshow animation start */

#main_slideshow.slide-begin {}

#main_slideshow.slide-begin .slide .content .content_header .pre-title,
#main_slideshow.slide-begin .slide .content .description,
#main_slideshow.slide-begin .slide .content .button,
#main_slideshow.slide-begin .slide .content .content_header .top_caption,
#main_slideshow.slide-begin .slide .content .content_header .short_prefix {
    opacity: 1;
}

#main_slideshow.slide-begin .slide .content .content_header .top_caption .top_caption_additional:after {
    width: 150px;
}

#homepage_overall_container #main_slideshow.slide-begin .slide.cycle-slide-active .image {
    opacity: 1;
    transform: translate(-50%, 0);
    transition: opacity 400ms ease-in-out;
}

#main_slideshow.slide-begin2 {}


/* Slideshow animation end */

#main_slideshow .slide.slide-end {}

#main_slideshow.slide-end .slide .top_caption,
#main_slideshow.slide-end .slide .content .content_header .short_prefix {
    opacity: 0 !important;
    transition: opacity 200ms ease-in-out, transform 400ms cubic-bezier(.45, 0, .27, 1);
}

#main_slideshow.slide-end .slide.slide_layout_2 .content .content_header:after {
    width: 0;
    opacity: 0;
    transition: width 200ms cubic-bezier(.65, .06, .19, .96), opacity 200ms ease-in-out;
}

#main_slideshow.slide-end .slide .content .content_header .pre-title {
    transform: translate3d(0, 40px, 0) !important;
    opacity: 0 !important;
    transition: opacity 200ms ease-in-out, transform 400ms cubic-bezier(.45, 0, .27, 1);
}

#main_slideshow.slide-end .slide .content .description {
    /*transform: translate3d(0, 120px, 0) !important;*/
    opacity: 0 !important;
    transition: opacity 200ms ease-in-out, transform 400ms cubic-bezier(.45, 0, .27, 1);
}

#homepage_overall_container #main_slideshow.slide-end .slide .image {
    opacity: 0 !important;
    transform: translate(-50%, 0px) scale(0.8) !important;
    transform-origin: 50% 50% !important;
    transition: opacity 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1) !important;
}

#homepage_overall_container.slideshow-vertical #main_slideshow.slide-end .slide .image {
    opacity: 0 !important;
    transform: translate(-50%, 0px) scale(1.3) !important;
    transition: opacity 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1) !important;
}


/* Slideshow track interactions */

#homepage_overall_container.page-track-beyond-placeholder-threshold {}

#homepage_overall_container .scroll-indicator {
    opacity: 0;
}

#homepage_overall_container.page-track-beyond-placeholder-threshold .scroll-indicator {
    opacity: 1;
}

#homepage_overall_container.page-track-beyond-placeholder-threshold #main_slideshow_progress,
#homepage_overall_container.page-track-beyond-placeholder-threshold #main_slideshow_pagination,
#homepage_overall_container.page-track-beyond-placeholder-threshold #main_slideshow .slide .content .description .button,
#homepage_overall_container.page-track-beyond-placeholder-threshold #main_slideshow .slide .content .button {
    opacity: 0;
}


/* Vertical slideshow mode only */

#homepage_overall_container.slideshow-vertical #main_slideshow_wrapper:before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 300px;
    content: '';
    display: block;
    z-index: 1002;
    opacity: 0.7;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.65+0,0+87 */
    background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 87%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 87%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 87%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000', GradientType=1);
    /* IE6-9 */
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav {
    display: block;
    z-index: 1003;
    right: auto;
    left: 0;
    width: 100%;
    position: fixed;
    top: 0;
    left: 52px;
    transform-origin: 0%;
    transform: rotate(90deg);
    width: 100vh;
    text-align: right;
    font-family: Calibre, Sans-Serif;
    font-weight: bold;
    /*font-weight: normal;*/
    color: #ffffff;
    font-size: 1.4rem;
    line-height: 2.0rem;
    margin: 0;
    transition: opacity 400ms ease-in-out;
    background: #090909;
    left: 0;
    height: 160px;
    margin-top: -160px;
    width: calc(100vh + 160px);
    padding-top: 38px;
    box-sizing: border-box;
    background: none;
    background: #090909;
    background: rgba(0, 0, 0, 0.6);
    left: 26px;
}

#homepage_overall_container.cycle-single-slide #main_slideshow_nav {
    display: none;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav.nav-hidden {
    display: none;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    white-space: nowrap;
    text-align: center;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li {
    display: inline-block;
    margin: 0 20px 0 0;
    border-bottom: 2px solid transparent;
    transition: border 300ms ease-in-out;
    cursor: pointer;
    transition: transform 400ms cubic-bezier(.45, 0, .27, 1), opacity 400ms ease-in-out;
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li.no-label {
    margin: 0;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li:nth-of-type(2) {
    transition-delay: 50ms;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li:nth-of-type(3) {
    transition-delay: 100ms;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li:nth-of-type(4) {
    transition-delay: 150ms;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li:nth-of-type(5) {
    transition-delay: 200ms;
}

.footer-visible #homepage_overall_container.slideshow-vertical #main_slideshow_nav {}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li a {
    display: block;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li a:after {
    display: block;
    clear: both;
    content: '';
    width: 0;
    margin: 6px 0 0;
    border-bottom: 1px solid #fff;
    transition: width 300ms ease-in-out, border 300ms ease-in-out;
}

.device-desktop #homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li a:hover:after {
    width: 100%;
    transition: width 300ms ease-in-out;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_nav ul li.active a:after {
    width: 100%;
    border-color: #ffffff;
}

#homepage_overall_container.slideshow-vertical #main_slideshow_pagination {
    display: none !important;
}


/*  Artists
    ---------------------------------------------------------------------------------- */

.feature_panels section.scroll_section_artist_track {
    padding: 0;
    width: 100%;
}


/*
    .section-artists.page-param-233-collins-obijiaku .artwork_detail .tools > div:first-child,
    .section-artists.page-param-233 .artwork_detail .tools > div:first-child {
        margin: 0;
    }
    .section-artists.page-param-233-collins-obijiaku .artwork_detail .tools > div .enquire_link,
    .section-artists.page-param-233 .artwork_detail .tools > div .enquire_link {
        display: none !important;
    }
    */


/* Exhibitions
    ---------------------------------------------------------------------------------- */

.exhibition-list-wrapper {
    padding: 0 0 75px;
}

.exhibition-list-wrapper .scroll_section.scroll_section_panels.section_index_1>.inner,
.exhibition-list-wrapper .scroll_section.scroll_section_standard.section_index_1>.inner {
    padding-top: 0 !important;
}


/* Blog / latest
    ---------------------------------------------------------------------------------- */

@media screen and (min-width: 901px) {
    .page-blog .faux_h1 {
        font-size: 80px;
        line-height: 80px;
    }
    .page-blog h1 {
        font-size: 80px;
        line-height: 80px;
    }
    #hero .slide .content .content_header .subtitle {
        font-size: 2.6rem;
        line-height: 3rem;
        padding-top: 20px;
    }
}


/*  Contact
    ---------------------------------------------------------------------------------- */

.subsection-contact-content h3 {
    font-size: 2.8rem;
    line-height: 2.6rem;
    overflow: hidden;
}

.subsection-contact-content h3.prelude_heading:after {
    margin-left: 10px;
}

.subsection-contact-content .contact-wrapper-form {
    margin: 0 0 50px;
}

.subsection-contact-content .contact-wrapper-form .terms_and_conditions {
    clear: both;
    padding: 20px 0 0;
}

.subsection-contact-content .contact-wrapper-locations {
    margin: 0 0 40px;
}

.subsection-contact-content .contact-wrapper-locations .columns .column:nth-of-type(1) {
    width: 80%;
}

.subsection-contact-content .contact-wrapper-locations .columns .column:nth-of-type(2) {
    width: auto;
    max-width: 20%;
    float: right;
}

.subsection-contact-content .contact-wrapper-additional {}

.subsection-contact-content .contact-wrapper-additional .columns .column {
    width: 100%;
}

.subsection-contact-content .columns {
    font-size: 1.4rem;
    line-height: 2rem;
}

.subsection-contact-content .social_links_item {
    clear: both;
    float: none;
}

.subsection-contact-content .social_links_item a {
    display: block;
    clear: both;
    height: auto;
    width: auto;
    text-indent: 0;
}

.subsection-contact-content .social_links_item .social_media_icon {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-width: 1px 1px 0 1px;
    padding: 8px;
    width: 60px;
    height: 60px;
    box-sizing: border-box;
    display: inline-block;
    float: none;
    vertical-align: middle;
    margin: 0;
    transition: background 400ms ease-in-out, color 400ms ease-in-out;
}

.content-type-reversed .subsection-contact-content .social_links_item .social_media_icon {
    border-color: rgba(0, 0, 0, 0.1);
}

.subsection-contact-content .social_links_item a:hover .social_media_icon {
    background: rgba(255, 255, 255, 1);
}

.subsection-contact-content .social_links_item a:hover .social_media_icon:after {
    color: #151515;
}

.content-type-reversed .subsection-contact-content .social_links_item a:hover .social_media_icon {
    background: rgba(0, 0, 0, 0.1);
}

.content-type-reversed .subsection-contact-content.social_links_item a:hover .social_media_icon:after {
    color: #fff;
}

.subsection-contact-content .social_links_item:last-child .social_media_icon {
    border-width: 1px 1px 1px 1px;
}

.subsection-contact-content .social_links_item .social_media_icon:after {
    line-height: 43px;
}

.subsection-contact-content .social_links_item .social_media_label {
    display: inline-block;
    display: none;
    vertical-align: middle;
    color: rgba(255, 255, 255, 0.5);
}

#map_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 525px;
    width: 100%;
    overflow: hidden;
}

#map_area {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -25px;
    width: 100%;
}


/*  Error page
    ---------------------------------------------------------------------------------- */

.section-error .scroll-container .scroll-container-inner {
    min-height: 100vh;
}

.section-error .scroll-container .scroll-container-inner #main_content {
    min-height: 100vh;
    position: static;
}

.section-error .content_body .description {
    margin: 0 0 40px;
}

.section-error #header {
    right: auto;
    bottom: 0;
    width: 40%;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.05)!important;
}

.section-error #header:before {
    display: none;
}

.section-error #logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.section-error #logo a:before,
.section-error #logo a:after {
    animation: none !important;
    width: 30px !important;
    height: 26px !important;
}

body.section-error #logo:after {
    transform: scale(1) !important;
}

.section-error .subsection-cascading-content {
    height: 100vh;
    position: relative;
}

.section-error .content_basic_layout {
    position: absolute;
    top: 50%;
    left: 40%;
    width: 60%;
    padding: 50px;
    transform: translateY(-50%);
}

.section-error .content_basic_layout .content_body {
    max-width: 350px;
    margin: 0 auto;
}

.section-error .content_basic_layout .prelude {
    width: 100%;
}

.section-error .faux_footer {
    display: none !important;
}


/*  Artists
    ---------------------------------------------------------------------------------- */

.scroll_section_artist_list_combined .column_list {
    margin: 0 0 40px;
    padding-top: 30px;
}

.scroll_section_artist_list_combined .column_list ul {
    margin-right: -15px;
}

.subsection-artist-list-standard .scroll_section.scroll_section_panels.section_index_1>.inner,
.subsection-artist-list-standard .scroll_section.scroll_section_standard.section_index_1>.inner {
    padding-top: 0 !important;
}

.subsection-artist-list-standard .page-track-scroll-container .page-track-item .image {
    height: 62vh;
}

.hero-section-active .subsection-artist-list-standard #feature_panel_section_nav ul li {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.subsection-artist-list-standard #feature_panel_section_nav ul li a {
    font-size: 1.5rem;
}

.hero-section-active .subsection-artist-list-standard #feature_panel_section_nav,
.hero-section-active .subsection-artist-list-standard #feature_panel_section_nav * {
    pointer-events: auto;
}

.scroll-section-setup .subsection-artist-list-standard #feature_panel_section_nav ul li {
    opacity: 0;
    transform: translate3d(0, -70px, 0);
}

.column_list {
    display: block;
    width: 100%;
    /* IMPORTANT - needs width 100% for IE!!!  but this is breaking the rhs margin now...
        margin: 0 -30px 0 0;*/
    margin: 0;
}

.column_list ul {
    padding: 0;
    list-style: none;
    display: block;
    /*
            -webkit-column-count: 4;
            -moz-column-count: 4;
            column-count: 4;
            */
    width: 25%;
    padding-right: 30px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    transform: translate3d(0, 120px, 0);
    opacity: 0;
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
}

.column_list ul.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.column_list ul li {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    padding: 0 0 30px 0;
    font-size: 1.4rem;
    line-height: 1.5rem;
    font-weight: bold;
}

.column_list ul li a {
    display: block;
    width: 100%;
}

.image_list {
    display: block;
}

.image_list ul {
    margin: 0 -40px 0 0;
    padding: 0;
    list-style: none;
    display: block;
}

.image_list ul li {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    width: 33.33%;
    padding: 0 40px 85px 0;
    transform: translate3d(0, 50px, 0);
    opacity: 0;
}

.image_list ul li.animate-from-bottom {
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
}

.image_list ul li.animate-from-top {
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
    transform: translate3d(0, -50px, 0);
}

.image_list ul li.visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.image_list ul li .image {
    display: block;
    width: 100%;
    margin: 0 0 20px;
    position: relative;
}

.image_list ul li .image img {
    max-width: 100%;
    display: block;
}

.image_list ul li .image .video {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    overflow: hidden;
    z-index: 11;
    opacity: 0;
    -webkit-transition: opacity 0.2s linear;
    -moz-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
}

.image_list ul li.video-reveal .image .video {
    opacity: 1;
}

.image_list ul li .image video {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    font-family: 'object-fit: cover;';
}

.device-handheld .image_list ul li .image .video,
.device-handheld .image_list ul li .image video {
    display: none;
}

.image_list ul li h3 {
    width: 100%;
    clear: both;
    display: block;
    font-size: 2.4rem;
    line-height: 3.0rem;
    font-weight: bold;
    margin: 0 0 5px;
}

.image_list ul li .subtitle {
    margin: 0 0 5px;
}


/* Themes
    ---------------------------------------------------------------------------------- */


/* Reversed (light)
        ---------------------------------------------------------------------------------- */

body.content-type-reversed .scroll-container,
body.content-type-reversed-popup #popup_content,
.content-reversed {
    color: #151515;
}

body.content-type-reversed .scroll-container .scroll-container-inner {
    background: #fff;
}

body.content-type-reversed .scroll_section {
    background: #fff;
}

body.x-page-transition .scroll-container .scroll-container-inner,
body.x-page-transition .scroll_section {
    background: #222;
}

body.content-type-reversed input,
body.content-type-reversed textarea,
body.content-type-reversed select {
    color: #151515;
}

body.content-type-reversed input::placeholder,
body.content-type-reversed textarea::placeholder,
body.content-type-reversed select::placeholder {
    color: #151515;
}

body.content-type-reversed .page_enquiry_widget_field .page_enquiry_widget_submit.loading .loader svg .path {
    -webkit-animation: dash 1.5s ease-in-out infinite, color4 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color4 6s ease-in-out infinite;
}

body.content-type-reversed .page_enquiry_widget {
    background: #f8f8f8;
}


/* Trying out a different effect with a psudo element
        .scroll_section {
            position: relative;
        }
            .scroll_section:before {
                display: block;
                content: '';
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background: #fff;
                transform: translateY(-100vh);
                transition: transform 400ms cubic-bezier(.45,0,.27,1);
            }
            body.content-type-reversed .scroll_section:before {
                transform: translateX(0);
            }
            */

body.content-type-reversed .scroll-container h1,
body.content-type-reversed .scroll-container h2,
body.content-type-reversed .scroll-container h3,
body.content-type-reversed .scroll-container h4,
body.content-type-reversed .scroll-container h5,
body.content-type-reversed .scroll-container h6,
body.content-type-reversed-popup #popup_content h1,
body.content-type-reversed-popup #popup_content h2,
body.content-type-reversed-popup #popup_content h3,
body.content-type-reversed-popup #popup_content h4,
body.content-type-reversed-popup #popup_content h5,
body.content-type-reversed-popup #popup_content h6,
.content-reversed h1,
.content-reversed h2,
.content-reversed h3,
.content-reversed h4,
.content-reversed h5,
.content-reversed h6,
.content-reversed .link {
    color: #151515;
}

.content-reversed.artwork_detail {
    background: transparent;
}

.content-reversed .artwork_detail_main {
    background: #fff;
}

body.content-type-reversed .hero-section-not-visible #menu,
body.content-type-reversed .hero-section-not-visible #top_nav,
body.content-type-reversed #feature_panel_section_nav {
    color: #151515;
}

body.content-type-reversed .hero-section-not-visible #feature_panel_section_nav ul li a:after,
body.content-type-reversed .hero-section-not-visible #top_nav ul li a:after {
    border-color: #151515;
}


/* Protected path login
    ---------------------------------------------------------------------------------- */

#protected_path_login {
    position: relative;
    z-index: 99999;
    position: fixed;
    top: 0;
    overflow: auto;
    width: 100%;
    height: 100vh;
    box-sizing: border-box;
}

.protected_path_background_image {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    background: #111;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 1000ms ease-in-out;
}

#protected_path_login.protected_path_hide .protected_path_background_image {
    opacity: 0;
}

.protected_path_background_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    opacity: 0.5;
}

#protected_path_login>.inner {
    min-height: 100vh;
    width: 100%;
    padding: 160px 60px 60px;
    box-sizing: border-box;
}

#protected_path_login.protected_path_hide {}

#protected_path_login:after {
    content: '';
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    bottom: 0;
    background: #000;
    transition: transform 600ms cubic-bezier(.65, .06, .19, .96), opacity 1000ms ease-in-out;
}

#protected_path_login.protected_path_hide:after {
    opacity: 0;
}

#protected_path_login #protected_path_login_container {
    position: relative;
    z-index: 20;
}

#protected_path_login.protected_path_hide #protected_path_login_container {
    transition: transform 800ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
    opacity: 0;
    transform: translateY(200px);
}

#protected_path_login .inner>div {
    width: 300px;
    border: 1px solid #ccc;
    background: #f1f1f1;
    padding: 20px;
    margin: 0 auto;
}

#protected_path_login .error_container {
    clear: both;
}

#protected_path_login label {
    display: block;
    clear: both;
    color: #444;
    font-size: 18px;
    margin-bottom: 10px;
}

#protected_path_login #username,
#protected_path_login #password,
#protected_path_login .protected_path_field_row input[type="text"],
#protected_path_login .protected_path_field_row input[type="email"] {
    color: #111;
    font-weight: normal;
    width: 278px;
    font-size: 18px;
    margin-bottom: 10px;
    font-family: inherit;
}

#protected_path_login .protected_path_form_main_image {
    clear: both;
    margin: 0 0 20px;
}

#protected_path_login .protected_path_form_main_image img {
    display: block;
}

#protected_path_login .protected_path_form_description {
    clear: both;
    margin: 0 0 20px;
}

#protected_path_login .privacy_policy_form_msg {
    clear: both;
    margin: 20px 0 0;
}

#protected_path_login #protected_path_login_form {
    max-height: 1000px;
}

#protected_path_login.protected_path_loading #protected_path_login_form {
    opacity: 0;
    overflow: hidden;
    transition: max-height 600ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
    max-height: 0;
}

#protected_path_login.protected_path_loading.protected_path_checking_status #protected_path_login_form {
    transition: none;
}

#protected_path_login.protected_path_check_email #protected_path_login_form {
    opacity: 0;
    overflow: hidden;
    max-height: 0;
}

#protected_path_login_content {
    min-height: 70px;
    position: relative;
    clear: both;
}

#protected_path_login .protected_path_form_status {
    clear: both;
    width: 100%;
    box-sizing: border-box;
    opacity: 0;
    overflow: hidden;
    transition: max-height 600ms cubic-bezier(.65, .06, .19, .96), opacity 400ms ease-in-out;
    display: block;
    position: absolute;
    top: 0;
    pointer-events: none;
}

#protected_path_login .protected_path_form_status_inner {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #e1e1e1;
    background: #fff;
    padding: 20px;
    display: flex;
    align-items: center;
}

#protected_path_login.protected_path_loading .protected_path_form_status.protected_path_form_status_checking {
    max-height: 100px;
    opacity: 1;
}

#protected_path_login.protected_path_loading.protected_path_checking_status .protected_path_form_status.protected_path_form_status_checking {
    transition: none;
}

#protected_path_login .protected_path_form_status .loader_simple {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px 0 0;
}

#protected_path_login .protected_path_form_status .status_icon {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px 0 0;
    font-size: 26px;
    color: #91ca57;
    transition: transform 1000ms cubic-bezier(0, 1.77, .6, .99);
    transform: scale(0);
}

#protected_path_login .protected_path_form_status .status_message {
    display: inline-block;
    vertical-align: middle;
}

#protected_path_login .protected_path_form_status .status_message h4 {
    margin: 0 0 5px;
}

#protected_path_login .protected_path_form_status.protected_path_form_check_email {
    position: static;
    max-height: 0;
}

#protected_path_login.protected_path_check_email .protected_path_form_status.protected_path_form_check_email {
    max-height: 300px;
    opacity: 1;
}

#protected_path_login.protected_path_check_email .protected_path_form_status.protected_path_form_check_email .status_icon {
    transform: scale(1);
    transition-delay: 300ms;
}

#protected_path_login {}

#protected_path_login>.inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

#protected_path_login #container,
#protected_path_login #protected_path_login_container {
    max-width: 600px;
    width: 100%;
    border: none;
    background: #252525;
    border: 0;
    padding: 40px;
    margin: 0 auto;
}

#protected_path_login #protected_path_login_container {
    margin-bottom: 60px;
}

#protected_path_login h1 {
    margin: 0 0 25px;
    padding: 10px 0 0;
    font-size: 3.2rem;
    line-height: 4.2rem;
}

#protected_path_login .protected_path_form_main_image {
    margin-left: -20px;
    margin-right: -20px;
    height: 200px;
    overflow: hidden;
}

#protected_path_login .protected_path_form_main_image img {
    object-fit: cover;
    object-position: center center;
    display: block;
    height: 100%;
    width: 100%;
}

#protected_path_login .protected_path_field_row {
    width: 100%;
    float: left;
    border: 1px solid #ddd;
    margin: 0 0 15px;
    clear: both;
}

#protected_path_login label {
    display: block;
    clear: both;
    font-weight: 200;
    color: #585858;
    font-size: 1.25rem;
    float: left;
    width: 25%;
    padding: 10px;
    line-height: 42px;
    margin: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-right: 1px solid #ddd;
    display: none;
}

#protected_path_login #username,
#protected_path_login #password,
#protected_path_login .protected_path_field_row input[type="text"],
#protected_path_login .protected_path_field_row input[type="email"] {
    border: 0;
    padding: 10px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    -webkit-appearance: none;
    width: 75%;
    width: 100%;
    padding: 8px 16px;
    font-size: 1.3rem;
    line-height: 3.8em;
    letter-spacing: 0.5px;
    float: left;
    outline: none;
    margin: 0;
}

#protected_path_login .protected_path_field_row input::-webkit-input-placeholder {
    color: #666;
}

#protected_path_login .error_container {
    border: 1px solid #FFE000;
    background: #FFF9CB;
    color: #DD9700;
    font-weight: normal;
    margin: 0 0 15px;
    padding: 10px;
    display: block;
    clear: both;
}

#protected_path_login .button {
    margin-top: 10px;
}

#protected_path_login .link {
    float: right;
    padding: 21px 0 0;
}

#protected_path_buttons_container {
    float: left;
    width: 100%;
    margin: 0 0 20px;
}


/* ------------------------------------------------------------------------
---------------------------------------------------------------------------
------------- List preview vertical slider
---------------------------------------------------------------------------
-------------------------------------------------------------------------*/

.list-preview-scroll-container {
    width: 100%;
    min-height: 100vh;
    clear: both;
    display: block;
    position: relative;
}

.list-preview-track-list {
    max-width: 1680px;
    width: 100%;
    padding: 100px 150px 100px;
    margin: 0 auto;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    transition: transform 800ms cubic-bezier(.45, 0, .27, 1);
}


/*body.content-overlay-open .list-preview-track-list,*/

body.content-overlay-open .scroll-container-inner {
    transform: translate3d(-100px, 0, 0);
}

body.content-overlay-open #feature_panel_section_nav {
    opacity: 0;
}

.list-preview-track-list>.inner {
    margin-right: -75px;
}

.list-preview-track-list .content {
    display: block;
    width: 66.66%;
    padding: 0 75px 0 0;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.list-preview-track-list .content .content_inner {
    display: block;
    position: relative;
}

.list-preview-track-list .content .content_inner:after {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    position: absolute;
    right: 0;
    bottom: 0;
    content: '';
    display: block;
    width: 100vw;
}

.list-preview-track-list .content .item {
    position: relative;
    padding: 28px 0 25px 0;
    transition: opacity 400ms ease-in-out;
}

.list-preview-track-list .content .item .inner {
    transition: opacity 400ms ease-in-out;
}

.list-preview-track-list.item-preview-active .content .item .inner {
    opacity: 0.4;
}

.list-preview-track-list.item-preview-active .content .item.active .inner {
    opacity: 1;
}

.list-preview-track-list .content .item:after {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    position: absolute;
    right: 0;
    top: 0;
    content: '';
    display: block;
    width: 100vw;
}

.content-type-reversed .list-preview-track-list .content .item:after {
    border-color: rgba(0, 0, 0, 0.1);
}

.list-preview-track-list .content .item .status_divider {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-50%);
    transition: opacity 400ms ease-in-out;
}

.list-preview-track-list.item-preview-active .content .item .status_divider {
    opacity: 0;
}

.list-preview-track-list .content .item>.inner {
    padding: 0 0 0 30px;
    position: relative;
    opacity: 0;
    transform: translateX(-80px);
    transition: transform 4000ms cubic-bezier(.18, 1, .21, 1), opacity 2500ms cubic-bezier(.18, 1, .21, 1);
}

.list-preview-track-list .content .item.visible>.inner {
    opacity: 1;
    transform: translateX(0);
}

.list-preview-track-list .content .item h2 {
    font-size: 2.3rem;
    line-height: 2.8rem;
    margin: 0 0 5px;
}

.list-preview-track-list .content .item .subtitle {
    margin: 0;
}


/*
                            .list-preview-track-list .content .item.exhibition-status-current,
                            .list-preview-track-list .content .item.exhibition-status-forthcoming {
                                padding: 33px 0 35px 0;
                            }
                                .list-preview-track-list .content .item.exhibition-status-current h2,
                                .list-preview-track-list .content .item.exhibition-status-forthcoming h2 {
                                    font-size: 4.2rem;
                                    line-height: 5.0rem;
                                }
                                .list-preview-track-list .content .item.exhibition-status-past .inner {
                                    opacity: 0.4;
                                }
                            */

.list-preview-image {
    position: absolute;
    top: 0;
    right: 0;
    float: right;
    width: 33.33%;
    min-height: 100vh;
    padding: 100px 150px 100px 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.within_viewport .list-preview-image {
    position: fixed;
}

.above_viewport .list-preview-image {
    position: absolute;
    bottom: 0;
    top: auto;
}

.list-preview-image .list-preview-image-items {
    position: absolute;
    top: 100px;
    left: 0;
    right: 150px;
    top: 100px;
    bottom: 100px;
}

.list-preview-image .list-preview-image-items .item {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: transform 2000ms cubic-bezier(.18, 1, .21, 1), opacity 2000ms cubic-bezier(.18, 1, .21, 1);
}

.list-preview-image .list-preview-image-items .item.active {
    display: block;
}

.list-preview-image .list-preview-image-items .item .image {
    margin: 0 0 30px;
    overflow: hidden;
    height: 62vh;
    opacity: 0;
    transition: opacity 2000ms cubic-bezier(.18, 1, .21, 1);
}

.list-preview-image .list-preview-image-items .item.animate.animate_out .image {
    opacity: 0;
    transition: opacity 1000ms cubic-bezier(.18, 1, .21, 1);
}

.list-preview-image .list-preview-image-items .item.animate .image {
    opacity: 1;
}

.list-preview-image .list-preview-image-items .item.animate.animate_out .image {}

.list-preview-image .list-preview-image-items .item .image:after {
    content: '';
    display: none;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #252525;
    transition: transform 800ms cubic-bezier(.45, 0, .27, 1);
    transform: scaleX(1);
    transform-origin: 0 0;
}


/*
                                .list-preview-image .list-preview-image-items .item.animate .image:after {
                                    transform: scaleX(0);
                                }
                                .list-preview-image .list-preview-image-items .item.animate.animate_out .image:after {
                                    transform-origin: 100% 0;
                                    transform: scaleX(1);
                                    transition: transform 400ms cubic-bezier(.45,0,.27,1);
                                }
                    */

.list-preview-image .list-preview-image-items .item img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    z-index: 1;
    position: relative;
    display: block;
    transition: transform 800ms cubic-bezier(.45, 0, .27, 1);
    transform: scale(1.2, 1.2);
}

.list-preview-image .list-preview-image-items .item.animate img {
    transform: scale(1, 1);
}

.list-preview-image .list-preview-image-items .item .video {
    opacity: 0;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: opacity 0.2s linear;
    -moz-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    overflow: hidden;
}

.list-preview-image .list-preview-image-items .item .video-reveal .video {
    opacity: 1;
}

.list-preview-image .list-preview-image-items .item .video video {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    font-family: 'object-fit: cover;';
}

.list-preview-image .list-preview-image-items .item .content {
    width: 100%;
    clear: both;
}

.list-preview-image .list-preview-image-items .item .content h2 {
    font-size: 23px;
    line-height: 28px;
    margin: 0 0 5px;
}


/* ------------------------------------------------------------------------
---------------------------------------------------------------------------
------------- Horizontal slider
---------------------------------------------------------------------------
-------------------------------------------------------------------------*/


/* Page track list
    ----------------------------------------------------------- */

.page-track-wrapper {
    display: block;
    width: 100%;
    height: 100vh;
    position: relative;
    clear: both;
}

.scrolling .page-track-item {
    pointer-events: none;
}

.page-track-item .video {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    overflow: hidden;
    z-index: 11;
    opacity: 0;
    -webkit-transition: opacity 0.2s linear;
    -moz-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
}

.page-track-item .video-reveal .video {
    opacity: 1;
}

.page-track-item img {
    position: relative;
    z-index: 10;
}

.site-wrapper {
    height: 100vh;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

.page-track-scroll-container {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    z-index: 100;
}

.page-track-scroll-container .progress-track {
    content: '';
    height: 6px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    display: block;
    background: #3333ED;
    z-index: 99999999;
    transform: scaleX(0);
    transform-origin: left;
    -webkit-transition: transform 0.2s linear;
    -moz-transition: transform 0.2s linear;
    transition: transform 0.2s linear;
}

.page-track-scroll-container .page-track {
    position: relative;
    /*overflow-x: auto;
            overflow-y: hidden;*/
    background: transparent;
    height: 100%;
    /*touch-action: pan-y;*/
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    font-family: Calibre;
    font-weight: normal;
}


/*.page-track-scroll-container .page-track.page-track-left {
                overflow-y: visible;
                overflow-x: visible;
            }*/

.records_list.image_track.clearwithin {
    height: 100vh;
    width: 100%;
}

.records_list.image_track::before,
.records_list.image_track::after {
    content: '';
    position: fixed;
    z-index: 102;
    display: block;
    height: 100vh;
    pointer-events: none;
    width: 15vw;
}

.page-track-scroll-container .page-track td {
    vertical-align: top;
    text-align: left;
    line-height: inherit;
}

.item-label {
    position: absolute;
    left: -7px;
    top: 0;
}

.item-label-inner {
    transform: rotate(90deg);
    transform-origin: 0 0;
    position: absolute;
    color: #ffffff;
    font-size: 13px;
    font-weight: bold;
}

.label-number {
    padding-right: 10px;
    color: #aaa;
}

.page-track-list.animating .page-track.page-track-right,
.page-track-list.animating .page-track.page-track-left {
    -webkit-transition: transform 0.8s cubic-bezier(.18, 1, .21, 1);
    -moz-transition: transform 0.8s cubic-bezier(.18, 1, .21, 1);
    transition: transform 0.8s cubic-bezier(.18, 1, .21, 1);
}

body.dragging .page-track-list .page-track.page-track-right a {
    pointer-events: none;
}

body.dragging .cursor-area {
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}

body.dragging .page-track-list {
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}

.page-track-scroll-container .page-track-frame {
    overflow: hidden;
    position: absolute;
    height: 100vh;
    width: 100%;
    z-index: 100;
    padding: 0;
}

.page-track-scroll-container .page-track-frame.page-track-frame-text {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.page-track-scroll-container .slideshow-placeholder {
    width: 125vw;
}

.page-track-scroll-container .page-track-item {
    width: 22vw;
    width: auto;
    min-width: 200px;
    height: 100vh;
    padding: 0 80px 0 0;
    pointer-events: auto;
    /* box-sizing: border-box; */
    /* display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            justify-content: center;
            text-align: center; */
    position: relative;
}

.page-track-scroll-container .page-track-item.first {
    padding: 0 80px 0 150px;
}

.page-track-scroll-container td:last-child .page-track-item {
    padding-right: 150px;
}


/*.page-track-scroll-container .page-track-item-text {
            opacity: 0.1;
            -webkit-transition: opacity 0.8s cubic-bezier(.18, 1, .21, 1);
            -moz-transition: opacity 0.8s cubic-bezier(.18, 1, .21, 1);
            transition: opacity 0.8s cubic-bezier(.18, 1, .21, 1);
        }
        .page-track-scroll-container .page-track-item-text.active {
            opacity: 1.0;
        }
        */

.page-track-scroll-container .page-track-item.pull-down {
    padding: 23vh 15% 13vh 15%;
}

.page-track-scroll-container .page-track-item.pull-up {
    padding: 13vh 15% 23vh 15%;
}

.page-track-scroll-container .page-track-item {}

.page-track-scroll-container .page-track-item.skew-down {
    padding-top: 24vh;
    padding-bottom: 20vh;
}

.page-track-scroll-container .page-track-item.skew-up {
    padding-bottom: 27vh;
    padding-top: 13vh;
}

.page-track-scroll-container .page-track-item .inner {
    width: auto;
    max-width: 100%;
    display: inline-block;
    box-sizing: border-box;
    /*
            max-height: 100%;
            height: 100%;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            justify-content: center;
            text-align: center;
            */
    position: relative;
    display: block;
    padding-top: 50px;
    padding-bottom: 75px;
}

.page-track-scroll-container .page-track-item a {}

.page-track-scroll-container .image-wrapper {
    width: auto;
    max-height: 100%;
    max-width: 100%;
    z-index: 4;
    position: relative;
    display: inline-block;
    -webkit-animation-name: Floating;
    -webkit-animation-duration: 8s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-name: Floating;
    -moz-animation-duration: 8s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: ease-in-out;
    /* opacity: 0; */
    /*will-change: opacity;*/
}

.page-track-scroll-container .image-wrapper.visible {
    opacity: 1.0;
    -webkit-transition: opacity 0.5s ease-in-out;
    -moz-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out;
}

.page-track-scroll-container .page-track-item .image-outer {
    position: relative;
}

.page-track-scroll-container .page-track-item .item-overlay {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: -30px;
    transform: translateY(-50%);
    font-size: 40px;
    line-height: 45px;
    font-weight: bold;
}

.page-track-scroll-container .page-track-item .image {
    display: block;
    line-height: 0;
    margin-bottom: 20px;
    position: relative;
    z-index: 0;
    overflow: hidden;
    height: 57vh;
}

.page-track-scroll-container .image-wrapper img {
    float: none;
    touch-action: pan-y;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    height: 100%;
    max-width: none;
    width: auto;
}

.page-track-item.hidden-off-screen .image-wrapper img {
    visibility: hidden;
}

.page-track-scroll-container .image-wrapper video {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    font-family: 'object-fit: cover;';
}

.page-track-scroll-container .page-track-item h2 {
    font-size: 2.6rem;
    line-height: 3.2rem;
    margin: 0 0 5px;
}

.page-track-scroll-container .page-track-item .prelude {
    text-align: left;
    width: 100%;
    display: block;
    margin: 0 0 10px;
}

.page-track-scroll-container .page-track-item .subtitle {
    text-align: left;
    width: 100%;
    display: block;
    margin: 0 0 5px;
}

.page-track-scroll-container .page-track-item .title-wrapper {
    text-align: left;
    width: 100%;
    z-index: 5;
    position: relative;
    box-sizing: border-box;
    opacity: 0;
    -webkit-transition: opacity 0.1s ease-in-out;
    -moz-transition: opacity 0.1s ease-in-out;
    transition: opacity 0.1s ease-in-out;
}

.page-track-scroll-container .page-track-item .title-wrapper.visible {
    opacity: 1.0;
    -webkit-transition: opacity 0.5s ease-in-out;
    -moz-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out;
}

.page-track-scroll-container .page-track-item .year {
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transform: rotate(90deg) translate(50%, 50%);
    -moz-transform: rotate(90deg) translate(50%, 50%);
    -ms-transform: rotate(90deg) translate(50%, 50%);
    -o-transform: rotate(90deg) translate(50%, 50%);
    transform: rotate(90deg) translate(50%, 50%);
    color: #fff;
    position: absolute;
    left: -17px;
    top: -26px;
    font-family: '__Orator-Oblique__', "Courier New", Courier, sans-serif;
    font-size: 1.55rem;
    line-height: 2.0rem;
    font-weight: 200;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
    font-weight: 200;
    color: #FFFFFF;
    margin: 0;
}

.page-track-scroll-container .page-track-item .year-inner {
    opacity: 0;
    display: inline-block;
    transform: translate(-60px, 0);
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.page-track-scroll-container .page-track-item.active .year-inner {
    opacity: 1.0;
    transform: translate(0, 0);
}

.page-track-scroll {
    width: 120px;
    /*max-width: 250px;*/
    position: absolute;
    top: 0;
    bottom: 50px;
    z-index: 200;
    cursor: pointer;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    visibility: hidden;
}

.page-track-scroll:before {
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
    content: '';
    display: block;
}

.page-track-scroll:after {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 50%;
    right: 0;
    content: 'Scroll';
    display: block;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 1.5rem;
    text-align: center;
    margin-top: 10px;
    margin-left: -3px;
}

.page-track-scroll.page-track-scroll-prev {
    left: 0;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.65+0,0+100;Neutral+Density */
    background: -moz-linear-gradient(left, rgba(23, 23, 23, 0.65) 0%, rgba(23, 23, 23, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(23, 23, 23, 0.65) 0%, rgba(23, 23, 23, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(23, 23, 23, 0.65) 0%, rgba(23, 23, 23, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000', GradientType=1);
    /* IE6-9 */
    width: 220px;
}

.page-track-scroll.page-track-scroll-prev:after {
    display: none;
}

.page-track-scroll.page-track-scroll-next {
    right: 0;
    transition: opacity 400ms ease-in-out;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.65+100 */
    background: -moz-linear-gradient(left, rgba(23, 23, 23, 0) 0%, rgba(23, 23, 23, 0.65) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(23, 23, 23, 0) 0%, rgba(23, 23, 23, 0.65) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(23, 23, 23, 0) 0%, rgba(23, 23, 23, 0.65) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000', GradientType=1);
    /* IE6-9 */
}

.page-track-scroll.page-track-scroll-prev:before {
    background: url(../images/arrow_left.png) center center no-repeat;
    background-size: auto 7px;
}

.page-track-scroll.page-track-scroll-next:before {
    background: url(../images/arrow_right.png) center center no-repeat;
    background-size: auto 7px;
}

.page-track-scroll.page-track-scroll-next .cursor {
    margin-left: -90px;
}

.cursor {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
    display: none;
    pointer-events: none;
    cursor: none;
}

.cursor.hide,
.cursor-area:hover .cursor.hide {
    display: none;
    visibility: none;
}


/*.page-track-scroll:hover .cursor {
                display: block;
            }*/

.cursor-area {
    cursor: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.cursor-area:hover .cursor {
    display: block;
}

.cursor.cursor-down {
    margin-top: -90px;
    margin-left: -7px;
}


/*.cursor-area.hero-cursor {
                position: absolute;
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
            }*/

.scroll-prompt {
    position: fixed;
    width: 100%;
    bottom: 4vw;
    text-align: center;
    color: #aaa;
    text-transform: uppercase;
    font-size: 1.9rem;
    color: #3C3C3C;
    letter-spacing: .08rem;
    line-height: 6.9rem;
    bottom: 4vh;
    display: none;
    font-family: 'Fifty Regular', Sans-Serif;
    animation: scrollpulse 7s infinite;
}

@keyframes scrollpulse {
    0% {
        color: #1d1d1d;
    }
    50% {
        color: #555;
    }
    100% {
        color: #1d1d1d;
    }
}

.page-track-background-slides {
    position: fixed;
    z-index: 0;
    will-change: opacity;
}

.page-track-background-slide {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-size: cover;
    z-index: 0;
    pointer-events: none;
    opacity: 0;
    background-position: center;
    -webkit-transition: opacity 0.5s ease-in-out;
    -moz-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
}

.page-track-background-slide.visible {
    opacity: 0.11;
    -webkit-transition: opacity 1.5s ease-in-out;
    -moz-transition: opacity 1.5s ease-in-out;
    transition: opacity 1.5s ease-in-out;
}

.page-track-list-container {
    display: none;
    overflow: hidden;
}

.page-track-list-container .records_list ul li .content h2,
.page-track-list-container .subtitle,
.page-track-list-container .link.read_more_link {
    color: #fff;
}


/* Fallback mode --------------------- */

.page-track-wrapper.track-scroller-disabled {
    height: auto;
}

.track-scroller-disabled .page-track-scroll-container {
    height: auto;
}

.device-desktop .track-scroller-disabled .page-track-scroll-prev,
.device-desktop .track-scroller-disabled .page-track-scroll-next {
    visibility: visible;
    transition: opacity 400ms ease-in-out;
    opacity: 0;
}

.device-handheld .track-scroller-disabled.start .page-track-scroll-next {
    visibility: visible;
    opacity: 1;
    transition: opacity 400ms ease-in-out;
    pointer-events: none !important;
}

.device-handheld .page-track-scroll-container .image-wrapper img {
    pointer-events: none !important;
}

.device-desktop .page-track-wrapper.track-scroller-disabled:hover .page-track-scroll-prev,
.device-desktop .page-track-wrapper.track-scroller-disabled:hover .page-track-scroll-next {
    opacity: 1;
}

.device-desktop .page-track-wrapper.track-scroller-disabled.scrolled:not(.start) .page-track-scroll-prev,
.device-desktop .page-track-wrapper.track-scroller-disabled.scrolled:not(.start) .page-track-scroll-next,
.device-desktop .page-track-wrapper.track-scroller-disabled.start .page-track-scroll-prev {
    opacity: 0;
    pointer-events: none;
}

.device-desktop .page-track-wrapper.track-scroller-disabled.click-scrolled:not(.start) .page-track-scroll-prev,
.device-desktop .page-track-wrapper.track-scroller-disabled.click-scrolled:not(.start) .page-track-scroll-next {
    opacity: 1;
    pointer-events: auto;
}

.track-scroller-disabled .scroll-container .scroll-container-inner .page-track-scroll-container,
.track-scroller-disabled .scroll-container .scroll-container-inner .page-track-scroll-container *,
.scroll-container .scroll-container-inner .track-scroller-disabled .page-track-scroll-container,
.scroll-container .scroll-container-inner .track-scroller-disabled .page-track-scroll-container * {
    pointer-events: auto;
}

.track-scroller-disabled .page-track-scroll-container .page-track-item {
    height: auto;
}

.track-scroller-disabled .page-track-scroll-container .page-track {
    -webkit-user-drag: auto;
}

.track-scroller-disabled .records_list.image_track.clearwithin {
    height: auto;
    overflow: hidden;
}

.track-scroller-disabled .page-track-scroll-container .page-track-frame {
    height: auto;
    margin-bottom: -20px;
    /* Hides overflow:auto scrollbar */
    position: static;
}

.track-scroller-disabled .page-track-scroll-container .page-track-frame .page-track {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    padding-bottom: 20px;
    transform: none !important;
}

.scroll-indicator {
    position: absolute;
    bottom: 55px;
    left: 50%;
    height: 2px;
    background: rgba(255, 255, 255, 0.07);
    display: block;
    width: 170px;
    transform: translateX(-50%);
    transition: background 400ms linear, opacity 400ms ease-in-out;
}

.track-scroller-disabled .scroll-indicator {
    display: none !important;
}

.scroll-indicator-active-bar {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    display: block;
    width: 0;
}

.scroll-indicator-active-bar::after {
    content: '';
    position: absolute;
    top: 0;
    right: -18px;
    height: 100%;
    background: #fff;
    display: block;
    width: 36px;
    transition: background 400ms linear;
}

body.content-type-reversed .scroll-indicator {
    background: rgba(0, 0, 0, 0.07);
}

body.content-type-reversed .scroll-indicator-active-bar::after {
    background: #151515;
}


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


/* OVERLAYS
------------------------------------------------------------------- */

.splash-container,
.enquire-overlay,
.mailing-overlay,
.content-overlay,
.search-overlay,
.nav-overlay,
.filter-overlay {
    pointer-events: none;
    position: fixed;
    background: rgba(0, 0, 0, 0);
    top: 0;
    left: 0;
    z-index: 2004;
    height: 100vh;
    /* opacity: 0; */
    overflow: hidden;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    width: 100vw;
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: none;
}

body.cms-frontend-toolbar-active .splash-container,
body.cms-frontend-toolbar-active .enquire-overlay,
body.cms-frontend-toolbar-active .mailing-overlay,
body.cms-frontend-toolbar-active .content-overlay,
body.cms-frontend-toolbar-active .search-overlay,
body.cms-frontend-toolbar-active .nav-overlay,
body.cms-frontend-toolbar-active .filter-overlay {
    top: 28px;
}

body.cms-frontend-toolbar-active #popup_box .close {
    top: 58px;
}

.active-init .splash-container {
    display: flex;
}

.active-init .mailing-overlay,
.active-init .enquire-overlay,
.active-init .content-overlay,
.active-init .search-overlay,
.active-init .nav-overlay,
.active-init .filter-overlay {
    display: flex;
}

.splash-container.active,
.mailing-overlay.active,
.enquire-overlay.active,
.content-overlay.active,
.search-overlay.active,
.nav-overlay.active,
.filter-overlay.active {
    pointer-events: auto;
}

.splash-bg,
.overlay-bg {
    position: fixed;
    background: rgba(0, 0, 0, 0);
    top: 0;
    left: 0;
    z-index: 400;
    /* opacity: 0; */
    overflow: hidden;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    width: 100vw;
    left: 0;
    top: 0;
}

.overlay-bg {
    height: 0;
    background: #111;
    -webkit-transition: background 600ms, height 600ms cubic-bezier(.45, 0, .27, 1), width 600ms ease-in-out;
    transition: background 600ms, height 600ms cubic-bezier(.45, 0, .27, 1), width 600ms ease-in-out;
}

.overlay-bg.open {
    background: #111;
    height: 100vh;
    -webkit-transition: background .35s, height 300ms cubic-bezier(.45, 0, .27, 1), width 300ms cubic-bezier(.45, 0, .27, 1);
    transition: background .35s, height 300ms cubic-bezier(.45, 0, .27, 1), width 300ms cubic-bezier(.45, 0, .27, 1);
}

body.x-page-transition-active .nav-overlay.active .overlay-bg,
body.page-transition .nav-overlay.active .overlay-bg {
    height: 100vh !important;
    width: 0 !important;
    transition-delay: 400ms;
}

body.x-page-transition-active .nav-overlay.active .overlay-container-inner {
    visibility: visible;
    -webkit-transition: transform 600ms cubic-bezier(.45, 0, .27, 1);
    transition: transform 600ms cubic-bezier(.45, 0, .27, 1);
    transform: translateX(-100vw);
}

body.x-page-transition-active .nav-wrapper ul li {
    opacity: 1.0;
    transform: translateX(0);
}

.filter-reveal,
.nav-reveal,
.enquire-reveal,
.search-reveal {
    position: relative;
    z-index: 9999;
}

.overlay-close-button,
.mailing-close-button,
.filter-close-button,
.nav-close-button,
.enquire-close-button,
.search-close-button {
    color: #fff;
    position: absolute;
    top: 38px;
    right: 35px;
    border: 2px solid transparent;
    padding: 7px 0 9px 0;
    margin: 0 0 0 25px;
    z-index: 1200;
    cursor: pointer;
    font-size: 1.3rem;
    line-height: 2.0rem;
    font-family: Calibre, Sans-Serif;
    color: #ffffff;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    opacity: 0;
    transform: translate3d(200px, 0, 0);
    transition: transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
    -webkit-transform: translate3d(200px, 0, 0);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(.87, .17, .18, .85), opacity 0.8s ease-in-out;
}

.overlay.active .overlay-close-button,
.overlay.active .filter-close-button,
.overlay.active .nav-close-button,
.overlay.active .enquire-close-button,
.overlay.active .mailing-close-button,
.overlay.active .search-close-button {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
}

.overlay-close-button:after,
.filter-close-button:after,
.nav-close-button:after,
.mailing-close-button:after,
.enquire-close-button:after,
.search-close-button:after {
    display: none;
    content: '';
    position: absolute;
    top: 9px;
    right: 0;
    height: 17px;
    width: 17px;
    background: url(../images/close.png) 0 0 no-repeat;
    transition: background 400ms ease-in-out;
    background-size: 17px 17px;
}

.overlay-container-inner {
    visibility: hidden;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
    z-index: 1000;
    width: 100vw;
    padding: 150px 100px 100px;
    box-sizing: border-box;
}

.overlay.active .overlay-container-inner {
    visibility: visible;
}

.enquire-input-wrapper,
.enquire-contact-wrapper,
.search-wrapper,
.nav-wrapper,
.nav-contact-wrapper {
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    min-height: 400px;
    position: relative;
    padding-left: 35px;
    color: #fff;
    font-size: 15px;
}

.nav-wrapper {
    min-height: 0;
}

.filter-wrapper {
    display: block;
}

.filter-wrapper a,
.filter-wrapper a:visited {
    color: #888;
}

.filter-wrapper .filter-group {
    opacity: 0;
    transform: translateY(200px);
    transition: all 1200ms cubic-bezier(0.030, 0.420, 0.145, 1.005);
}

.filter-wrapper .filter-group.visible {
    opacity: 1;
    transform: translateY(0);
}

.animate-out .filter-wrapper .filter-group {
    opacity: 0;
    transform: translateY(-200px);
    transition: all 300ms ease-in-out;
}

.filter-wrapper .filter-group ul li a {
    transition: color 500ms ease-in-out;
}

.filter-wrapper .filter-group ul li:hover a {
    color: #ccc;
}

.nav-contact-module-inner,
.contact-details,
.enquire-input-wrapper .enquiry_form {
    opacity: 0;
    transform: translateY(100px);
}

.nav-contact-module.visible .nav-contact-module-inner,
.visible .nav-contact-module-inner,
.visible .contact-details,
.enquire-input-wrapper.visible .enquiry_form {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    opacity: 1.0;
    transform: translateY(0);
}

.animate-out .nav-contact-module .nav-contact-module-inner {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transform: translateY(0);
}


/* Splash overlay
    --------------------------------------------- */

.splash-container {}

.splash-bg {
    width: 100%;
    height: 100vh;
    transform: translateY(100%);
    background: #171717;
    transition: opacity 3000ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
}

.splash-bg.open {
    transform: translateY(0);
    transition: height 800ms cubic-bezier(.45, 0, .27, 1), background 400ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
}

.splash-container-inner {
    width: 100%;
    height: 100vh;
    padding: 0 125px;
    display: block;
    box-sizing: border-box;
    position: relative;
    z-index: 1001;
    opacity: 0;
    transition: opacity 2000ms ease-in-out, transform 800ms cubic-bezier(.45, 0, .27, 1);
    align-items: center;
    justify-content: center;
    display: flex;
}

body.splash-open .splash-container-inner {
    opacity: 1;
    transform: translateY(0);
}


/* Transition logo
    --------------------------------------------------------- */

.transition-logo {
    position: fixed;
    top: 50%;
    left: 0;
    background: none;
    letter-spacing: 0;
    font-size: 30px;
    line-height: 30px;
    height: auto;
    width: 100%;
    max-width: none;
    text-transform: uppercase;
    font-family: lato, calibre, sans-serif;
    font-weight: 200;
    letter-spacing: 30px;
    margin: 0;
    text-align: center;
    margin: -15px 0 0 -0;
    /*transform: translate(-50%,-50%) !important;*/
    transform: scale(0.2);
    transform: scale(0.9);
    transition: transform 5000ms cubic-bezier(0, .21, 0, 1), opacity 2000ms cubic-bezier(.18, 1, .21, 1);
}

.browser-safari .transition-logo {
    font-weight: 300;
}

.transition-logo span {
    position: absolute;
    display: block;
    text-align: center;
    width: 100%;
    opacity: 0;
}

.transition-logo .unit-logo {
    width: 400px;
    margin: 5px auto 0;
    height: 20px;
    background: url('../images/unit-london-logo.png') center 0 no-repeat;
    background-size: auto 20px;
    opacity: 0;
    transform: scale(0.7);
    transform: none;
    transition: transform 2000ms cubic-bezier(0, .21, 0, 1), opacity 400ms cubic-bezier(.18, 1, .21, 1);
}

body.splash-open .splash-container .transition-logo .unit-logo {
    transform: scale(0.7);
}

body.ajax-loading-complete #container .transition-logo .unit-logo,
body.splash-open .splash-container.end .transition-logo .unit-logo {
    opacity: 1;
    transform: scale(1);
}

body.ajax-loading-complete #container .transition-logo span,
body.splash-open .splash-container.end .transition-logo .transition-logo-desktop span,
body.splash-open .splash-container.end .transition-logo .transition-logo-mobile span {
    display: none !important;
}

body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo {
    display: block;
}

body.x-page-transition-active #container .transition-logo {
    display: block;
}

body.x-page-transition-active.loader-incoming-type-standard #preloader {
    display: none !important;
}

body.page-transition #container .transition-logo,
body.page-transition2 #container .transition-logo,
body.ajax-loading #container .transition-logo,
body.ajax-loading-complete #container .transition-logo {
    opacity: 1;
    transform: none;
}

body.x-page-transition-active .scroll-container .scroll-container-inner {
    background: none !important;
}

.transition-logo .transition-logo-desktop {
    display: block;
    text-indent: 15px;
}

.transition-logo .transition-logo-mobile {
    display: none;
}

body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span.active,
body.splash-open .splash-container .transition-logo .transition-logo-desktop span.active {
    opacity: 1;
}

body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span.active,
body.splash-open .splash-container .transition-logo .transition-logo-mobile span.active {
    opacity: 1;
}


/*
                    body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span,
                    body.splash-open .splash-container .transition-logo .transition-logo-desktop span {
                        animation: transition-logo-reveal-desktop 360ms linear infinite;
                    }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(1),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(1) {
                            animation-delay: 0;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(2),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(2) {
                            animation-delay: 60ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(3),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(3) {
                            animation-delay: 120ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(4),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(4) {
                            animation-delay: 180ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(5),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(5) {
                            animation-delay: 240ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-desktop span:nth-child(6),
                        body.splash-open .splash-container .transition-logo .transition-logo-desktop span:nth-child(6) {
                            animation-delay: 300ms;
                        }
                        @keyframes transition-logo-reveal-desktop {
                            0% {
                                opacity: 1;
                            }
                            16.666666% {
                                opacity: 1;
                            }
                            16.7% {
                                opacity: 0;
                            }
                            100% {
                                opacity: 0;
                            }
                        }
                        */

body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span,
body.splash-open .splash-container .transition-logo .transition-logo-mobile span {
    /* animation: transition-logo-reveal-mobile 400ms linear infinite; 1000ms */
    letter-spacing: 0;
    font-weight: bold;
    font-size: 70px;
}


/*
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span:nth-child(1),
                        body.splash-open .splash-container .transition-logo .transition-logo-mobile span:nth-child(1) {
                            animation-delay: 0;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span:nth-child(2),
                        body.splash-open .splash-container .transition-logo .transition-logo-mobile span:nth-child(2) {
                            animation-delay: 100ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span:nth-child(3),
                        body.splash-open .splash-container .transition-logo .transition-logo-mobile span:nth-child(3) {
                            animation-delay: 200ms;
                        }
                        body.x-page-transition-active.loader-incoming-type-standard #container .transition-logo .transition-logo-mobile span:nth-child(4),
                        body.splash-open .splash-container .transition-logo .transition-logo-mobile span:nth-child(4) {
                            animation-delay: 300ms;
                        }
                        @keyframes transition-logo-reveal-mobile {
                            0% {
                                opacity: 1;
                            }
                            24.99999% {
                                opacity: 1;
                            }
                            25% {
                                opacity: 0;
                            }
                            100% {
                                opacity: 0;
                            }
                        }
                        */


/* Mailing overlay
    --------------------------------------------- */

.mailing-overlay {}

.active-init .mailing-overlay {
    display: block;
}

.mailing-overlay .overlay-bg {
    opacity: 0.85;
}

.mailing-overlay .overlay-container-inner {
    height: 100vh;
    overflow: auto;
    padding: 0;
}

.mailing-overlay .mailing-input-wrapper {
    opacity: 0;
    transform: translateY(100px);
    max-width: 765px;
    margin: 0 auto;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    overflow: visible;
    min-height: 100vh;
    height: auto;
    padding: 100px 40px 120px;
}

.mailing-overlay .mailing-input-wrapper.visible {
    opacity: 1.0;
    transform: translateY(0);
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
}

#mailinglist_signup .variant_standard_content {
    display: block;
}

#mailinglist_signup.variant_prints .variant_standard_content {
    display: none;
}

#mailinglist_signup .variant_prints_content {
    display: none;
}

#mailinglist_signup.variant_prints .variant_prints_content {
    display: block;
}

#mailinglist_signup h3 {
    margin: 0 0 10px;
}

#mailinglist_signup .subtitle {
    margin: 0 0 10px;
}

#mailinglist_signup form .form_row {
    border: none;
}

#mailinglist_signup form .form_row input[type='text'] {
    font-size: 1.6rem;
    color: #fff;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.4);
}

#mailinglist_signup .form_checkboxes_wrapper {
    padding: 10px 0 0;
    margin: 0;
}

#mailinglist_signup .form_checkboxes_wrapper.form_checkboxes_level2 {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 400ms ease-in-out, padding 400ms ease-in-out, margin 400ms ease-in-out, opacity 400ms linear;
}

#mailinglist_signup .form_checkboxes_wrapper.form_checkboxes_level2:not(.active) {
    padding: 0;
    margin: 0;
}

#mailinglist_signup .form_checkboxes_wrapper.form_checkboxes_level2.active {
    max-height: 650px;
    opacity: 1;
    overflow: visible;
}

#mailinglist_signup .mailing_list_checkboxes_label,
#mailinglist_signup .form_checkboxes_wrapper h3 {
    font-size: 1.9rem;
    line-height: 2.4rem;
    margin: 0 0 10px;
}

#mailinglist_signup .form_checkboxes {
    float: left;
    width: 100%;
    padding: 0;
}

#mailinglist_signup .form_checkboxes .form_checkbox_item {
    margin: 0 25px 0px 0;
    float: left;
    width: auto;
}

#mailinglist_signup .terms_and_conditions {
    padding: 20px 0 0;
    max-width: 420px;
    clear: both;
}

#mailinglist_signup .error_row {
    font-size: 1.5rem;
    line-height: 2.2rem;
    color: #f30000;
    transition: all 400ms ease-in-out;
    padding-bottom: 20px;
}


/* Navigation overlay
    --------------------------------------------- */

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

.nav-wrapper ul li {
    display: block;
    color: #4d4d4d;
    margin: 0;
    font-weight: bold;
    font-size: 3.5rem;
    line-height: 4rem;
    display: block;
    float: left;
    width: 100%;
    clear: both;
    text-align: center;
    opacity: 0;
    transform: translateX(150px);
}

.nav-wrapper ul li a {
    padding: 6px 0;
    display: block;
}

.nav-wrapper ul li a,
.nav-wrapper ul li a:visited {
    color: #fff;
    transition: color 400ms ease-in-out;
}

.nav-wrapper ul li a:hover {
    color: #888;
}

.nav-wrapper ul li.visible {
    opacity: 1.0;
    transform: translateX(0);
    transition: all .8s cubic-bezier(0.030, 0.420, 0.145, 1.005), color 600ms ease-in-out;
}

.animate-out .nav-wrapper ul li {
    transform: translateX(0);
    transition: all .8s cubic-bezier(0.030, 0.420, 0.145, 1.005), color 600ms ease-in-out;
}


/* Search overlay
    --------------------------------------------- */

#sw_form {
    position: absolute;
    top: 35px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1200;
    width: 100%;
    max-width: 420px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0;
}

.search-overlay.active #sw_form {
    opacity: 1;
}

#sw_form form .form_row {
    margin: 0;
    padding: 0;
    border: 0;
}

#sw_form form .form_row input[type='text'] {
    padding: 7px 25px 9px 0;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(17, 17, 17, 0.6);
    color: #fff;
    font-size: 1.3rem;
    line-height: 2.0rem;
    padding: 16px 95px 18px 18px;
}

#sw_form #sw_field_search_button {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 1.3rem;
    line-height: 2.0rem;
    padding: 25px 18px 18px 18px;
    width: 11px;
    height: 12px;
    color: #fff;
    font-size: 1.3rem;
    line-height: 2.0rem;
    font-weight: bold;
    transition: opacity 400ms ease-in-out;
    text-indent: -9999px;
    cursor: pointer;
}

#sw_form #sw_field_search_button:after {
    content: '';
    display: block;
    width: 11px;
    height: 12px;
    position: absolute;
    left: 50%;
    top: 50%;
    transition: background 400ms ease-in-out;
    background: url(../images/search.png) 0 0 no-repeat;
    background-size: 11px auto;
    transform: translate(-50%, -50%);
}

.search-loading #sw_form #sw_field_search_button {
    opacity: 0;
}

#sw_form form .loader {
    display: none;
}

.search-loading #sw_form form .loader {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 15px;
    margin: -10px 0 0 -10px;
    display: block;
}

.search-loading #sw_form form .loader svg {
    -webkit-animation: rotate 2s linear infinite;
    animation: rotate 2s linear infinite;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 0;
    margin: -10px 0 0 -10px;
    display: block;
}

.search-loading #sw_form form svg .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    -webkit-animation: dash 1.5s ease-in-out infinite, color3 6s ease-in-out infinite;
    animation: dash 1.5s ease-in-out infinite, color3 6s ease-in-out infinite;
    stroke-linecap: round;
}

.search-wrapper {
    color: #fff;
    max-width: 1680px;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
}

.search-wrapper .prelude,
.search-wrapper h2,
.search-wrapper h3 {
    color: #fff;
    -webkit-font-smoothing: antialiased;
}

.search-wrapper .prelude:after {
    background: #fff;
}

.search-wrapper .caption {
    color: #888;
}

.search-wrapper .notify_panel_footer {
    display: none;
}

.search-results-active .search-wrapper .notify_panel_footer {
    display: block;
}


/* Enquire overlay
    --------------------------------------------- */


/* The enquire overlay is more of a slide-in menu */

.enquire-overlay {
    width: 50%;
    min-width: 320px;
    align-items: left;
    z-index: 2100;
}

.active-init .enquire-overlay {
    display: block;
}

.enquire-overlay .overlay-bg {
    height: 100vh;
    width: 100%;
    transform: translateX(-100%);
    -webkit-transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
}

.enquire-overlay .overlay-bg.open {
    height: 100vh;
    width: 100%;
    transform: translateX(0);
    -webkit-transition: transform 800ms cubic-bezier(.65, .06, .19, .96);
    transition: transform 800ms cubic-bezier(.65, .06, .19, .96);
}

.enquire-overlay .overlay-container-inner {
    width: 100%;
    padding: 140px 70px;
}

.enquire-input-wrapper {
    padding: 0;
    width: 100%;
    vertical-align: top;
}

.enquire-input-wrapper .enquiry_form {}


/* Form variants -------------------------------------- */


/* Catalogue request -------------------------------------- */

.enquire-input-wrapper .enquiry-type-fields-exhibition-catalogue-request {
    display: none;
}

.enquire-input-wrapper .enquiry-type-exhibition-catalogue-request .enquiry-type-fields-exhibition-catalogue-request {
    display: block;
}

.enquire-input-wrapper .enquiry-type-exhibition-catalogue-request .enquiry-type-fields-standard {
    display: none;
}


/* Register your interest -------------------------------------- */

.enquire-input-wrapper .enquiry_form .enquiry-type-fields-event-interest {
    display: none;
}

.enquire-input-wrapper .enquiry_form.enquiry-type-event-interest .enquiry-type-fields-event-interest {
    display: block;
}

.enquire-input-wrapper .enquiry_form.enquiry-type-event-interest .enquiry-type-fields-standard {
    display: none;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items {
    clear: both;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li {
    display: flex;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    padding-bottom: 20px;
    padding-top: 10px;
    margin-bottom: 20px;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li:after {
    content: '';
    display: block;
    clear: both;
    overflow: hidden;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li .image {
    width: 35%;
    /*padding-top: 35%;*/
    width: 100px;
    height: 100px;
    float: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li .image div {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.15);
    display: flex;
    text-align: center;
}

body.browser-msie .enquire-input-wrapper .enquiry_form .notify_panel_items ul li .image div {
    display: block;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li .image div img {
    max-width: 100%;
    max-height: 100%;
    align-self: center;
    margin: 0 auto;
}

.enquire-input-wrapper .enquiry_form .notify_panel_items ul li .content {
    width: 65%;
    float: left;
    font-size: 1.2rem;
    line-height: 1.8rem;
    padding: 0 0 0 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.enquire-input-wrapper .enquiry_form form .form_row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.enquire-input-wrapper .enquiry_form form .form_row input[type='text'],
.enquire-input-wrapper .enquiry_form form .form_row textarea,
.enquire-input-wrapper .enquiry_form form .form_row select {
    color: #666;
    font-weight: normal;
    font-size: 1.4rem;
}

.enquire-input-wrapper .enquiry_form form .form_row input.active,
.enquire-input-wrapper .enquiry_form form .form_row textarea.active,
.enquire-input-wrapper .enquiry_form form .form_row select.active {
    color: #fff;
}

.enquire-input-wrapper .enquiry_form form .terms_and_conditions {
    clear: both;
    padding: 25px 0 0;
}

.enquire-input-wrapper .enquiry_form form h4,
.enquire-input-wrapper .enquiry_form form h3 {
    font-size: 2.0rem;
    line-height: 2.4rem;
    margin: 0 0 10px;
    padding: 10px 0 0;
}

.enquire-input-wrapper .enquiry_form form .form_row.form_checkboxes_wrapper {
    padding-bottom: 14px;
}

.enquire-input-wrapper .enquiry_form form .form_row.form_checkboxes_wrapper>div {
    float: left;
    width: 100%;
    clear: both;
}

.enquire-input-wrapper .enquiry_form form .form_row .checkbox_container label {
    margin: 0;
}

.enquire-contact-wrapper {
    width: 50%;
    vertical-align: top;
}


/* Content overlay
    --------------------------------------------- */


/* This overlay is used for content previews which show on the current page - e.g. Hub */

.content-overlay {
    position: fixed;
    width: 60%;
    max-width: 900px;
    right: 0;
    left: auto;
    align-items: left;
    transition: opacity 800ms ease-in-out, transform 1200ms cubic-bezier(.45, 0, .27, 1);
}

.active-init .content-overlay {
    display: block;
}

.content-overlay:before {
    content: '';
    pointer-events: none;
    display: block;
    position: absolute;
    z-index: 1201;
    transition: opacity 800ms ease-in-out;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    background: rgba(0, 0, 0, 0.4);
}


/* Enquiry form open when content overlay is open */

.quick_contact_widget_active .content-overlay.active {
    transform: translateX(10vw);
}

.quick_contact_widget_active .content-overlay.active:before {
    opacity: 1;
}

.content-overlay .overlay-close-button {
    color: #fff;
    padding: 7px 27px 9px 0;
}

.content-overlay .overlay-close-button:after {
    display: block;
}

.content-overlay .overlay-bg {
    height: 100vh;
    width: 100%;
    background: #fff;
    transform: translateX(100%);
    -webkit-transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
    transition: transform 400ms cubic-bezier(.65, .06, .19, .96);
}

.content-overlay .overlay-bg.open {
    height: 100vh;
    width: 100%;
    background: #fff;
    transform: translateX(0);
    -webkit-transition: transform 800ms cubic-bezier(.65, .06, .19, .96);
    transition: transform 800ms cubic-bezier(.65, .06, .19, .96);
}

.content-overlay .overlay-container-inner {
    width: 100%;
    height: 100vh;
    padding: 0;
}

.content-overlay-wrapper {
    padding: 0;
    width: 100%;
    vertical-align: top;
    overflow: hidden;
}

.content-overlay .overlay-container-inner .image_area {
    width: 100%;
    clear: both;
    height: 40vh;
    opacity: 0;
    transform: translateY(0);
    overflow: hidden;
}

.content-overlay-wrapper.visible .image_area {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    opacity: 1.0;
    transform: translateY(0);
}

.animate-out .content-overlay-wrapper .image_area {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transform: translateY(0);
}

.content-overlay .overlay-container-inner .image_area img {
    display: block;
    object-fit: cover;
    object-position: center center;
    height: 100%;
    width: 100%;
    transition: transform 2000ms cubic-bezier(.18, 1, .21, 1);
    transform: scale(1.2);
}

.content-overlay .overlay-container-inner .visible .image_area img {
    transform: none;
}

.content-overlay .overlay-container-inner .content_area {
    padding: 50px 50px 100px;
    opacity: 0;
    transform: translateY(100px);
    box-sizing: border-box;
    height: 60vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.content-overlay-wrapper.visible .content_area {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    opacity: 1.0;
    transform: translateY(0);
}

.animate-out .content-overlay-wrapper .content_area {
    -webkit-transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 1s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transform: translateY(0);
}

.content-overlay .overlay-container-inner .content_area .header_area {
    float: left;
    margin: 0;
}

.content-overlay .overlay-container-inner .content_area h1 {
    font-size: 3.3rem;
    line-height: 3.8rem;
    margin: 0 0 15px;
    padding: 0;
}

.content-overlay .overlay-container-inner .content_area .subtitle {
    margin: 0;
}

.content-overlay .overlay-container-inner .content_area .tools {
    float: right;
    margin: 0;
}

.content-overlay .overlay-container-inner .content_area .content {
    float: right;
    padding: 40px 0 0;
}

.content-overlay .overlay-container-inner .content_area .links {
    padding: 30px 0 0;
}


/* Responsive nav overlay
    --------------------------------------------- */

.nav-overlay .overlay-container-inner {
    display: flex;
    align-items: center;
}

.nav-wrapper {
    width: 100%;
    padding: 0;
}

.nav-contact-module {
    position: relative;
    padding-left: 40px;
    font-size: 1.4rem;
    line-height: 2rem;
    display: block;
    margin-bottom: 8vh;
    margin-right: -30px;
}

.nav-contact-module.last {
    margin-bottom: 0;
}

.nav-contact-module h3 {
    font-size: 15px;
    font-weight: normal;
    color: #eee;
    margin: 0 0 20px 0;
    line-height: 18px;
}

.nav-contact-column {
    display: inline-block;
    box-sizing: border-box;
    padding: 0 30px 0 0;
    width: 45%;
    vertical-align: top;
}

.nav-contact-column.address-column {
    width: 55%;
}

.nav-contact-column span {
    margin-bottom: 20px;
    display: block;
}

.contact-details {
    display: block;
}

.send-button {
    opacity: 0;
}

.visible .send-button {
    opacity: 1;
    -webkit-transition: all 3s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 3s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition-delay: 0.5s;
}

.overlay .vert-label {
    opacity: 0;
}

.overlay .visible .vert-label {
    opacity: 1.0;
    -webkit-transition: all 3s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 3s cubic-bezier(0.030, 0.420, 0.145, 1.005);
}

.overlay.animate-out .vert-label {
    -webkit-transition: all 2s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 2s cubic-bezier(0.030, 0.420, 0.145, 1.005);
}

.overlay.animate-out .nav-contact-module .nav-contact-module-inner {
    -webkit-transition: all 2s cubic-bezier(0.030, 0.420, 0.145, 1.005);
    transition: all 2s cubic-bezier(0.030, 0.420, 0.145, 1.005);
}

.overlay.animate-out .nav-contact-module::before,
.overlay.animate-out .enquire-input-wrapper::before,
.overlay.animate-out .enquire-contact-wrapper::before {
    height: 0;
    -webkit-transition-delay: 0.5s;
    /* Safari */
    transition-delay: 0.5s;
    -moz-transition: height 3s cubic-bezier(.18, 1, .21, 1);
    -o-transition: height 3s cubic-bezier(.18, 1, .21, 1);
    -webkit-transition: height 3s cubic-bezier(.18, 1, .21, 1);
    transition: height 3s cubic-bezier(.18, 1, .21, 1);
}


/* Fix for WINDOWS chrome where it displayed white text */

option {
    color: #000;
}


/* Prompt ----------------------------------------- */

div.arpromptfade {
    position: absolute;
    background-color: #000;
}

div.arprompt {
    width: 400px;
    position: absolute;
    background-color: #111;
    text-align: left;
    padding: 25px;
}

div.arprompt .arpromptclose {
    position: absolute;
    z-index: 1900;
    top: 25px;
    right: 25px;
    display: block;
    content: '';
    width: 16px;
    height: 16px;
    transform: rotate(135deg);
    background: url(../images/menu.png) center center no-repeat;
    background-size: 16px 16px;
    transition: background-image 400ms linear;
    text-indent: -100px;
    overflow: hidden;
    cursor: pointer;
}

div.arprompt .arpromptmessage {
    margin: 0 0 25px;
    padding: 0 25px 0 0;
    color: #fff;
}

div.arprompt .arpromptmessage h2 {
    font-size: 2rem;
    line-height: 2.8rem;
}

div.arprompt .arpromptmessage h2,
div.arprompt .arpromptmessage h3,
div.arprompt .arpromptmessage h4 {
    color: #fff;
}

div.arprompt .arpromptbuttons {
    border-top: 1px solid #333;
    padding-top: 25px;
}