body {
    overflow-x: clip;
}

* {
    box-sizing: border-box;
}

.grid {
    position: fixed;
    width: 0;
    left: 50%;
    height: 100vh;
    border: 1px dashed #ff00ff00;
    z-index: 1000;
    transform: translateX(-50%);
    margin-left: -1px;
}

.grid.left-0 {
    transform: translateX(-53.75rem);
}


.grid.left-1 {
    transform: translateX(-50.75rem);
}


.grid.right-0 {
    transform: translateX(53.75rem);
}

.grid.right-1 {
    transform: translateX(50.75rem);
}

/**

*/

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'IBM Plex Sans';
    font-weight: normal;
    line-height: 1.25;
    letter-spacing: 0;
}

p,
li {
    font-family: 'IBM Plex Sans';
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
}

h1 {
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 1em;
}

h2 {
    font-size: 2.6666666rem;
    font-weight: bold;
    margin-bottom: 1em;

}

h3 {
    font-size: 1.8333333rem;
    font-weight: bold;
    margin-bottom: 1em;
}


h4 {
    font-size: 1.8333333rem;
    font-weight: bold;
    margin-bottom: 1em;

}

h5 {
    font-size: 1.8333333rem;
    font-weight: bold;
    margin-bottom: 1em;

}


h6 {
    font-size: 1.8333333rem;
    font-weight: bold;
    margin-bottom: 1em;

}


p,
li {
    font-size: 1.33333333333rem;
    font-weight: 300 !important;
    margin-bottom: 1em;
}

a,
.zlg--alm-button,
.zlg--button,
.zlg--new-selected--tag,
.overlay-text-img>div>p>span {
    font-family: 'IBM Plex Mono';
    font-weight: 300;
}

/**/


.zlg-hamburger-container {
    display: none;
}

.hamburger-menu {
    width: 2rem;
    cursor: pointer;
    z-index: 999;
    height: 2rem;
    display: block;
    -webkit-transform: scale(-1, 1);
    -moz-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    transform: scale(-1, 1);
}

.hamburger-menu span {
    display: inline-block;
    width: 2rem;
    height: 0.125rem;
    background: #ffffff;
    transition: all .5s;
}



.hamburger-menu.active span {
    margin-top: 0.9375rem;
    position: absolute;
    width: 2rem;
}

.hamburger-menu.active span:first-child {
    transform: rotate(-135deg);
}

.hamburger-menu.active span:nth-child(2) {
    transform: rotate(135deg);
}

.hamburger-menu.active span:last-child {
    margin-top: 1.875rem;
    width: 0rem;
    display: none;
}


/**
 * 
 * */

.zlg--component p,
.zlg--component li,
.zlg--component small {
    color: #524B4B;
}

.zlg--component small {
    font-size: 1.333333rem;
    font-weight: 600;
}

.zlg--component ol {
    counter-reset: ol-counter;
    margin-bottom: 1em;
}

.zlg--component ol li {
    padding-left: 1em;
    counter-increment: ol-counter;
    position: relative;
    margin-bottom: 1em;
}

.zlg--component ol li:before {
    content: counter(ol-counter)'.';
    width: 1.5em;
    text-align: left;
    position: absolute;
    left: 0;
    top: 0;
}

.zlg--component ol li:after {
    position: absolute;
    display: block;
    top: 0;
    left: 1.1em;
    content: '.';
}

/**

*/

.zlg--component ul {
    margin-bottom: 1em;
    margin-left: 0;
    padding-left: 0;
}

.zlg--component ul li {
    padding-left: 1em;
    position: relative;
    margin-bottom: 1em;
}

.zlg--component ul li:before {
    content: '-';
    width: 1.5em;
    text-align: left;
    position: absolute;
    left: 0;
    top: 0;
}

.zlg--component p {
    margin-bottom: 1em;
}

.zlg--component-container {
    background-color: #fafafa00;
}

.zlg--component .inner {}

.zlg--component .inner>div {}

.zlg--grid-element {}



.zlg--component li,
.zlg--component p {
    font-size: 1.3333333333333333rem !important;
}


.zlg-text-image-text h3,
.zlg-text-video-text h3 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1em;
}


/**

*/

.zlg--button {
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    border: 1px solid #A7A2A2;
    border-radius: 0;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    text-decoration: none !important;
    transition: 0.25s linear all;
    background-color: #fff;
}

.zlg--button:hover,
.zlg--button:active,
.zlg--button:focus {
    background-color: #F4F4F1;
    text-decoration: none !important;
}

/**

*/

.zlg--component-container.submenu-container {
    position: relative;
}

.zlg--component.zlg--menu {
    display: flex;
    flex-direction: row;
    border: 0.085rem solid #c4c4c4;
    width: 107.5rem;
    margin: auto;
    background-color: #ffffff;
    transform: translateY(-50%);
    position: relative;
    z-index: 1;
}

.zlg--menu div.menu-item {
    flex: 1 1 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}


a.submenu-next {
    position: absolute;
    top: 0px;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    width: 3rem;
    height: calc(100% - 2px);
    justify-content: center;
    align-items: center;
    transition: 0.25s linear all;
    background-color: #ffffff;
    cursor: pointer;
    z-index: 10;
}

@media only screen and (min-width: 750px),
(orientation: landscape) {
    a.submenu-next {
        display: none;
    }
}

a.submenu-next:hover,
a.submenu-next:focus,
a.submenu-next:active {
    filter: invert(1);
}


.zlg--menu a:not(.swiper-next) {
    flex: 1 1 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 1.5rem;
    color: #000000;
    transition: 0.25s linear all;
    text-decoration: none;
    padding: 1em 0;
    cursor: pointer;
}

.zlg--menu a:not(.swiper-next):hover {
    background-color: #000000;
    color: #ffffff;
}

.zlg--menu a:visited {
    color: #787878;
}

/**

*/

.zlg--component.zlg--section-title {
    width: 107.5rem;
    margin: 3.8333333333rem auto 4.16666666667rem;
    scroll-margin-top: 6rem;
    scroll-behavior: smooth;
}

.zlg--component.zlg--section-title:first-of-type {
    margin: 5.8333333333rem auto 4.16666666667rem;
}

.zlg--component.zlg--section-title h1 {
    font-weight: 800;
    color: #000000;
    position: relative;
    font-size: 2rem;
    margin-top: 1em;
}

.zlg--component.zlg--section-title h1:after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #c4c4c4;
    position: absolute;
    top: -1.5rem;
    left: 0;
    transform: translateY(-50%);
}


/**

*/

.zlg--component.zlg--card {
    color: #000000;
    /*width: 34rem;*/
    width: calc(33% - 0.25rem);
    padding-top: 2.5rem;
    margin-bottom: 5rem;
}


.zlg--component.zlg--card picture {
    margin-bottom: 1.25rem;
    width: 11.5rem;
    display: block;
}

.zlg--component.zlg--card picture img {
    display: block;
    width: 100%;
    height: auto;
}



.zlg--component.zlg--card--quotation p {
    color: #000000;
    margin-bottom: 1.875rem;
    padding-right: 2em;
    font-size: 1.625rem !important;
}

.zlg--component.zlg--card h1,
.zlg--component.zlg--card h2 {
    font-size: 1.5rem !important;
}


.zlg--component h2 {
    margin-bottom: 1.875rem;
    font-size: 1.833333333333rem;
}

.zlg--component.zlg--card p {
    margin-bottom: 1.875rem;
    font-size: 1.333333rem;
}


.zlg--card--picture-round picture {
    height: 11.5rem;
    border-radius: 50%;
    overflow: hidden;
}

.zlg--card--picture-round picture img {
    object-fit: cover;
}

.zlg--card--picture-big picture {
    width: 100% !important;
    height: auto;
    overflow: hidden;
}

.zlg--card--picture-big picture img {
    width: 100%;
    object-fit: cover;
    height: auto;
}

.zlg--component.zlg--card--quotation b {
    display: block;
    font-size: 12rem;
    margin-top: -3rem;
}

.zlg--component.zlg--card--quotation p {
    padding-right: 0;
}

.zlg--component.zlg--card--quotation p:first-of-type {
    margin-top: -1.75em;
    font-weight: bolder !important;
}

/**

*/

.zlg--component.zlg--2-cols {
    padding: 1.666666rem 0;
    border-top: 0.085rem solid #c4c4c400 !important;
    border-bottom: 0.085rem solid #c4c4c400 !important;
    width: 107.5rem;
    margin: auto;
}

.zlg--component.zlg--2-cols.has-top-border {
    border-top: 0.085rem solid #c4c4c4ff !important;
}

.zlg--component.zlg--2-cols.has-bottom-border {
    border-bottom: 0.085rem solid #c4c4c4ff !important;
}

.zlg--component.zlg--2-cols h2 {
    color: #000000;
    padding-bottom: 1.666666rem;
    font-size: 1.5rem;
}

.zlg--component.zlg--2-cols h3 {
    margin-bottom: 2.5rem;
}

.cols {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.cols>div {
    display: flex;
    flex-direction: column;
    color: #000000;
    width: calc(50% - 1.5rem);
    flex-basis: auto;
}

/**

*/

.zlg--component.zlg--3-cols {
    width: 107.5rem;
    margin: auto;
}

.zlg--component.zlg--3-cols h3 {
    font-size: 3rem;
    text-transform: uppercase;
}

.zlg--component.zlg--3-cols picture {
    display: block;
    margin-bottom: 2.5rem;
    overflow: hidden;
}

.zlg--component.zlg--3-cols picture img {
    display: block;
    width: 100%;
}

.zlg--component.zlg--3-cols h2 {
    color: #000000;
    margin-bottom: 1.825rem;
    font-size: 1.5rem;
}

.zlg--component.zlg--3-cols .cols {
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.zlg--component.zlg--3-cols .cols>div {
    color: #000000;
    width: calc(33% - 0.25rem);
    padding-right: 0;
    margin: 1rem 0;
    flex-basis: auto;
}

@media only screen and (max-width:760px),
(orientation: portrait) {
    .cols {
        flex-direction: column;
    }

    .cols>div {
        width: 100%;
        margin: 2rem auto;
        padding: 0 !important;
    }
}

/**

*/

.zlg--heading {
    position: relative;
    height: 57.5rem;
    overflow: hidden;
    width: 100%;
    max-width: 107.5rem;
    margin: auto;
}

.zlg--component.zlg--heading>img {
    display: block;
    width: 100%;
    height: auto;
    opacity: 0.50;
}


.zlg--heading-carousel {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}


.zlg--heading-carousel .swiper-slide figure {
    display: flex;
    flex-direction: row;
    height: 100%;
    align-items: center;
    justify-content: space-evenly;
}

.zlg--heading-carousel .swiper-slide figure figcaption {
    flex-basis: auto;
    width: 40rem;
    margin-left: 0;
}

.zlg--heading-carousel .zlg--tag {
    font-style: normal;
    font-weight: 400;
    font-size: 1rem !important;
    padding: 0.25em;
    background-color: #000;
    color: #ffffff !important;
    display: inline-block;
    color: #fff;
    display: inline-block;
    padding: 0.5em 1em;
}

.zlg--heading-carousel .swiper-slide figure>div.img--container {
    flex-basis: auto;
    width: 58rem;
    height: 58rem;
    display: flex;
    margin-bottom: 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transform: scale(0.80);
    padding-left: 4rem;
}

.zlg--heading-carousel .swiper-slide figure>div.img--container>img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 2rem;
}

.zlg--heading-carousel .swiper-slide figure figcaption h1 {
    margin-bottom: 0.5em;
    font-size: 3rem;
    font-weight: 600;
}

.zlg--heading-carousel .swiper-slide figure figcaption p {
    margin-bottom: 1em;
    font-size: 1.5rem;
    color: #000000;
}

.zlg--heading-carousel .swiper-slide figure figcaption .zlg--button {
    background: #ffffff;
    margin-top: 1em;
    display: inline-block;
    border-width: 0;
}

.zlg--heading-carousel .swiper-slide figure figcaption .zlg--button:focus,
.zlg--heading-carousel .swiper-slide figure figcaption .zlg--button:active,
.zlg--heading-carousel .swiper-slide figure figcaption .zlg--button:hover {
    background-color: #ffffff;
    filter: invert(1);
}


.zlg-heading-carousel-nav {
    width: 38.75rem;
    height: 3rem;
    position: absolute;
    bottom: 8rem;
    left: 5.5rem;
}

.zlg-heading-carousel-nav .swiper-pagination {
    text-align: left;
}


.zlg-heading-carousel-nav .swiper-pagination .swiper-pagination-bullet {
    width: 1rem;
    height: 1rem;
    margin-right: 0.5em;
}

.zlg-heading-carousel-nav .swiper-pagination-bullet-active {
    background-color: #1a1a1afe;
}

/**/

.zlg--component.zlg--side-by-side {
    width: 100%;
    max-width: 107.5rem;
    background-color: #000000;
    color: #ffffff;
    padding-top: 15.625rem;
    padding-bottom: 15.625rem;
    padding-left: 0rem;
    padding-right: 0rem;
    margin: 0 auto;
    position: relative;
}

.zlg--component.zlg--side-by-side h2 {
    font-size: 1.5rem;
}

.zlg--component.zlg--side-by-side .inner ul {
    padding-left: 0;
}

.zlg--component.zlg--side-by-side:not(.alternate) p,
.zlg--component.zlg--side-by-side:not(.alternate) li {
    color: #ffffff;
}

.zlg--component.zlg--side-by-side:not(.alternate) li:before {
    content: '-';
}

.zlg--component.zlg--side-by-side .inner.prev {
    position: absolute;
    top: 15rem;
    left: 0rem;
    transform: translateY(-100%);
    padding: 0;
    width: 100%;
    max-width: unset;
    background-color: transparent;
}

.zlg--component.zlg--side-by-side .inner {
    display: flex;
    margin: auto;
    min-height: 2rem;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
}

.zlg--component.zlg--side-by-side .inner>div>b {
    width: 100%;
    height: 1px;
    background-color: #ffffff;
    display: block;
    margin-top: 0rem;
    margin-bottom: 2rem;
}

.zlg--component.zlg--side-by-side .inner>div {
    width: calc(50% - 1.5rem);
    flex-basis: auto;
    background-color: transparent !important;
}

.zlg--component.zlg--side-by-side .inner>div>b {
    background-color: #c4c4c4;
    visibility: hidden !important;
    opacity: 0 !important;
}

.zlg--component.zlg--side-by-side .inner>div>img+b {
    margin-top: 2rem;
}

.zlg--component.zlg--side-by-side div {}

.zlg--component.zlg--side-by-side div img {
    /* 465 x 315 */
    width: 100%;
    display: block;
    height: auto;
    display: block;
    margin-bottom: 1rem;
}

.zlg--component.zlg--side-by-side>h2 {
    position: absolute;
}

/**/

.zlg--component.zlg---main-menu {
    background-color: #000000;
    width: 107.5rem;
    margin: auto;
    padding: 0.5rem 1rem 0.5rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.zlg--component.zlg---main-menu h1 {
    font-weight: 100;
    font-style: normal;
    font-stretch: normal;
    color: #ffffff;
    text-align: center;
    text-transform: lowercase;
    margin: 0;
}

.zlg--component.zlg---main-menu h1 a img {
    width: 10rem;
    display: block;
    height: auto;
    object-fit: cover;
}


.zlg--component.zlg---main-menu ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    width: 80%;
    justify-content: right;
    align-items: center;
}

.zlg--component.zlg---main-menu ul li {
    margin: 0;
    padding-left: 0;
    margin-right: 2rem;
}

.zlg--component.zlg---main-menu ul li:before {
    display: none;
}

.zlg--component.zlg---main-menu ul li:last-of-type {
    margin-right: 0;
}

.zlg--component.zlg---main-menu ul li a {
    color: #a7a2a2;
    text-decoration: none;
    font-style: normal;
    font-weight: 400;
    font-size: 1.333333333rem;
    text-transform: lowercase;
    transition: 0.25s linear all;
    cursor: pointer;
}

.zlg--component.zlg---main-menu ul li a:hover {
    color: #ffffff;
}


/**/

.zlg--component.zlg--new-heading {
    /*margin-top: -7.5rem !important;*/
    width: 107.5rem;
    margin: auto;
    position: relative;
    color: #ffffff;
    margin-bottom: 0;
    background-color: #000000;
}

.zlg--component.zlg--new-heading p {
    color: #ffffff;
    font-size: 1.5rem !important;
}

.zlg--component.zlg--new-heading>img {
    display: block;
    width: 100%;
    height: auto;

}

.zlg--component.zlg--new-heading>.inner {
    background-color: #000000;
    color: #ffffff;
    display: flex;
    flex-direction: row;
    margin: 0 auto;
    min-height: 11rem;
    padding-top: 3rem;
    padding-bottom: 7rem;
    padding-left: 3rem;
    padding-right: 6rem;
    width: 100%;
    justify-content: space-between;
}

.zlg--component.zlg--new-heading>.inner h1 {
    font-size: 3rem;
    font-weight: 600;
}

.zlg--component.zlg--new-heading>.inner>div {
    flex-basis: auto;
}

.zlg--component.zlg--new-heading>.inner>div:first-of-type {
    width: 41.16666666666667rem;
}

.zlg--component.zlg--new-heading>.inner>div:last-of-type {
    width: 48rem;
}

.zlg--new-heading--tag {
    font-size: 1.33333333rem;
    color: #7E7E7E !important;
}


/**

*/

/**/

.zlg--component.zlg--new-selected {
    width: 100%;
    max-width: 107.5rem;
    margin: auto;
    position: relative;
    margin-top: 5rem;
}

.zlg--component.zlg--new-selected>img,
.zlg--component.zlg--new-selected>a>img {
    display: block;
    width: 100%;
    height: auto;
}

@media only screen and (max-width:750px),
(orientation:portrait) {

    .zlg--component.zlg--new-selected>img,
    .zlg--component.zlg--new-selected>a>img {
        display: block;
        width: auto;
        height: 100vw;
        left: 50%;
        position: relative;
        transform: translateX(-50%);
    }
}

.zlg--component.zlg--new-selected>a,
.zlg--component.zlg--3-cols>picture>a,
.zlg-container.zlg-wide-image>a:first-of-type,
.zlg-text-image-image>a {
    display: block;
    position: relative;
}

/*
.zlg--component.zlg--new-selected>a:after,
.zlg--component.zlg--3-cols>picture>a:after,
.zlg-container.zlg-wide-image>a:first-of-type::after,
.zlg-text-image-image>a:after {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    background: transparent url(./img/link.png) no-repeat center;
    background-size: cover;
    width: 3.125rem;
    height: 3.125rem;
    content: '';
    opacity: 0;
    transition: 0.6s cubic-bezier(0.075, 0.82, 0.165, 1) all;
	}
*/

/*
.zlg--component.zlg--new-selected>a:hover:after,
.zlg--component.zlg--3-cols>picture>a:hover:after,
.zlg-container.zlg-wide-image>a:first-of-type:hover:after,
.zlg-text-image-image>a:hover:after {
    opacity: 0.85;
}
*/


.zlg--component.zlg--new-selected>.inner {
    position: relative;
    z-index: 1;
    width: 101.5rem;
    background-color: #ffffff;
    color: #000000;
    display: flex;
    flex-direction: row;
    margin: -9rem auto 4rem;
    min-height: 11rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
    padding-right: 4.6666666666667rem;
    padding-left: 6.5rem;
    justify-content: space-around;
    transform: translateY(0rem);
}

.zlg--component.zlg--new-selected>.inner h2 {
    font-size: 2rem;
    font-weight: 800;
}

.zlg--component.zlg--new-selected>.inner>div {
    flex-basis: auto;
}

.zlg--component.zlg--new-selected>.inner>div:first-of-type {
    width: 35rem;
}

.zlg--component.zlg--new-selected>.inner>div:last-of-type {
    width: 45rem;
}

.zlg--component.zlg--new-selected .zlg--new-selected--tag {
    font-size: 0.75rem !important;
    color: #ffffff;
    background-color: #000000;
    display: inline-block;
    padding: 0.25em 0.5em;
    color: #ffffff !important;
    text-transform: lowercase;
}

/***

*/

.zlg--component.zlg--footer {
    width: 100%;
    background-color: #000000;
    color: #ffffff;
    margin: auto;
    display: flex;
    flex-direction: column;
    padding: 3rem 0 7rem;
    margin-top: 0;
}

.zlg--component.zlg--footer h1 {
    font-weight: 100;
    font-style: normal;
    font-stretch: normal;
    color: #ffffff;
    text-align: center;
    text-transform: lowercase;
    margin: 0 0 1em;
    position: relative;
    height: 3.25rem;
}

.zlg--component.zlg--footer h1 a {
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.zlg--component.zlg--footer ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: center;
    align-items: center;
    width: 50rem;
    margin: auto;
}

.zlg--component.zlg--footer ul:last-of-type {
    width: 33rem;
}

.zlg--component.zlg--footer ul:last-of-type li {
    transform: scale(0.64);
}

.zlg--component.zlg--footer ul li {
    flex: 1 1 0px;
    margin: 0;
    text-align: center;
    padding: 0;
}

.zlg--component.zlg--footer ul li:before {
    display: none;
}

.zlg--component.zlg--footer ul li:last-of-type {
    padding-right: 1em;
}

.zlg--component.zlg--footer ul li a {
    color: #A7A2A2;
    text-decoration: none;
    font-style: normal;
    font-weight: 400;
    font-size: 1.3333333333333rem;
    text-transform: lowercase;
    transition: 0.25s linear all;
    cursor: pointer;
}

.zlg--component.zlg--footer ul li a:hover {
    color: #ffffff;
}

.zlg--footer>.inner {
    width: 107.5rem;
    margin: auto;
}

.separator {
    display: block;
    width: 80%;
    height: 1px;
    background-color: #ffffff;
    margin: 2rem auto;
}

/**/

.zlg--cards-container {
    margin: 2rem auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    max-width: 107.5rem;
    justify-content: space-between;
}

/**/

.swiper-fade .swiper-slide {
    opacity: 0 !important;
}

.swiper-fade .swiper-slide.swiper-slide-visible.swiper-slide-active {
    opacity: 1 !important;
}


.portfolio--selected {
    width: 80.20833333vw;
    margin: 3.055555556vw auto;
    display: block;
    box-sizing: border-box;
    font-style: normal;
}

.portfolio--selected-image {
    width: 100%;
    height: 0;
    padding-bottom: 60.60606061%;
    background-color: #D8D8D8;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.portfolio--selected-image>a:not(.zlg-video-play) {
    display: block;
    width: 100%;
    height: 85%;
    position: absolute;
    top: 0%;
    left: 50%;
    z-index: 1;
    transform: translateX(-50%);
}

.portfolio--selected-metadata {
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: center;
    width: 76vw;
    background-color: #fff;
    margin: auto;
    padding: 0 2rem;
    margin: 0 auto;
    transform: translateY(-4rem);
    max-width: 107.5rem;
    min-height: 20rem;
}

.portfolio--selected-metadata>div {
    flex-basis: auto;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.portfolio--selected-metadata>div p,
.portfolio--selected-metadata>div li {
    font-size: 1.33333333333333333rem;
}

.portfolio--selected-data {
    width: 37.5rem;
    order: 1;
    background-color: #ffffff;
    text-align: center;
}

.portfolio--selected-areas {
    order: 2;
    width: 50.97222222vw;
    min-height: 7.5vw;
    margin-top: 3rem;
}

.portfolio--selected-areas>ul {
    display: flex;
    flex-direction: row;
    margin: 0;
    padding: 0;
}

.portfolio--selected-areas>ul li {
    display: flex;
}

.portfolio--selected-metadata:nth-of-type(2n+1) .portfolio--selected-data {
    order: 2;
}

.portfolio--selected-metadata:nth-of-type(2n+1) .portfolio--selected-areas {
    order: 1;
}


.portfolio--selected-data * {
    color: #1A1A1A;
    text-align: left;
    width: 80%;
}

.portfolio--selected-data a {}

.portfolio--selected-data>h4 {
    color: #ffffff;
    background-color: #000000;
    font-weight: 300;
    margin-bottom: 1em;
    display: inline-block;
    width: max-content;
    padding: 0.5em 1em;
    color: #fff;
    font-size: 1rem;
}

.portfolio--selected-data>h3,
.portfolio--selected-data>h3 a {
    color: #1A1A1A;
    text-align: left;
    font-weight: bold;
}

.portfolio--selected-data>p {
    width: 95%;
}

.portfolio--selected-data>p:first-of-type {
    margin-top: 2.2rem;
}

.portfolio--selected-areas p {}

.portfolio--selected-areas ul li {
    display: flex;
    margin: 1rem 1rem 1rem 0;
    color: rgba(0, 0, 0, 0.5);
}

.portfolio--selected-areas ul li strong {
    color: #000;
    padding-right: 0.25em;
    display: inline-block;
}

.portfolio--selected-separation-image {
    width: 100vw;
    height: 0;
    padding-bottom: 60.60606061%;
    /*49.125%;*/
    background-color: #D8D8D8;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transform: translateX(-8.95%);
    margin: 6.1vw auto;
}

.portfolio--selected-image.portfolio--selected-with-video {
    padding-bottom: 56.25%;
}

.portfolio--selected-image.portfolio--selected-with-video>iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}


.portfolio--gallery {
    width: 100%;
    height: 0;
    padding-bottom: 60.60606061%;
    background-color: transparent;
    overflow: hidden;
}

.portfolio--gallery div {
    width: 100%;
    height: 48.606061vw;
    background-position: center center;
    background-size: cover;
}

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

    #content .section-container#selected {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 12rem !important;
    }

    .portfolio--selected {
        width: 100vw;
        margin-bottom: 5rem;
    }

    .portfolio--selected:first-of-type {
        margin-top: 0 !important;
    }

    .portfolio--selected-image {
        padding-bottom: 125%;
    }

    .portfolio--selected-metadata {
        margin-top: -1.5em;
        padding-bottom: 1em;
        width: 90vw;
    }

    .portfolio--selected-data {
        width: 87.69vw;
        flex-basis: auto;
        min-height: unset;
    }

    .portfolio--selected-data>h3 {}

    .portfolio--selected-data>h4 {
        margin-top: 1em;
        margin-bottom: 1.5em;
        padding-bottom: 0.54em;
    }

    .portfolio--selected-data>p {}

    .portfolio--selected-data>p:first-of-type {
        margin-top: 1.5em;
    }

    .portfolio--selected-areas {
        display: none !important;
    }

    .portfolio--selected-separation-image {
        transform: translateX(0);
    }

    .portfolio--selected-image.portfolio--selected-with-video {
        padding-bottom: 125%;
    }


    .portfolio--gallery {
        width: 100%;
        height: 0;
        padding-bottom: 125%;
        background-color: transparent;
        overflow: hidden;
    }

    .portfolio--gallery div {
        width: 100%;
        height: 125vw;
        background-position: center center;
        background-size: cover;
    }


}

@media only screen and (max-width: 950px) and (orientation: landscape) {
    #content .section-container#selected {
        padding-top: 0 !important;

    }
}


@media only screen and (min-width: 1920px) {
    :root {
        font-size: 16px !important;
    }
}

@media only screen and (max-width: 1024px) {
    :root {
        font-size: 12px !important;
    }
}

.zlg--component.zlg--grid-container {
    width: 107.5rem;
    margin-left: auto;
    margin-right: auto;
}

.zlg--grid {
    min-height: 10rem !important;
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    margin-bottom: 5rem;
}

.zlg--grid-element {
    width: 32.75%;
    height: auto;
}

.zlg--grid-element>img {
    display: block;
    width: 100%;
    height: auto;
}

.zlg--grid-2 .zlg--grid-element {
    width: 49.5625%;
}

.zlg--grid-gutter-sizer {
    width: 0.875%;
}

.zlg--component.zlg--table-of-contents {
    width: 107.5rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

/**
 
*/

.zlg--side-by-side-titled .prev {
    display: flex !important;
    flex-direction: column !important;
}

b.hr {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ffffff;
    margin-bottom: 2rem;
}


.zlg--component.zlg--side-by-side.alternate {
    background-color: #F4F4F1;
}

.zlg--component.zlg--side-by-side.alternate b.hr {
    background-color: #c4c4c4;
}

.zlg--component.zlg--side-by-side.alternate h2,
.zlg--component.zlg--side-by-side.alternate h3,
.zlg--component.zlg--side-by-side.alternate p,
.zlg--component.zlg--side-by-side.alternate li {
    color: #1a1a1a;
}


/**/

.zlg--toc-container {
    position: relative;
    width: 100%;
    max-width: 107.5rem;
    background: #000000;
    color: #A7A2A2;
    margin: 0 auto;
    transform: translate3d(0, 0, 0);
}

.zlg--toc-container.hidden {
    display: none;
}


.zlg--toc-container.alt {
    position: relative;
    width: 100%;
    background: rgb(0, 0, 0);
    background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
    color: #ffffff;
}


.zlg--toc-container.alt a {
    color: #ffffff;
}


.zlg--toc-container .dropdown {
    width: 100%;
    height: 5rem;
    display: flex;
}

.zlg--toc-container .dropdown::before {
    display: none;
}

.zlg--toc-container .dropdown.active::before {
    display: none;
}

.zlg--toc-container .dropdown input {
    display: none;
    pointer-events: none;
}

.zlg--toc-container .dropdown .options {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex: 1 1 auto;
}

.zlg--toc-container .dropdown .options div {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    background: #000000;
    transition: 0.25s linear all;
    flex: 1 1 auto;
}

.zlg--toc-container .dropdown .options div:hover,
.zlg--toc-container .dropdown .options div:active,
.zlg--toc-container .dropdown .options div:focus,
.zlg--toc-container .dropdown .options div.current {
    filter: invert(1);
}

.zlg--toc-container .dropdown .options div a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 1.333333333rem;
    color: #ffffff;
    padding: 0.5em 3rem;
}

.zlg--toc-container .dropdown .options div:hover {
    color: #ffffffff;
    background: #000000;
}


.zlg--component-container.zlg--toc-container.sticky {
    position: fixed !important;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10000;
}

/**/

.zlg--heading-single-item {
    counter-reset: 1;
}

.zlg--heading-single-item .zlg--heading-carousel .swiper-slide figure figcaption {
    margin-left: 2rem;
}


.zlg--heading-single-item .swiper-slide {
    padding-left: 1rem;
}

.zlg--heading-single-item .swiper-slide figure {
    display: flex;
    flex-direction: row;
    height: 100%;
    width: 100%;
    justify-content: flex-start;
    align-items: center;
}

/**/

.zlg--component.zlg--tiles {
    width: 107.5rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0.5rem auto;
    gap: 0.5rem;
}

.zlg--component.zlg--tiles .img-container-for-overlay {
    flex: 1 1 auto;
    width: calc(33% - 0.25rem);
}

.zlg--component.zlg--tiles .overlay-text-img p {
    color: #ffffff;
}

.zlg--component.zlg--tiles .overlay-text-img>div {
    top: 50%;
    left: 1rem;
    max-width: 32rem;
    transform: translateY(-50%);
}

/**/

.alm-filter-nav.zlg--nav,
.alm-btn-wrap {
    width: 107.5rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex: 1 0 auto;
    margin: 0 auto 2rem;
    align-items: center;
}

.alm-filter-nav.zlg--nav {}



.alm-btn-wrap {
    justify-content: center;
}

.alm-filter-nav.zlg--nav {
    justify-content: left;
    padding-top: 8rem;
    margin-bottom: 0;
}

.alm-filter-nav.zlg--nav button,
.alm-btn-wrap button {
    flex-basis: auto;
}

.zlg--alm-button,
.alm-btn-wrap button {
    display: flex;
    width: 11.875rem;
    background-color: #000;
    border-color: #ffffff;
    color: #ffffff;
    margin: 0;
    justify-content: center;
    align-items: center;
    transition: all 0.6s cubic-bezier(0.65, 0, 0.35, 1);
    will-change: auto;
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    border: 1px solid #A7A2A2;
    border-radius: 0;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    text-decoration: none !important;
    transition: 0.25s linear all;
}

.zlg--alm-button:hover,
.zlg--alm-button:focus,
.zlg--alm-button:active,
.zlg--alm-button.active,
.alm-btn-wrap button:hover,
.alm-btn-wrap button:focus,
.alm-btn-wrap button:active,
.alm-btn-wrap button.active {
    border-color: #000000;
    color: #000000;
    background-color: #ffffff;
}

.zlg--component.zlg--alm .alm-reveal {
    width: 107.5rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0 auto;
}

.zlg--component.zlg--tiles.zlg--alm {
    margin: 0 auto;
}


.zlg--component.zlg--alm .zlg--alm-reveal .img-container-for-overlay {
    flex: 1 1 auto;
}

/**
* Chroma
*/


.chroma-test {
    display: flex;
    flex-wrap: wrap;
    width: 100vw;
    padding: 0;
    height: 100vh;
    min-height: 52.125vw;
    box-sizing: border-box;
    overflow: hidden;
    text-align: center;
    position: relative;
    transform: translateX(-50%);
    left: 50%;
    justify-content: center;
    align-items: initial;
    align-content: baseline;
}


.chroma-element {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    cursor: pointer;
    height: 2vw !important;
    width: 2vw !important;
    flex-basis: auto;
}

.chroma-break {
    display: block;
    flex-basis: 100%;
    height: 0;
}

.chroma-element>div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    color: rgba(0, 0, 0, 0);
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: translate(-50%, -50%) scale(1);
    transition: 0.1s linear all;
    z-index: 1;
}

.chroma-element>div>p {
    font-family: 'IBM Plex Mono';
    font-weight: 300;
    font-size: 0.75rem !important;
    color: #fff;
    margin: 0;
    padding: 0;
}

.chroma-element:hover>div {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.25);
    color: rgba(0, 0, 0, 1);
}

.chroma-test h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 999;
    display: block;
    color: #fff;
    text-align: center;
    font-weight: regular;
    width: 13em;
    text-align: left;
}

@media only screen and (max-width:769px) {
    .chroma-test {
        display: flex;
        width: 100vw;
        height: 100vh;
        transform: translateX(-50%);
    }

    .chroma-element {
        width: 4vw !important;
        height: 4vw !important;
    }

    .chroma-test h2 {
        width: 85vw;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 1.75rem;
    }

}

/**/

body.home .container.main-menu {
    display: none !important;
}

.zlg--component.zlg--main-heading {
    width: 100%;
    min-height: 51.25rem;
    height: 100vh;
    position: relative;
    background-color: transparent;
    overflow: hidden;
}

.main-heading-img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: auto;
    transform: translate(-50%, -50%);
}

.zlg--component.zlg--main-heading>iframe {
    width: 100%;
    height: 55.6vw;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

@media only screen and (max-width: 740px),
(orientation: portrait) {
    .zlg--component.zlg--main-heading>iframe {
        height: 140vw;
        width: 245vw;
        left: 50%;
        transform: translateX(-50%);
    }
}

.zlg--component.zlg--main-heading .inner {
    width: 107.5rem;
    display: flex;
    flex-direction: column;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 2rem 4rem;
    background-color: #ffffff;
    min-height: 20rem;
}

.zlg--component.zlg--main-heading .inner--desktop>div,
.zlg--component.zlg--main-heading .inner--desktop>nav {
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
}

.zlg--component.zlg--main-heading .inner--desktop>div:last-of-type {
    padding-top: 0;
}

.zlg--component.zlg--main-heading .inner--desktop>nav {
    position: relative;
    padding-bottom: 1.125rem;
}

.zlg--component.zlg--main-heading .inner--desktop>nav:after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
}


.zlg--component.zlg--main-heading .inner--desktop>div>div,
.zlg--component.zlg--main-heading .inner--desktop>nav>aside,
.zlg--component.zlg--main-heading .inner--desktop>nav>ul {
    width: 50%;
}

.zlg--component.zlg--main-heading .inner--desktop>div:first-of-type>div:first-of-type {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.zlg--component.zlg--main-heading .inner--desktop nav ul {
    display: flex;
    flex-direction: row;
    margin: 0;
    padding: 0;
    list-style: none !important;
    align-items: center;
}

.zlg--component.zlg--main-heading .inner--desktop nav ul li {
    padding-left: 0;
    margin-bottom: 0;
    margin-right: 2.75rem;
    font-size: 1.3333333333333333rem !important;
}

.zlg--component.zlg--main-heading nav li,
.zlg--component.zlg--main-heading nav li>a {
    font-weight: 500;
    text-transform: lowercase;
    transition: 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
    will-change: color;
}

.zlg--component.zlg--main-heading nav li>a:hover,
.zlg--component.zlg--main-heading nav li>a:active,
.zlg--component.zlg--main-heading nav li>a:focus {
    color: #A7A2A2;
}


.zlg--component.zlg--main-heading .inner--desktop nav ul li:last-of-type {
    margin-right: 0;
}

.zlg--component.zlg--main-heading .inner--desktop nav ul li:before {
    content: '';
}


.zlg--component.zlg--main-heading .inner--desktop aside img {
    filter: invert(1);
}

@media only screen and (max-width: 950px),
(orientation: portrait) {
    .zlg--component.zlg--main-heading .inner--desktop {
        display: none;
    }
}

@media only screen and (min-width: 951px),
(orientation: landscape) {
    .zlg--component.zlg--main-heading .inner--mobile {
        display: none;
    }
}

.zlg--component.zlg--main-heading .inner--desktop p,
.zlg--component.zlg--main-heading .inner--desktop h1 {
    margin-bottom: 0;
}

.zlg--component.zlg--main-heading .inner--desktop>div {
    padding-top: 2rem;
}

.add-top-margin {
    margin-top: 3rem !important;
}


/**/

.zlg--component.zlg--wide-text {
    width: 90%;
    max-width: 107.5rem;
    margin: 2rem auto;
}

.zlg--component.zlg--wide-text .inner {
    width: 57.3221%;
    text-align: left;
    display: block;
    padding-top: 1.25rem;
    position: relative;
}

.zlg--component.zlg--wide-text .inner p {
    font-family: 'Apercu Mono Pro';
    font-size: 1.5rem !important;
    font-weight: 300 !important;
    color: rgb(0, 0, 0);
}

.zlg--component.zlg--wide-text .inner:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #c4c4c4;
    content: "";
}

@media only screen and (max-width: 750px),
(orientation: portrait) {
    .zlg--component.zlg--wide-text .inner {
        width: 86%;
    }
}

/***/

.zlg--separator {}

.zlg--separator .inner {
    height: 1px;
    display: block;
    width: 100%;
    position: relative;
}

.zlg--separator .inner.p-v-0 {
    padding-bottom: 0;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-0:after {
    display: block;
    content: 'PV0REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}


.zlg--separator .inner.p-v-1 {
    padding-bottom: 1rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-1:after {
    display: block;
    content: 'PV1REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}


.zlg--separator .inner.p-v-2 {
    padding-bottom: 2rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-2:after {
    display: block;
    content: 'PV2REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-3 {
    padding-bottom: 3rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-3:after {
    display: block;
    content: 'PV3REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}


.zlg--separator .inner.p-v-4 {
    padding-bottom: 4rem;
}


.logged-in.admin-bar .zlg--separator .inner.p-v-4:after {
    display: block;
    content: 'PV4REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-5 {
    padding-bottom: 5rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-5:after {
    display: block;
    content: 'PV5REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}


.zlg--separator .inner.p-v-6 {
    padding-bottom: 6rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-6:after {
    display: block;
    content: 'PV6REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-7 {
    padding-bottom: 7rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-7:after {
    display: block;
    content: 'PV7REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-8 {
    padding-bottom: 8rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-8:after {
    display: block;
    content: 'PV8REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-9 {
    padding-bottom: 9rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-9:after {
    display: block;
    content: 'PV9REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

.zlg--separator .inner.p-v-10 {
    padding-bottom: 10rem;
}

.logged-in.admin-bar .zlg--separator .inner.p-v-10:after {
    display: block;
    content: 'PV10REM';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
}

@media only screen and (max-width: 750px),
(orientation: portrait) {

    .zlg--separator .inner.p-v-1,
    .zlg--separator .inner.p-v-2,
    .zlg--separator .inner.p-v-3,
    .zlg--separator .inner.p-v-4,
    .zlg--separator .inner.p-v-5,
    .zlg--separator .inner.p-v-6,
    .zlg--separator .inner.p-v-7,
    .zlg--separator .inner.p-v-8,
    .zlg--separator .inner.p-v-9,
    .zlg--separator .inner.p-v-10 {
        padding-bottom: 3rem;
    }
}

/**/

.inner.inner--desktop .scroll {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.inner.inner--desktop .scroll>div:first-of-type {
    transform: scale(0.5) translateX(-50%);
}

.mouse {
    width: 3.125rem;
    height: 5.625rem;
    border: 0.1875rem solid #c4c4c4;
    border-radius: 3.75rem;
    position: relative;
}

.mouse::before {
    content: "";
    width: 0.75rem;
    height: 0.75rem;
    position: absolute;
    top: 0.625rem;
    left: 50%;
    transform: translateX(-50%);
    background-color: #333;
    border-radius: 50%;
    opacity: 1;
    animation: wheel 2s infinite;
    -webkit-animation: wheel 2s infinite;
}

@keyframes wheel {
    to {
        opacity: 0;
        top: 3.75rem;
    }
}

@-webkit-keyframes wheel {
    to {
        opacity: 0;
        top: 3.75rem;
    }
}

/**/

.zlg--project-heading {
    padding: 4.0625rem 3.75rem !important;
}

.zlg--project-heading>.inner.inner--desktop {
    flex-direction: row !important;
    display: flex;
}

.zlg--project-heading>.inner.inner--desktop:before {
    content: '';
    display: block;
    height: 1px;
    width: 92.5%;
    background-color: #c4c4c4;
    position: absolute;
    top: 2rem;
    left: 50%;
    transform: translateX(-50%);
}

.zlg--project-heading>.inner--desktop>div {
    display: flex;
    flex-direction: column !important;
    flex-basis: auto;
}

.zlg--project-heading>.inner--desktop>div:first-of-type {
    width: 31.25rem;
}

.zlg--project-heading>.inner--desktop>div:last-of-type {
    width: 36.25rem;
    padding-right: 3.5rem;
    padding-top: 2.25rem !important;
}

.zlg--project-heading .inner--desktop h1 {
    margin-top: 0.25em;
}

.zlg--project-heading-video.zlg--project-heading {
    padding: 0 !important;
    height: 51.25rem;
    min-height: unset;
}

.zlg--project-heading-video>iframe {
    z-index: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    display: block;
    height: 100%;
}

.zlg--project-heading-video .inner {
    opacity: 0.825;
}

.zlg--component.zlg--footer ul:last-of-type li {
    flex: 0 0 auto;
}


.zlg--component p>a:not([class]) {
    text-decoration: underline;
    font-family: "IBM Plex Sans";
}

.zlg--component p>a:not([class]):hover {
    text-decoration: underline !important;
}

/*

NEW TEXT

*/

.zlg--large-text {
    width: calc(120rem + 1px);
    padding: 4rem 7.5rem;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin: auto;
    background-position: 0 0;
    background-image: linear-gradient(rgba(0, 0, 0, .1) .1em, transparent .1rem), linear-gradient(90deg, rgba(0, 0, 0, .1) .1rem, transparent .1rem);
    background-size: 3em 3em;
}

.zlg--large-text.zlg--large-text-altern {
    justify-content: flex-end;
}

.zlg--large-text-inner {
    flex-shrink: 0;
    flex-grow: 0;
    flex-basis: 60rem;
    min-height: 16.375rem;
    /**/
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.zlg--large-text .zlg--large-text-inner span {
    display: block;
    color: #000;
    font-family: "IBM Plex Mono";
    font-size: 1.875rem !important;
    font-style: italic;
    font-weight: 200;
    /* 2.4375rem */
    line-height: 130%;
    margin-bottom: 0 !important;
}

.zlg--large-text.zlg--large-text-extra .zlg--large-text-inner {
    flex-basis: 82rem;
}

.zlg--large-text.zlg--large-text-extra .zlg--large-text-inner p {
    color: #000;
    font-family: "IBM Plex Mono";
    font-size: 4.375rem !important;
    font-style: italic;
    font-weight: 200;
    /* 5.6875rem */
    line-height: 130%;
}

@media only screen and (max-width: 760px),
(orientation:portrait) {

    :root {
        font-size: 12px !important;
    }

    .zlg--large-text {
        padding-left: 2rem;
        padding-right: 2rem;
        width: 100%;
        max-width: unset !important;
    }

    .zlg--large-text-inner {
        min-height: unset;
    }

    .zlg--large-text-inner,
    .zlg--large-text.zlg--large-text-extra .zlg--large-text-inner {
        flex-basis: 100%;
    }

    .zlg--large-text .zlg--large-text-inner p {
        font-size: 1.3125rem;
    }

    .zlg--large-text.zlg--large-text-extra .zlg--large-text-inner p {
        font-size: 3rem !important;
    }

}

/*

Breadcrumbs for new heading, project heading, project heading video

*/


.zlg--breadcrumbs {
    display: flex;
    flex-direction: row;
    list-style: none;
}

.zlg--breadcrumbs li {
    font-family: "IBM Plex Sans";
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 300;
    /* 1.875rem */
    line-height: 150%;
    width: auto;
    padding-left: 0 !important;
    margin-bottom: 0 !important;
}

.zlg--breadcrumbs li::before {
    content: none;
    display: none;
}

.zlg--breadcrumbs li a {
    font-family: inherit;
    color: #A7A2A2;
    transition: 0.25s ease-in-out all;
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-right: 1em;
    margin-right: 0.5em;
}

.zlg--breadcrumbs li a::after {
    content: '>';
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.zlg--breadcrumbs li a:hover,
.zlg--breadcrumbs li a:focus,
.zlg--breadcrumbs li a.zlg--breadcrumb-link-current,
.zlg--breadcrumbs li:last-of-type a {
    color: #1A1A1A;
}

.zlg--component.zlg--new-heading .zlg--breadcrumbs li a:hover,
.zlg--component.zlg--new-heading .zlg--breadcrumbs li a:focus,
.zlg--component.zlg--new-heading .zlg--breadcrumbs li a.zlg--breadcrumb-link-current,
.zlg--component.zlg--new-heading .zlg--breadcrumbs li:last-of-type a {
    color: #ffffff;
}


.zlg--breadcrumbs li:last-of-type a::after {
    display: none;
}

/**
    Chroma component
*/

.zlg--not-chroma {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(7, calc(100% / 7));
    grid-template-rows: repeat(4, calc(12.375vw - 1.25rem + 1px));
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    margin: auto;
    counter-reset: cell-counter;
    margin-top: 5rem;
}

.zlg--not-chroma-cell {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    position: relative;
    color: rgba(255, 255, 255, 0.30);
    font-family: "IBM Plex Mono";
    font-size: 1.125rem;
    font-style: italic;
    font-weight: 300;
    line-height: normal;
}


.zlg--not-chroma-cell:before {
    display: none;
    position: absolute;
    top: 0%;
    left: 0%;
    counter-increment: cell-counter;
    content: counter(cell-counter);
}

.zlg--not-chroma-cell:nth-of-type(7n+1) {
    background-color: #f0f0f0;
}

.zlg--not-chroma-cell:nth-of-type(7n+2) {
    background-color: #e0e0e0;
}

.zlg--not-chroma-cell:nth-of-type(7n+3) {
    background-color: #d0d0d0;
}

.zlg--not-chroma-cell:nth-of-type(7n+4) {
    background-color: #c0c0c0;
}

.zlg--not-chroma-cell:nth-of-type(7n+5) {
    background-color: #b0b0b0;
}

.zlg--not-chroma-cell:nth-of-type(7n+6) {
    background-color: #a0a0a0;
}

.zlg--not-chroma-cell:nth-of-type(7n) {
    background-color: #909090;
}

/* */


.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #DFF2F7;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #DECADE;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #DEA1C6;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #DD79AE;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #DC5195;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #DC287D;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #DB0064;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #95DADE;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(9) {
    background: #9DB4C9;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(10) {
    background: #A58DB3;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(11) {
    background: #AE679E;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(12) {
    background: #B64189;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(13) {
    background: #BE1A73;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(14) {
    background: #A5006A;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(15) {
    background: #4AC2C6;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(16) {
    background: #58A2B8;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(17) {
    background: #6683AB;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(18) {
    background: #73639D;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(19) {
    background: #814490;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(20) {
    background: #8F2482;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(21) {
    background: #7F007C;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(22) {
    background: #00AAAD;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(23) {
    background: #1391A7;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(24) {
    background: #2678A2;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(25) {
    background: #3A5F9C;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(26) {
    background: #4D4697;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(27) {
    background: #602D91;
}

.zlg--not-chroma.variant-1 .zlg--not-chroma-cell:nth-of-type(28) {
    background: #4D2982;
}

/**/

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #B78E70;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #B3795A;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #AF6443;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #AB502D;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #A73B16;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #A32600;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #8A0D00;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #BB9D82;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(9) {
    background: #B2846D;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(10) {
    background: #AA6C58;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(11) {
    background: #A15343;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(12) {
    background: #983B2E;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(13) {
    background: #8F2219;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(14) {
    background: #760900;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(15) {
    background: #C0AB93;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(16) {
    background: #B28F7F;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(17) {
    background: #A4726C;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(18) {
    background: #965659;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(19) {
    background: #883945;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(20) {
    background: #7A1D31;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(21) {
    background: #610418;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(22) {
    background: #C4BAA5;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(23) {
    background: #B19A93;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(24) {
    background: #9E7A81;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(25) {
    background: #8C596E;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(26) {
    background: #79395C;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(27) {
    background: #66194A;
}

.zlg--not-chroma.variant-2 .zlg--not-chroma-cell:nth-of-type(28) {
    background: #4D0031;
}

/**/

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #B6DDD7;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #ABDAD4;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #A1D7D2;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #96D5D0;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #8BD2CD;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #81CFCB;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #76CCC8;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #ACD0D3;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(9) {
    background: #A3CDD1;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(10) {
    background: #9BCACF;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(11) {
    background: #93C7CD;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(12) {
    background: #8AC4CA;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(13) {
    background: #82C1C8;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(14) {
    background: #79BEC6;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(15) {
    background: #A1C3D0;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(16) {
    background: #9BC0CE;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(17) {
    background: #94BDCC;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(18) {
    background: #8EBACA;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(19) {
    background: #88B7C7;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(20) {
    background: #81B4C5;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(21) {
    background: #7BB1C3;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(22) {
    background: #97B6CC;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(23) {
    background: #93B3CA;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(24) {
    background: #8FB0C8;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(25) {
    background: #8BADC7;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(26) {
    background: #86A9C5;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(27) {
    background: #82A6C3;
}

.zlg--not-chroma.variant-3 .zlg--not-chroma-cell:nth-of-type(28) {
    background: #7EA3C1;
}

/**/

.zlg--not-chroma-cell>div {
    transition: 0.25s ease-in-out all;
}

.zlg--not-chroma-cell .inner-card,
.zlg--not-chroma-cell .hover-card {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.zlg--not-chroma-cell .inner-card {
    opacity: 1;
}

.zlg--not-chroma-cell:hover .inner-card {
    opacity: 0;
}

.zlg--not-chroma-cell .hover-card {
    opacity: 0;
    overflow: hidden;
}

.zlg--not-chroma-cell:hover .hover-card {
    opacity: 1;
}

.zlg--not-chroma-cell .hover-card>img {
    object-fit: cover;
    display: block;
    height: auto;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

/* Hover card */


.zlg--not-chroma-cell .outer-card {
    display: flex;
    width: calc(200vw / 7);
    height: calc(12.375vw - 1.25rem + 1px);
    position: absolute;
    background-color: transparent;
    color: #ffffff;
    padding: 0.325rem 0.5rem;
    z-index: 1;
    opacity: 0;
    pointer-events: none;


    >div {
        display: flex;
        width: 100%;
        height: 100%;
        background-color: #000000;
        padding: 0.75rem 1rem;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size: 3rem !important;
        font-family: "IBM Plex Mono";
        font-style: italic;
        font-weight: 300;
        line-height: normal;
    }

}

.zlg--not-chroma-cell:hover .outer-card {
    opacity: 1;
}

/**/

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #DC5195;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #DC287D;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #B64189;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #BE1A73;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #814490;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #8F2482;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #4D4697;
}

.zlg--not-chroma-mobile.variant-1 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #602D91;
}

/**/

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #A73B16;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #A32600;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #983B2E;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #8F2219;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #883945;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #7A1D31;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #79395C;
}

.zlg--not-chroma-mobile.variant-2 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #66194A;
}

/**/

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(1) {
    background: #8BD2CD;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(2) {
    background: #81CFCB;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(3) {
    background: #8AC4CA;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(4) {
    background: #82C1C8;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(5) {
    background: #88B7C7;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(6) {
    background: #81B4C5;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(7) {
    background: #86A9C5;
}

.zlg--not-chroma-mobile.variant-3 .zlg--not-chroma-cell:nth-of-type(8) {
    background: #82A6C3;
}


/* Hover card position */

.appears-top-left {
    top: 0;
    left: 0;
    transform: translateY(-100%) translateX(-100%);
}

.appears-top-right {
    top: 0;
    right: 0;
    transform: translateY(-100%) translateX(100%);
}

.appears-bottom-left {
    bottom: 0;
    left: 0;
    transform: translateY(100%) translateX(-100%);
}

.appears-bottom-right {
    bottom: 0;
    right: 0;
    transform: translateY(100%) translateX(100%);
}

@media only screen and (max-width: 460px) {
    .zlg--not-chroma {
        display: none;
    }
}

/**/

.zlg--not-chroma-mobile {
    display: none;
    grid-template-columns: repeat(2, 50vw);
    grid-template-rows: repeat(4, calc(45.926422739vw - 1.25rem));
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    margin: 0 auto;
    counter-reset: mobile-cell-counter;
    width: 100%;
}

.zlg--not-chroma-mobile .zlg--not-chroma-cell {
    position: relative;
}

.zlg--not-chroma-mobile .zlg--not-chroma-cell:before {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    counter-increment: mobile-cell-counter;
    content: counter(mobile-cell-counter);
}

@media only screen and (max-width: 950px),
(orientation: portrait) {

    .zlg--not-chroma-mobile {
        display: grid;
        width: 100vw;
        max-width: 100vw !important;
    }

    .zlg--not-chroma-cell .outer-card {
        width: 50vw;
        height: calc(45.926422739vw - 1.25rem);
        font-size: 2rem !important;
    }

}

.zlg--not-chroma-cell .inner-card img,
.zlg--not-chroma-cell .hover-card .zlg--chroma-icon {
    width: 3.75rem;
    height: auto;
    display: block;
}

.zlg--chroma-icon {
    opacity: 1;
}

.text-variant-0 .zlg--not-chroma-cell .inner-card {
    color: rgba(255, 255, 255, 0.30) !important;
}

.text-variant-1 .zlg--not-chroma-cell .inner-card {
    color: rgba(0, 0, 0, 0.30) !important;
}

.text-variant-0 .inner-card img {
    filter: invert(1);
}

.text-variant-0 .hover-card:has(.zlg--chroma-icon) {
    background-color: #ffffff;
}

.text-variant-1 .inner-card img {}

.zlg-text-video.text-right .zlg-text-image-text {
    padding-right: 0;
    padding-left: 2rem;
}

.zlg--card--vimeo-video video,
.video-container video {
    width: 100%;
    height: auto;
    display: block;
}

.video-container {
    width: 100%;
    margin-bottom: 1.25rem;
}

@media only screen and (min-width: 465px) {
    .hide-on-desktop {
        display: none;
    }
}

@media only screen and (max-width: 465px) {
    .hide-on-mobile {
        display: none;
    }
}

.zlg-text-video-video.ar-1-1:has(.video-container) {
    padding-bottom: 0;
}


@media only screen and (max-width: 760px) {
    .zlg-container.zlg-gallery-container {
        background-color: #ffffff;
    }
}

/**/

.zlg-container {
    padding: 0 0 1rem 0;
}

.zlg--component-container {
    margin-bottom: 1rem;
}

/**
	Mobile aspect ratios
*/

.textimage-desktop-image {
    display: block !important;
}

.textimage-mobile-image {
    display: none !important;
}


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

    .zlg-wide-image-image[class*="mob-ar"],
    picture[class*="mob-ar"] {
        overflow: unset;
        transform: translateX(-50%);
        position: relative;
        left: 50%;
    }


    .textimage-desktop-image {
        display: none !important;
    }

    .textimage-mobile-image {
        display: block !important;
    }


    .mob-ar-1-1 {
        width: 100vw;
        height: 100vw;
    }

    .mob-ar-4-5 {
        width: 100vw;
        height: 125vw;
    }

    .mob-ar-5-7 {
        width: 100vw;
        height: 140vw;
    }

    .mob-ar-1-1:not([class*="video"]) {
        width: 83.333333vw;
        height: 83.333333vw;
    }

    .mob-ar-4-5:not([class*="video"]) {
        width: 83.333333vw;
        height: 104.16666625vw;
    }

    .mob-ar-5-7:not([class*="video"]) {
        width: 83.333333vw;
        height: 116.6666662vw;
    }

}

.zlg-video.mobile-video .zlg-video-video {
    height: auto;
    padding-bottom: 0;
}

/**

*/

.zlg--component-container {
    margin-bottom: 0.5rem !important;
}

.zlg--tiles {
    margin: 0rem auto !important;
}

.zlg--cards-container {
    margin: 0rem auto;
}


.zlg--card {
    padding-top: 0rem !important;
    margin-bottom: 0rem !important;
}

.zlg--component .zlg--card p {
    margin-bottom: 0rem;
}


.zlg--grid {
    margin-bottom: 0;
}

.zlg--section-title:first-of-type {
    margin: 0 auto;
}

.zlg--section-title {
    margin: 0 auto;
}

.zlg--new-selected>.inner {
    padding-bottom: 0rem !important;
    margin: -9rem auto 0rem !important;
}


.zlg--new-selected {
    margin-top: 0rem !important;
}

.zlg--not-chroma {
    margin-top: 0rem !important;
}

/**/

.alignment-top {
    justify-content: flex-start;
}

.alignment-center {
    justify-content: center;
}

.alignment-bottom {
    justify-content: flex-end;
    padding-bottom: 0.5em;
}

.zlg--component.zlg--section-title h1 a.title-link {
    display: inline-flex;
    margin-left: 0.725rem;
    width: 2rem;
    height: 2rem;
    aspect-ratio: 1/1;
    position: relative;
    top: 50%;
    opacity: 0.5;
    transition: 0.1s linear all;
    will-change: opacity;

    &:hover {
        opacity: 1;
    }

    img {
        width: 100%;
        height: auto;
        display: block;
    }
}

.zlg--component.zlg--section-title h1:hover a.title-link {
    opacity: 1;
}

/****
    Grid w/bgimage
*/

.zlg--bgimage-grid {
    width: 100%;
    aspect-ratio: 2800 / 1310;
    background-repeat: no-repeat !important;
    background-size: cover;
    background-position: top left;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: repeat(4, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;

    .cell {
        position: relative;
        display: flex;
    }

    .cell-mobile {
        display: none;
    }

    .cell .inner,
    .cell-mobile .inner {
        background-color: #88888888;
        transition: 0.25s ease-in-out all;
        will-change: opacity;
        opacity: 0;
        mix-blend-mode: overlay;
        width: 100%;
        height: auto;
        display: flex;
    }

    .cell-mobile .inner,
    .cell-mobile .outer {
        height: calc(25vh) !important;
    }

    .cell .outer,
    .cell-mobile .outer {
        position: absolute;
        height: calc(12.375vw - 1.25rem + 1px);
        display: flex;
        flex-direction: column;
        opacity: 0;
        align-items: start;
        transition: 0.25s ease-in-out all;
        will-change: opacity;
        pointer-events: none;
        top: unset;
        left: unset;
        right: unset;
        bottom: unset;
        transform: unset;

        >div {
            padding: 0.75rem 1rem;
            align-items: center;
            font-size: 3rem !important;
            font-family: "IBM Plex Mono";
            font-style: italic;
            font-weight: 300;
            line-height: normal;
            display: flex;
            flex-direction: column;
            justify-content: center;
            width: 100%;
            height: 100%;
            background-color: #000000;
            padding-block: 1.5rem;
            padding-inline: 2.5rem;
            gap: 0.75rem;
            color: #ffffff;

            h1 {
                color: #ffffff;
                font-family: 'IBM Plex Mono', monospace;
                font-weight: 300;
                font-size: 1.65rem;
                line-height: 1.5;
                margin-bottom: 0;
                text-align: center;
            }

            p {
                color: #ffffff;
                line-height: 1.5;
                font-family: 'IBM Plex Sans', sans-serif;
                font-style: normal;
                font-weight: 300 !important;
                margin-bottom: 0;
                align-self: stretch;
            }
        }

        .cell .outer:has(p) h1 {
            align-self: stretch;
            text-align: left;
        }
    }




    .cell .outer {
        width: calc(200vw / 7);
    }

    .cell-mobile .outer {
        width: calc(50vw);
    }

    .cell:hover .inner,
    .cell-mobile:hover .inner,
    .cell .inner:hover+.outer,
    .cell-mobile .inner:hover+.outer {
        opacity: 1;
    }

    .cell .outer.appears-top-left,
    .cell-mobile .outer.appears-top-left {
        top: 0 !important;
        left: 0 !important;
        transform: translateY(-100%) translateX(-100%) !important;
    }

    .cell .outer.appears-bottom-left,
    .cell-mobile .outer.appears-bottom-left {
        bottom: 0 !important;
        left: 0 !important;
        transform: translateY(100%) translateX(-100%) !important;
    }

    .cell .outer.appears-top-right,
    .cell-mobile .outer.appears-top-right {
        top: 0 !important;
        right: 0 !important;
        transform: translateY(-100%) translateX(100%) !important;
    }

    .cell .outer.appears-bottom-right,
    .cell-mobile .outer.appears-bottom-right {
        bottom: 0 !important;
        right: 0 !important;
        transform: translateY(100%) translateX(100%) !important;
    }

    .cell[data-position="1"] {
        grid-area: 1 / 1 / 2 / 2;
    }

    .cell[data-position="2"] {
        grid-area: 1 / 2 / 2 / 3;
    }

    .cell[data-position="3"] {
        grid-area: 1 / 3 / 2 / 4;
    }

    .cell[data-position="4"] {
        grid-area: 1 / 4 / 2 / 5;
    }

    .cell[data-position="5"] {
        grid-area: 1 / 5 / 2 / 6;
    }

    .cell[data-position="6"] {
        grid-area: 1 / 6 / 2 / 7;
    }

    .cell[data-position="7"] {
        grid-area: 1 / 7 / 2 / 8;
    }

    .cell[data-position="8"] {
        grid-area: 2 / 1 / 3 / 2;
    }

    .cell[data-position="9"] {
        grid-area: 2 / 2 / 3 / 3;
    }

    .cell[data-position="10"] {
        grid-area: 2 / 3 / 3 / 4;
    }

    .cell[data-position="11"] {
        grid-area: 2 / 4 / 3 / 5;
    }

    .cell[data-position="12"] {
        grid-area: 2 / 5 / 3 / 6;
    }

    .cell[data-position="13"] {
        grid-area: 2 / 6 / 3 / 7;
    }

    .cell[data-position="14"] {
        grid-area: 2 / 7 / 3 / 8;
    }

    .cell[data-position="15"] {
        grid-area: 3 / 1 / 4 / 2;
    }

    .cell[data-position="16"] {
        grid-area: 3 / 2 / 4 / 3;
    }

    .cell[data-position="17"] {
        grid-area: 3 / 3 / 4 / 4;
    }

    .cell[data-position="18"] {
        grid-area: 3 / 4 / 4 / 5;
    }

    .cell[data-position="19"] {
        grid-area: 3 / 5 / 4 / 6;
    }

    .cell[data-position="20"] {
        grid-area: 3 / 6 / 4 / 7;
    }

    .cell[data-position="21"] {
        grid-area: 3 / 7 / 4 / 8;
    }

    .cell[data-position="22"] {
        grid-area: 4 / 1 / 5 / 2;
    }

    .cell[data-position="23"] {
        grid-area: 4 / 2 / 5 / 3;
    }

    .cell[data-position="24"] {
        grid-area: 4 / 3 / 5 / 4;
    }

    .cell[data-position="25"] {
        grid-area: 4 / 4 / 5 / 5;
    }

    .cell[data-position="26"] {
        grid-area: 4 / 5 / 5 / 6;
    }

    .cell[data-position="27"] {
        grid-area: 4 / 6 / 5 / 7;
    }

    .cell[data-position="28"] {
        grid-area: 4 / 7 / 5 / 8;
    }
}

@media only screen and (max-width:675px),
(orientation: portrait) {
    .zlg--bgimage-grid {
        aspect-ratio: 810 / 1400;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(4, 1fr);

        .cell {
            display: none;
        }

        .cell-mobile {
            display: flex;
            position: relative;
        }


        .cell-mobile[data-position="1"] {
            display: flex;
            grid-area: 1 / 1 / 2 / 2;
        }

        .cell-mobile[data-position="2"] {
            display: flex;

            grid-area: 1 / 2 / 2 / 3;
        }

        .cell-mobile[data-position="3"] {
            display: flex;
            grid-area: 2 / 1 / 3 / 2;
        }

        .cell-mobile[data-position="4"] {
            display: flex;
            grid-area: 2 / 2 / 3 / 3;
        }

        .cell-mobile[data-position="5"] {
            display: flex;
            grid-area: 3 / 1 / 4 / 2;
        }

        .cell-mobile[data-position="6"] {
            display: flex;
            grid-area: 3 / 2 / 4 / 3;
        }

        .cell-mobile[data-position="7"] {
            display: flex;
            grid-area: 4 / 1 / 5 / 2;
        }

        .cell-mobile[data-position="8"] {
            display: flex;
            grid-area: 4 / 2 / 5 / 3;
        }
    }
}