﻿@import url('https://fonts.googleapis.com/css2?family=Merriweather&family=Poppins:wght@300;500&display=swap');
*:focus-visible {
    outline:none;
}
img {
    max-width:100%;
}
html, body {
    
}
body {
    background-color: #000;
    font-family: 'Poppins', sans-serif;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Merriweather', serif;
}
h2 {
    font-size:60px;
}
h3 {
    font-size:35px;
}
a:hover {
    color:inherit;
}
.navbar-light .navbar-brand {
    color: #fff;
}
.navbar-light .navbar-brand:hover {
    color: #fff;
}
.navbar-light .navbar-nav .nav-link {
    color: #fff;
    transition: opacity 300ms cubic-bezier(.215, .61, .355, 1);
}

    .navbar-light .navbar-nav:hover > .nav-link:hover {
        opacity: 1;
        color: #fff !important;
    }

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
    opacity: 1;
    color: #fff !important;
    transition: opacity 300ms cubic-bezier(.215, .61, .355, 1);
}
.navbar-light .navbar-nav:hover > * {
    opacity: 0.5;
    transition: opacity 300ms cubic-bezier(.215, .61, .355, 1);
}
    .navbar-light .navbar-nav:hover > *:hover {
        opacity: 1;
        transition: opacity 300ms cubic-bezier(.215, .61, .355, 1);
    }
.navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.85rem;
    padding-left: 0.85rem;
}
.navbar-nav {
}
.cta {
    color: #000;
    background-color: #fff;
    font-size: 16px;
    line-height: inherit;
    padding: 13px 50px;
    display: block;
    position: relative;
    vertical-align: middle;
    text-align: center;
    border-radius: 100px;
    cursor: pointer;
    white-space: nowrap;
    text-decoration: none;
    transition: 0.5s;
}
    .cta:hover {
           background-color: #a87333;
    color: #fff;
    }

header {
       margin-top: 0;
    padding: 20px 0px;
}
.carousel img {
    border-radius: 40px;
    border:2px solid #ae7f39;
}

.carousel-indicators [data-bs-target] {
    width: 15px;
    height: 15px;
    border-radius: 100%;
}
.text-yellow {
    color:#dbb469
}
a.text-yellow:hover {
    color: #ffffff;
}
.cta-submit {
    color: #000;
    background-color: #fff;
    font-size: 16px;
    line-height: inherit;
    padding: 8px 30px;
    display: block;
    position: relative;
    vertical-align: middle;
    text-align: center;
    border-radius: 100px;
    cursor: pointer;
    white-space: nowrap;
    text-decoration: none;
    transition: 0.5s;
    border: none;
}
.cta-submit:hover {
    background-color: #a87333;
    color: #fff;
}
.cta-price {
    text-decoration:none;
    line-height:50px;
}
.cta-price img {
    height:14px;
    margin-left:10px;
}
.query {
    border: 2px solid #ffffff;
    border-radius: 40px;
    background-color: #fef135;
}
input[type=text], input[type=email], input[type=number], input[type=tel], select, textarea {
    background: transparent;
    border: none;
    width: 100%;
    border-bottom: 2px solid #ffffff;
    padding: 12px 5px;
    color: #aaaaaa;
}
.focus, .pricing {
    border:2px solid #ae7f39;
    border-radius: 40px;
}
.pricing {
    color:#fff;
}
    .pricing h4 {
        color: #edff00;
        
    }
    .pricing span {
        display:block;
        border-bottom:1px solid #edff00;
        padding:12px 0;
    }
        .pricing span:last-child {
            border-bottom: none;
        }
    .pricing strong {
        font-weight: 200;
        font-size: 35px;
        margin-bottom:50px;
        display:block;
    }
.experience {
    background: #f5f5f5;
}
    .experience h5 {
        font-size:14px;
        color:#000;
    }
    .experience h2 {
           font-size: 50px;
    font-weight: bold;
    color: #ab773a;
    }



.slider__container {
    display: flex;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -webkit-tap-highlight-color: transparent;
    margin: 0 0 0 170px;
}
figure.img {
    position: relative;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
    border-radius:40px;
    border:2px solid #fff;
}
    figure.img img {
        width: 100%;
        height: auto;
    }
        figure.img img.display {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%,-50%);
            min-width: 100%;
            min-height: 100%;
        }
        figure.img img.display {
            transition: opacity .6s ease 0s;
            opacity: 1;
        }
@media screen and (min-width: 1000px) {
    .recent .slideBottom__inner .copy h4 span {
        display: inline-block;
        transform: translateY(100%);
        will-change: transform;
        transition: transform .3s cubic-bezier(.645, .045, .355, 1);
    }
    .recent .slideBottom__inner .copy h4 {
        margin-bottom: 10px;
        padding-bottom: 2px;
        overflow: hidden;
    }
    .recent .slideBottom__inner .copy {
        position: absolute;
        bottom: 40px;
        left: 40px;
        right: 40px;
        width:60%;
        color: #fff;
        will-change: transform;
        transition: transform .6s cubic-bezier(.19, 1, .22, 1);
    }
    .recent .slideBottom__inner svg {
        position: absolute;
        left: 30px;
        top: 20px;
        width: 160px;
        height: 100px;
        fill: #eee;
    }
    .recent .slideBottom__inner {
        position: relative;
        overflow: hidden;
        /*height: 760px;*/
        margin-right: 50px;
    }
    .slideBottom {
        position: relative;
        min-width: 525px;
    }
    .slider__viewport.is-draggable {
        cursor: move;
        cursor: grab;
    }
    /*.slider {
        position: relative;
        width: calc(100% + 70px);
        margin-left: -70px;
        padding: 120px 0;
    }*/
    .recent .slideBottom__inner:hover .copy h4 span {
        transform: translateY(0);
        transition-duration: .5s;
        transition-timing-function: cubic-bezier(0.19,1,0.22,1);
    }
}









.container-sticky {
    position: relative;
    width: 100%;
    min-height: 100vh;
}

.space-holder {
    position: relative;
    width: 100%;
}

.sticky {
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    overflow-x: hidden;
}

.horizontal {
    position: absolute;
    height: 100%;
    will-change: transform;
}

.cards {
    position: relative;
    height: 100%;
    padding: 0 0 0 50px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

.sample-card {
    margin-right: 50px;
}

.accordion-item {
    background-color:transparent;
}
.accordion-button {
    background-color:transparent;
}
    .accordion-button:focus {
        background-color:transparent;
        box-shadow:none;
    }
    .accordion-button:not(.collapsed) {
        background-color: transparent;
    }
    .accordion-button:not(.collapsed) {
        color:#081c16;
    }














.menu__item {
    margin-bottom: 1rem;
    text-transform: uppercase;
    cursor: pointer;
    color: #f5f5f5;
    will-change: transform;
    position:relative;
}
    .menu__item p {
        text-transform:none;
    }


.menu__item-text {
    pointer-events: none;
    display: block;
    line-height: 1;
    position: relative;
    z-index: -1;
    font-size: 2rem;
    color: #e2c780;
    font-weight: bold;
}

    .menu__item-text .word {
        overflow: hidden;
        perspective: 1000px;
        perspective-origin: -150% 50%;
    }

    .menu__item-text .word--clone {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
    }

        .menu__item-text .word--clone .char {
            opacity: 0;
        }

    .menu__item-text .char {
        transform-origin: 0% 0%;
        will-change: transform;
    }

.hover-reveal {
    position: absolute;
    z-index: -1;
    width: 350px;
    height: 450px;
    top: 0;
    left: 0;
    pointer-events: none;
    opacity: 0;
    will-change: transform, filter;
}

.hover-reveal__inner {
    overflow: hidden;
    will-change: transform, opacity;
}

.hover-reveal__inner,
.hover-reveal__img {
    width: 100%;
    height: 100%;
    position: relative;
}

.hover-reveal__img {
    background-size: cover;
    background-position: 50% 50%;
    will-change: transform;
}

.content {
    max-width: 30ch;
    margin: 0 auto;
    z-index: -1;
    position: relative;
}

    .content::after {
        content: '';
        position: fixed;
        pointer-events: none;
        z-index: 500;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 1;
        background: linear-gradient(transparent 0%,transparent 70%,var(--color-bg) 100%);
    }

@media screen and (min-width: 53em) {
    .frame {
        pointer-events: none;
        position: fixed;
        display: grid;
        height: 100vh;
        width: 100%;
        align-content: space-between;
        grid-template-columns: 30% 40% 30%;
        grid-template-rows: auto auto;
        grid-template-areas: 'title links ...' 'author ... related';
        padding: 1.5rem 2rem;
    }

        .frame a {
            pointer-events: auto;
        }

    .frame__title {
        justify-self: start;
    }

    .frame__author {
        margin: 0;
        grid-area: author;
        justify-self: start;
    }

    .frame__related {
        grid-area: related;
        justify-self: end;
    }

    .menu {
        padding: 21vh 1rem 3rem;
    }

    .menu__item::before {
        left: 0vw;
        top: 0.25vw;
    }

    .menu__item-text {
        font-size: 2.5vw;
    }

        .menu__item-text .word {  
        }
}

@media (any-pointer:fine) {
    .cursor {
        position: fixed;
        top: 0;
        left: 0;
        display: block;
        pointer-events: none;
        z-index: 1001;
    }

    .cursor__inner {
        fill: var(--cursor-fill);
        stroke: var(--cursor-stroke);
        stroke-width: var(--cursor-stroke-width);
        opacity: 0.7;
    }

    .no-js .cursor {
        display: none;
    }
}

/* Recommended styles for Splitting */
.splitting .word,
.splitting .char {
    display: inline-block;
}

/* Psuedo-element chars */
.splitting .char {
    position: relative;
}

    /**
 * Populate the psuedo elements with the character to allow for expanded effects
 * Set to `display: none` by default; just add `display: block` when you want
 * to use the psuedo elements
 */
    .splitting .char::before,
    .splitting .char::after {
        content: attr(data-char);
        position: absolute;
        top: 0;
        left: 0;
        visibility: hidden;
        transition: inherit;
        user-select: none;
    }

/* Expanded CSS Variables */

.splitting {
    /* The center word index */
    --word-center: calc((var(--word-total) - 1) / 2);
    /* The center character index */
    --char-center: calc((var(--char-total) - 1) / 2);
    /* The center character index */
    --line-center: calc((var(--line-total) - 1) / 2);
}

    .splitting .word {
        /* Pecent (0-1) of the word's position */
        --word-percent: calc(var(--word-index) / var(--word-total));
        /* Pecent (0-1) of the line's position */
        --line-percent: calc(var(--line-index) / var(--line-total));
    }

    .splitting .char {
        /* Percent (0-1) of the char's position */
        --char-percent: calc(var(--char-index) / var(--char-total));
        /* Offset from center, positive & negative */
        --char-offset: calc(var(--char-index) - var(--char-center));
        /* Absolute distance from center, only positive */
        --distance: calc( (var(--char-offset) * var(--char-offset)) / var(--char-center) );
        /* Distance from center where -1 is the far left, 0 is center, 1 is far right */
        --distance-sine: calc(var(--char-offset) / var(--char-center));
        /* Distance from center where 1 is far left/far right, 0 is center */
        --distance-percent: calc((var(--distance) / var(--char-center)));
    }

    .splitting.cells img {
        width: 100%;
        display: block;
    }

@supports ( display: grid ) {
    .splitting.cells {
        position: relative;
        overflow: hidden;
        background-size: cover;
        visibility: hidden;
    }

    .splitting .cell-grid {
        background: inherit;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: grid;
        grid-template: repeat( var(--row-total), 1fr ) / repeat( var(--col-total), 1fr );
    }

    .splitting .cell {
        background: inherit;
        position: relative;
        overflow: hidden;
    }

    .splitting .cell-inner {
        background: inherit;
        position: absolute;
        visibility: visible;
        /* Size to fit the whole container size */
        width: calc(100% * var(--col-total));
        height: calc(100% * var(--row-total));
        /* Position properly */
        left: calc(-100% * var(--col-index));
        top: calc(-100% * var(--row-index));
    }
    /* Helper variables for advanced effects */
    .splitting .cell {
        --center-x: calc((var(--col-total) - 1) / 2);
        --center-y: calc((var(--row-total) - 1) / 2);
        /* Offset from center, positive & negative */
        --offset-x: calc(var(--col-index) - var(--center-x));
        --offset-y: calc(var(--row-index) - var(--center-y));
        /* Absolute distance from center, only positive */
        --distance-x: calc( (var(--offset-x) * var(--offset-x)) / var(--center-x) );
        /* Absolute distance from center, only positive */
        --distance-y: calc( (var(--offset-y) * var(--offset-y)) / var(--center-y) );
    }
}


#content {
    overflow-x:hidden;
}
#title {
    top: 20px;
    right: 20px;
    left: 20px;
    z-index: 1;
    pointer-events: none;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
    text-align: left;
}

#planes {
    /* width of items * number of items */
    width: calc(((100vw / 1.75) + -20vw) * 6);
    padding: 0 2.5vw;
    min-height: 15rem;
    display: flex;
    /*align-items: center;*/
    cursor: url("../images/cursor-drag.svg"), auto;
    transition: background-color 0.5s;
}

    /*#planes.dragged {
        background-color: #03879a;
    }*/
.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}
.plane-wrapper {
    position: relative;
    width: calc(100vw / 1.75);
    margin: 0 2vw;
    text-align: justify;
        border: 1px solid white;
    padding:20px 40px;
}
    .plane-wrapper span {
        color: #edff00;
        margin-bottom: 40px;
        display:block;
    }
    .plane-wrapper strong {
           color: #cdcebd;
    display: block;
    text-transform: uppercase;
    font-size: 35px;
    font-weight: 900;
    }

/* disable pointer events and text selection during drag */

.accordion p{margin-bottom: 0;}
.plane {
    display: flex;
    overflow: hidden;
    transition: filter 0.5s;
}
    .plane > p {
        position:absolute;
        bottom:20px;
    }
/*#planes.dragged .plane {
    filter: grayscale(1);
}*/

.plane img {
    display: block;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    /* prevent original image from dragging */
    pointer-events: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
}

#drag-tip {
    position: fixed;
    right: 20px;
    bottom: 20px;
    left: 20px;
    z-index: 1;
    pointer-events: none;
    font-size: 0.9em;
    text-transform: uppercase;
    color: #032f4d;
    text-align: center;
}

/*@media screen and (orientation: portrait) {

    #content {
        max-height: 100vh;
    }

    #planes {
        overflow: hidden;
        width: 100vw;
        padding: 2.5vh 0;
        height: auto;
        flex-direction: column;
    }

    .plane-wrapper {
        width: 70vw;
        height: calc(100vh / 1.75);
        margin: 5vw 0;
    }

    .plane-title {
        font-size: 10vw;
    }
}*/

.team {
}
    .team img {
        margin-bottom:20px;
    }
    .team h5 {
        font-size: 1.3vw;
        line-height: 1.5vw;
        color:#000;
        margin-bottom:0;
    }
    .team span {
        font-size: 1.1vw;
        line-height: 1.5vw;
        color: #818181;
        margin-bottom:50px;
        display:block;
    }

footer {
    background-color: #cdcebd;
}
footer iframe {
    width: 100%;
    height: 280px;
}
    footer a {
        color: #666666;
        text-decoration: none;
    }
    footer ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    footer li {
        list-style-type: none;
        padding:0;
        margin:0;
        margin-bottom:7px;
    }


.accordion-flush .accordion-item .accordion-button {
    background-color:#cdcebd;
}

.plane-wrapper .tou-node, .prices .tou-node {
    display: inline-block;
    line-height: 1px;
    margin-bottom: 0;
    border-bottom: none;
    padding: 0;
}


