:root {
    --page-nav: 0;
}

section {
    position: relative;
    margin:0;
}

section>header,
.inner {
    position: relative;
    z-index: 5;
    width: 86vw;
    max-width: 100ch;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    padding: 1.618rem 0 4.236em;
}

section>header {
    padding: 4.236rem 0 2.618rem;
}

section>header>*,
.inner>* {
    width: 100%;
    max-width: 35em;
    margin-right: auto;
    margin-left: auto
}

figure {
    width: 100%;
    margin-bottom: 2.618rem
}

@supports(object-fit: cover) {

    figure:not(.section-img) iframe,
    figure img {
        height: 100%;
        object-fit: cover;
    }
}

.inner figure img {
    aspect-ratio: 1.618/1
}

.section-img {
    width: 100%;
    max-width: none;
    height: 100vmin;
    margin: 0;
}

/*VIDEO*/
.video-container {
    max-width: none;
}

.section-img.video-container {
    height: auto;
}

.video-container iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
    border: none
}

@supports not (aspect-ratio:16/9) {
    .video-container {
        position: relative
    }

    .video-container div {
        padding-top: 56.25%
    }

    .video-container iframe {
        position: absolute;
        top: 0px;
        right: 0px;
        bottom: 0px;
        left: 0px;
        width: 100%;
        height: 100%
    }
}

.multiple.section-img div {
    height: 100%
}

footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin-top: 0;
    padding: 8vmin;
}

footer::after {
    background: linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)3%), linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)5%), linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)8%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)2%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)3%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)5%), linear-gradient(to top, rgba(255, 255, 255, .6), rgba(255, 255, 255, .6));
    z-index: -1
}

@media(min-width:64em) {
    .section-img {
        width: 70%;
        height: calc(100vh - 2.618rem);
        margin-left: auto;
        position: sticky;
        top: 0
    }

    section>header {
        margin-top: calc(-100vmin + 2.618rem);
        margin-bottom: 0;
        padding-top: calc(50vh - 4.236rem);
        padding-bottom: 1.618rem
    }


    /*SECTION IMAGE CONTAINER WITH VIDEO*/
    .section-img.video-container {
        top: calc((100% - 1.618rem)*.5625/2);
        background: none !important
    }

    .section-img.video-container iframe {
        width: calc(100% - 1.618rem);
    }

    .section-img.video-container+header {
        margin-top: calc((100% - 1.618rem)*.5625/-2);
    }

    /**/

    /*SECTION IMAGE CONTAINER WITH MULTIPLE IMAGES*/
    @supports (height: var(--nav)) {
        .multiple.section-img {
            height: 100%;
            margin-top: 0;
            position: absolute;
            top: 0;
            left: 0;
            background: none !important
        }

        .multiple.section-img div {
            display: block;
            height: calc(100% / var(--image-count));
            margin-top: 0;
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
        }

        .multiple.section-img div:first-of-type {
            position: sticky;
            top: 0
        }

        .multiple.section-img img {
            border-radius: 0;
            width: 50%;
            height: calc(100vh - 2.618rem);
            position: fixed;
            bottom: 0;
        }

        .multiple.section-img div:first-of-type img {
            width: 100%;
            height: calc(100vh - 2.618rem);
            position: initial
        }

        section:nth-of-type(odd) .multiple.section-img img {
            left: 0
        }

        section:nth-of-type(even) .multiple.section-img img {
            right: 0
        }

        .multiple.section-img+header {
            margin-top: 0 !important
        }
    }

    /**/

    section:first-of-type .section-img {
        display: block
    }

    section>header,
    .inner {
        width: 50%;
        margin-right: 0;
        margin-left: 0;
        padding-left: 3vw;
        padding-right: 3vw;
    }

    section:nth-of-type(odd) .section-img {
        margin-right: auto;
        margin-left: 0
    }

    section:nth-of-type(odd)>header,
    section:nth-of-type(odd)) .inner {
        margin-left: auto
    }

    .fullscreen-img {
        display: block;
        width: 100%;
        max-width: none;
        height: 100vh;
        margin: 0;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }

    .fullscreen-img.pseudo::after {
        background: linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)3%), linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)5%), linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)8%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)2%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)3%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)5%);
        z-index: 99
    }

    .fullscreen-img>* {
        width: 100%;
        max-width: none;
        height: 100%;
        object-fit: cover;
        position: fixed;
        bottom: 0;
        left: 0;
        /*        z-index: -1;*/
    }

    @supports(writing-mode:vertical-rl) {
        .verticle-stat {
            margin-left: 0
        }
    }
}

/*HELPERS*/
.visually-hidden {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

.pseudo {
    position: relative
}

.pseudo::before,
.pseudo::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%
}


section {
    position: relative;
    margin-top: 0;
}

section>header,
.inner {
    position: relative;
    z-index: 5;
    width: 86vw;
    max-width: 100ch;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    padding: 1.618rem 0 4.236em;
}

@media (min-width:64em) {
    section .inner {
        margin-top:-100vh;
    }
}

section>header {
    padding: 4.236rem 0 2.618rem;
}

section>header>*,
.inner>* {
    width: 100%;
    max-width: 35em;
    margin-right: auto;
    margin-left: auto
}


figure {
    width: 100%;
    margin-bottom: 2.618rem
}

@supports(object-fit: cover) {

    figure:not(.section-img) iframe,
    figure img {
        height: 100%;
        object-fit: cover;
        object-position: 60%;
    }
}

.inner figure img {
    aspect-ratio: 1.618/1
}

/*.inner figure>* {
    border-radius: .236rem;
    box-shadow: 0 0 1.618rem rgba(20, 10, 0, .08), 0 0 .618rem rgba(20, 10, 0, .08), 0 .056rem .056rem rgba(20, 10, 0, .08), 0 .09rem .09rem rgba(20, 10, 0, .08), 0 .146rem .146rem rgba(20, 10, 0, .08), 0 .236rem .236rem rgba(20, 10, 0, .08)
}*/

.section-img {
    width: 100%;
    max-width: none;
    height: 100vmin;
    margin: 0;
}

/*VIDEO*/
.section-img.video-container {
    height: auto;
}

.video-container iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
    border: none
}

@supports not (aspect-ratio:16/9) {
    .video-container {
        position: relative
    }

    .video-container div {
        padding-top: 56.25%
    }

    .video-container iframe {
        position: absolute;
        top: 0px;
        right: 0px;
        bottom: 0px;
        left: 0px;
        width: 100%;
        height: 100%
    }
}

.multiple.section-img div {
    height: 100%
}

/*VERTICLE STAT*/
@supports(writing-mode:vertical-rl) {
    .verticle-stat {
        width: auto;
        float: left;
        margin-right: 1rem;
        /*        margin-bottom: 1rem;*/
        margin-left: -1.382rem;
        writing-mode: vertical-rl;
        display: flex;
        flex-direction: column
    }

    .verticle-stat+* {
        margin-top: 0
    }

    .stat {
        font-size: 6.854rem;
        font-size: clamp(6.854rem, 4.236rem + 6.854vw, 11.089rem);
        line-height: .8;
        font-weight: 700;
        font-stretch: 50%;
        font-feature-settings: "tnum";
        letter-spacing: 1px;
    }

    .stat-comma {
        font-size: 4.236rem;
        font-size: clamp(4.236rem, 2.618rem + 4.236vw, 6.854rem);
        position: relative;
        left: -1rem
    }

    .stat-desc {
        font-size: 75%;
        line-height: 1;
        font-stretch: 30%;
        text-transform: uppercase;
        margin-top: .382em
    }
}

footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin-top: 0;
    padding: 8vmin;
}

footer::after {
    background: linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)3%), linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)5%), linear-gradient(to bottom, rgba(0, 0, 0, .08), rgba(0, 0, 0, 0)8%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)2%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)3%), linear-gradient(to top, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0)5%), linear-gradient(to top, rgba(255, 255, 255, .6), rgba(255, 255, 255, .6));
    z-index: -1
}

@media(min-width:64em) {
    .section-img {
        width: 50%;
        height: 100vh;
        margin-left: auto;
        position: sticky;
    }

    section>header {
        margin-top: calc(-100vmin + 2.618rem);
        margin-bottom: 0;
    }

    /*SECTION IMAGE CONTAINER WITH VIDEO*/
    .section-img.video-container {
        top: calc((100% - 1.618rem)*.5625/2);
        background: none !important
    }

    .section-img.video-container iframe {
        width: calc(100% - 1.618rem);
    }

    .section-img.video-container+header {
        margin-top: calc((100% - 1.618rem)*.5625/-2);
    }

    /**/

    /*SECTION IMAGE CONTAINER WITH MULTIPLE IMAGES*/
    @supports (height: var(--nav)) {
        .multiple.section-img {
            height: 100%;
            margin-top: 0;
            position: absolute;
            top: 0;
            left: 0;
            background: none !important
        }

        .multiple.section-img div {
            display: block;
            height: calc(100% / var(--image-count));
            margin-top: 0;
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
        }

        .multiple.section-img div:first-of-type {
            position: sticky;
        }

        .multiple.section-img img {
            border-radius: 0;
            width: 50%;
            height: 100vh;
            position: fixed;
            bottom: 0;
        }

        .multiple.section-img div:first-of-type img {
            width: 100%;
            height: 100vh;
            position: initial
        }

        section:nth-of-type(odd) .multiple.section-img img {
            left: 0
        }

        section:nth-of-type(even) .multiple.section-img img {
            right: 0
        }

        .multiple.section-img+header {
            margin-top: 0 !important
        }
    }

    /**/

    section:first-of-type .section-img {
        display: block
    }

    section>header,
    .inner {
        width: 50%;
        margin-right: 0;
        margin-left: 0;
        padding-left: 3vw;
        padding-right: 3vw;
    }

    section:nth-of-type(odd) .section-img {
        margin-right: auto;
        margin-left: 0
    }

    section:nth-of-type(odd)>header,
    section:nth-of-type(odd) .inner {
        margin-left: auto
    }



    @supports(writing-mode:vertical-rl) {
        .verticle-stat {
            margin-left: 0
        }
    }
}

.fullscreen-img {
    display: block;
    width: 100%;
    max-width: none;
    height: 100vh;
    margin: 0;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    mask-image: linear-gradient(to top, rgba(0, 0, 0, .1)0%, rgba(0, 0, 0, 1)calc((var(--h1, 1.978em) * 1.146) * 2 + 9.472em));
    min-height: 30rem;
}

.fullscreen-img.pseudo::after {
    background: linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)3%), linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)5%), linear-gradient(to bottom, rgba(0, 0, 0, .13), rgba(0, 0, 0, 0)8%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)2%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)3%), linear-gradient(to top, rgba(0, 0, 0, .05), rgba(0, 0, 0, 0)5%);
    z-index: 99
}

.fullscreen-img>* {
    width: 100%;
    max-width: none;
    height: 100%;
    object-fit: cover;
    position: fixed;
    bottom: 0;
    left: 0;
}

@media(max-aspect-ratio:1/1) {

    @media screen and (max-width:768px) {
        .fullscreen-img {
            height: 150vh !important;
        }

        .glass-card .corner-border {
            display: none;
        }

        .glass-card {
            margin-bottom: 0;
        }
    }

}

@media(min-width:768px) {
    :root {
        --nav-bar: 72px
    }

    #footer-widgets {
        padding-bottom: 0 !important
    }
}

@media (hover:hover) {
    main a {
        transition: all .4s ease
    }

    main a:hover {
        filter: brightness(1.15)
    }
}