@charset "UTF-8";
@import "animate.css";
@import "fonts.css";
/* @import url('https://fonts.googleapis.com/css2?family=Lora:wght@500&family=PT+Sans:ital,wght@0,400;0,700;1,400&display=swap'); */
/*font-family: 'IBM Plex Mono', monospace;
font-family: "Lora", serif;
font-family: 'Prata', serif;*/
@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface&family=Poppins:ital,wght@0,400;0,600;1,400&display=swap');

:root {
    /* Base colors - define actual values first */
    --base-black: #000000;
    --base-white: #ffffff;
    --base-gold: #b88f14;
    --base-gold-light: #e0ac10;
    
    /* Main colors - reference base colors */
    --color-black: var(--base-black);
    --color-white: var(--base-white);
    --color-gold: var(--base-gold);
    --color-gold-light: var(--base-gold-light);
    
    /* Grays */
    --color-gray-dark: #696969;
    --color-gray: #989898;
    --color-gray-light: #909090;
    --color-gray-lighter: #bdbdbd;
    
    /* Utility colors */
    --color-white-30: rgba(255, 255, 255, 0.3);
    --color-red: #f00;
    --color-gray-mid: #ccc;
    --title-font:"Abril Fatface", serif;
    --body-font:"Poppins", serif;
}

/* @font-face {
    font-family: "URW Danmark W00 Demi";
    src: url("0d9d78f4a80403e3795b5cb3e1a823d3.woff2") format("woff2"), url("0d9d78f4a80403e3795b5cb3e1a823d3.woff") format("woff"), chrome、firefox url("0d9d78f4a80403e3795b5cb3e1a823d3.ttf") format("truetype"), url("0d9d78f4a80403e3795b5cb3e1a823d3.svg#URW Danmark W00 Demi") format("svg");
    /* iOS 4.1- */
} */

.title {
    font-size: 40px;
    line-height: 40px;
    font-family: var(--title-font);
    font-weight: 400;
}

html,
body {
    margin: 0;
    padding: 0;
}

body {
    background: var(--color-black);
    color: var(--color-white);
    font-family: var(--body-font);
    scroll-snap-type: y mandatory;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
    font-family: var(--title-font);
    font-weight: 400;
}

body p {
    font-family: var(--body-font);
    font-size: 17px;
    line-height: 26px;
}

body a {
    font-family: var(--body-font);
    font-weight: 700;
    text-decoration: none;
}

body a:hover {
    color: var(--color-gold);
}

body.fixed {
    overflow: hidden;
}
p.text {
    color: #b7b7b7;
}
.content--alternate .content__item-title {
    color: var(--color-gold-light);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.nav,
.contact-link,
.social {
    position: fixed;
    z-index: 99;
    font-family: var(--body-font);
    text-align: right;
}

.nav {
    position: fixed;
    right: 3em;
    top: 0;
    z-index: 99;
    font-family: var(--body-font);
    text-align: right;
    padding-top: 3em;
    border-right: 2px solid var(--color-gold);
}

.nav ul {
    list-style: none;
    padding: 0;
    padding-right: 1em;
    height: 15vh;
}

.nav ul li {
    font-size: 20px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.1em;
    color: var(--color-white);
    line-height: 1;
}
.nav ul li.active {
    font-size: 22px;
    font-weight: 900;
}

.nav ul li a {
    text-decoration: none;
    color: var(--color-gold);
    position: relative;
    z-index: 1;
    font-weight: 900;
}

.nav ul li a:after {
    content: "";
    position: absolute;
    background: var(--color-gold);
    width: 0;
    height: 2px;
    left: -5px;
    top: 12px;
    z-index: -1;
    transition: width 0.3s ease-in;
}

.nav ul li a:hover {
    color: var(--color-white);
}

.nav ul li a:hover:after {
    width: 120%;
}

.logo {
    width: 60px;
    height: auto;
    position: fixed;
    top: 3em;
    left: 3em;
    z-index: 99;
}

.logo path {
    fill: var(--color-gold);
}

.contact-link {
    left: 1em;
    bottom: 5em;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    font-size: 14px;
    letter-spacing: .05em;
}

.contact-link p {
    font-family: var(--body-font);
    text-decoration: underline;
    cursor: pointer;
}

.social {
    right: 3em;
    bottom: 3em;
    font-size: 14px;
    display: flex;
    flex-direction: row;
    gap: 34px;
}

.snap {
    overflow-y: scroll;
    height: 100vh;
    scroll-snap-type: mandatory;
    scroll-snap-points-y: repeat(100vh);
    scroll-snap-type: y mandatory;
}

.slide {
    position: relative;
    height: 100vh;
    width: 100vw;
    scroll-snap-align: center;
    overflow: hidden;
    background-color: var(--color-black);
}

.slide h3 {
    font-size: 11vw;
    position: absolute;
    z-index: 0;
    line-height: 1;
    opacity: 0.13;
    writing-mode: vertical-rl;
    text-orientation: sideways;
    width: auto;
    top: 0.6em;
    user-select: none;
}

.slide .title {
    font-family: var(--title-font);
    font-size: 5vw;
    line-height: 4.5vw;
    width: min-content;
    min-width: fit-content;
    margin-bottom: 2em;
    opacity: 0;
    letter-spacing: .018em;
}

.slide p.subtitle {
    font-size: 12px;
    font-weight: 700;
    color: var(--color-gray-lighter);
    position: relative;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.slide p.subtitle:before {
    content: "";
    height: 1px;
    width: 28%;
    background: var(--color-gold);
    position: absolute;
    left: -30%;
    top: 10px;
}

#slide-0 p {
    font-family: var(--body-font);
}

#slide-0 .images {
    opacity: 0.8;
}

#slide-0 .images img {
    position: absolute;
}

#slide-0 .images img:nth-child(1) {
    width: 35%;
    right: 5vw;
    top: 58vh;
}

#slide-0 .images img:nth-child(2) {
    width: 15%;
    right: 25vw;
    top: 20vh;
}

#slide-0 .images img:nth-child(3) {
    width: 40%;
    right: 0em;
}

#slide-0 .images img:nth-child(4) {
    width: 15%;
    left: 35vw;
    top: 58vh;
}

#slide-0 .images img:nth-child(5) {
    width: 35%;
    left: 15vw;
    top: 30vh;
}

#slide-0 .images img:nth-child(6) {
    width: 15%;
    left: 8vw;
    top: 48vh;
}

#slide-0 .images img:nth-child(7) {
    width: 24%;
    left: 10vw;
    top: 12vh;
}

#slide-0 .images img:nth-child(8) {
    width: 20%;
    left: 27vw;
    top: 23vh;
}
#slide-0 video {
    width: 70%;
    align-self: center;
    /* border-radius: 8px; */
    /* border-top-left-radius: 8px;
    border-top-right-radius: 8px; */
}

.check {
    margin-top: 4em;
    font-size: 13px;
}

.check a {
    color: var(--color-gold);
}

.check a:hover {
    color: var(--color-white);
    text-decoration: underline;
}

.check span {
    display: inline-block;
    background: var(--color-white);
    width: 10vw;
    height: 1px;
    transition: width 0.3s ease-in;
    margin-right: 1em;
    vertical-align: middle;
}

.smallLine {
    content: "";
    height: 1px;
    width: 50%;
    background: rgba(255, 255, 255, 0.3);
    display: inline-block;
    vertical-align: middle;
}

#typed {
    position: relative;
    z-index: 2;
    margin-top: auto;
    bottom: 3em;
}

#typed:after {
    content: "";
    position: absolute;
    background: var(--color-black);
    width: 110%;
    height: 20px;
    top: 3px;
    left: -5%;
    z-index: -1;
    transition: width 2s ease-in;
}

.line {
    content: "";
    height: 1px;
    width: 50%;
    background: rgba(255, 255, 255, 0.3);
    position: absolute;
    right: 0;
    top: 30vh;
}

.main.link {
    color: var(--color-gold);
    font-size: 18px;
    font-weight: 900;
}

.slide:nth-of-type(even) {
    right: 0;
}

.slide:nth-of-type(odd) {
    left: 0;
}

.slide-text {
    padding: 6em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
}

.slide-text.center {
    align-items: center;
}

.slide-text.center p {
    width: 50%;
}

.title.center {
    font-size: 4em;
    width: 50%;
    min-width: 50%;
    line-height: 1.2;
    margin-bottom: .5em;
}

.slide-text.resume {
    padding: 6em;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: 100vh;
}

img {
    width: 100%;
    pointer-events: none;
}

a {
    color: inherit;
}

.contact-wrapper {
    position: fixed;
    display: flex;
    z-index: 999;
    height: 100vh;
    background: var(--color-black);
    top: 0;
    padding: 4em;
    visibility: hidden;
    width: 0;
    left: -40%;
    transition: all 0.6s ease-in;
}

.contact-wrapper .close {
    position: absolute;
    right: 2em;
    top: 2em;
    font-size: 2em;
    cursor: pointer;
}

.contact-wrapper .contact {
    writing-mode: vertical-rl;
    text-orientation: sideways;
}

.contact-wrapper .contact a {
    display: table;
}

.contact-wrapper .content {
    padding: 0 5em;
    width: 40vw;
}

.contact-wrapper .content h2 {
    margin-bottom: 2em;
    font-size: 4em;
}

.contact-wrapper .content .my-form .form-input {
    position: relative;
    margin-bottom: 3em;
}

.contact-wrapper .content .my-form .hello {
    position: absolute;
    left: 5%;
    top: 10px;
    font-size: 16px;
    font-weight: 200;
    color: #696969;
    transition: all 0.5s ease;
    pointer-events: none;
}

.contact-wrapper .content .my-form input[type=text]:focus~.hello,
.contact-wrapper .content .my-form textarea:focus~.hello,
.contact-wrapper .content .my-form input[type=text]:valid~.hello,
.contact-wrapper .content .my-form textarea:valid~.hello {
    display: block;
    color: var(--color-gold);
    top: -20px;
    font-size: 14px;
}

.contact-wrapper .content .my-form input[type=text]:focus~.enter,
.contact-wrapper .content .my-form textarea:focus~.enter {
    background-color: var(--color-gold);
    position: absolute;
    content: " ";
    height: 1px;
    left: 40%;
    top: 39px;
    transform: scaleX(5);
    width: 20%;
}

.contact-wrapper .content .my-form .enter {
    transition: all ease 0.5s;
    width: 100%;
    transform: scaleX(1);
}

.contact-wrapper .content .my-form textarea,
.contact-wrapper .content .my-form input,
.contact-wrapper .content .my-form button#submit {
    outline: none;
    border: 0;
    border-bottom: 1px solid #696969;
    background: transparent;
    height: 40px;
    width: 100%;
    font-size: 14px;
    color: var(--color-white);
    padding: 0.7em 1.5em;
    resize: none;
}

.contact-wrapper .content .my-form button#submit {
    text-align: right;
    font-size: 20px;
    padding: 0;
    color: var(--color-gold);
}

.contact-wrapper.show {
    display: flex;
    visibility: visible;
    left: 0;
    width: 100%;
}

.work-detail-wrapper {
    position: fixed;
    display: flex;
    z-index: 999;
    width: 100%;
    height: 100vh;
    background: var(--color-black);
    top: 0;
    width: 100vw;
    transition: all 0.3s ease-in;
    visibility: hidden;
    overflow-y: scroll;
    right: -100%;
}

.work-detail-wrapper #project-detail {
    width: 100%;
}

.work-detail-wrapper .work-detail {
    width: 100%;
    width: 70%;
    height: auto;
    margin: 5em auto;
    padding-bottom: 4em;
}
.work-detail-wrapper .work-detail h3 {
    font-size: 5em;
    margin: 1em 0 0.5em 0;
}

.work-detail-wrapper .close {
    position: fixed;
    right: 2em;
    top: 2em;
    font-size: 2em;
    cursor: pointer;
}

.work-detail-wrapper .title {
    font-size: 7em;
    line-height: 1;
    color: var(--color-white);
    margin-bottom: .2em;
}

.work-detail-wrapper .text {
    color: #bdbdbd;
    margin-bottom: 8em;
    width: 100%;
    column-count: 2;
    column-gap: 4em;
}

.work-detail-wrapper .subtitle {
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 0.5em;
    position: relative;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--base-gold);
}

.work-detail-wrapper .contact-link {
    bottom: 10em;
    font-size: 1.1em;
    left: 2em;
}

.work-detail-wrapper img {
    margin-bottom: 1.5em;
}

.work-detail-wrapper img:last-child {
    margin-bottom: 10em;
}

.work-detail-wrapper .video,
.work-detail-wrapper video {
    width: 100%;
}

.work-detail-wrapper.show {
    visibility: visible;
    right: 0;
}

.overlays.fadeInUp {
    height: 100vh;
}

#container {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sli {
    display: block;
    position: absolute;
    height: 200px !important;
    width: 200px !important;
    background: red;
}

.txt-wrapper {
    width: 30%;
    position: relative;
    z-index: 1;
}

.txt-wrapper p.desc {
    color: #909090;
}

.imgs-wrapper .img {
    position: absolute;
    width: 60%;
    right: 0;
    bottom: -3em;
    z-index: 0;
}

.resume-img {
    position: relative;
    width: 40%;
    align-self: center;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.resume-img img {
    position: absolute;
    width: 100%;
}

.img {
    width: 60%;
    position: absolute;
    right: 0;
    z-index: 0;
    bottom: 0;
}

.img.screens {
    width: auto;
    height: 100vh;
    opacity: 0;
}

.slide .text,
.slide .title,
.slide .check,
#slide-4 .img {
    opacity: 0;
}

.img.screens.slideInRight,
.title.fadeInUp,
.slide .text.fadeInUp,
.slide .title.fadeInUp,
.slide .check.fadeInLeft,
#slide-4 .img.slideInRight {
    opacity: 1;
}

.overlay {
    width: 100vw;
    height: 100vh;
    background: var(--color-white);
    position: fixed;
    transition: width 0.3s linear;
    left: -100%;
}

.overlay.one {
    background: #f00;
    z-index: 104;
}

.overlay.two {
    background: var(--color-gold);
    z-index: 103;
}

.overlay.three {
    background: #ccc;
    z-index: 102;
}

.overlay.four {
    background: var(--color-black);
    z-index: 101;
}

.content__item-title {
    font-family: var(--title-font);
}


ul.tags {
    list-style: none;
    padding: 0;
    margin: 5em 0 0;
    width:50%;
    font-size: 12px;
    li {
        display: inline-block;
        color: #909090;
        border: 1px solid #696969;
        border-radius: 45px;
        padding: .3em 1.2em;
        margin: .25em;
        span {
            color: #e6e6e6;
        }
    }
}

#project-detail {
    ul.tags {
        font-size: 14px;
        margin:0 0 5em;
        li {
            color: #b1b1b1;
        }
    }
}

/* .reveal-text {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    transition: clip-path 1s ease-in-out;
  }
  
  .reveal-text.revealed {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  } */

@media only screen and (max-width: 40em) {
    .logo {
        left: 2em;
    }
    .nav,
    .social {
        right: 1em;
    }
    .contact-link {
        left: -3em;
    }
    #slide-0 p {
        font-size: 6vw;
        line-height: 1;
        padding: 2em;
    }
    #slide-0 .images {
        opacity: 1;
    }
    .images img {
        display: none;
    }
    .slide-text {
        justify-content: flex-start;
        padding: 7em 3em 0;
    }
    .slide-text.center {
        justify-content: center;
    }
    .txt-wrapper {
        width: 100%;
    }
    .imgs-wrapper .img {
        width: 140%;
        bottom: 0;
        right: -55vw;
    }
    .slide h3 {
        font-size: 20vw;
    }
    .slide .title {
        font-size: 10vw;
        line-height: 9vw;
        margin-bottom: 1em;
    }
    .img {
        right: -55vw;
    }
    #slide-4 .img {
        right: -55vw;
        width: 140%;
    }
    .img.screens {
        height: 55vh;
    }
    .slide-text.resume {
        padding: 4em;
    }
    .title.center {
        font-size: 2em;
        line-height: 1;
    }
    .title.center,
    .slide-text.center p {
        width: 100%;
    }
    .resume-img {
        display: none;
    }
    .content--alternate .content__item-title,
    .content--alternate .content__item:nth-child(even) .content__item-title {
        font-size: 4em;
    }
    .work-detail-wrapper .close {
        right: 0.75em;
        top: 0.75em;
        font-size: 2.5em;
    }
    .work-detail-wrapper .work-detail {
        width: 90%;
        margin: 6em auto;
    }
    .work-detail-wrapper .title {
        font-size: 5em;
        margin-bottom: 0.5em;
    }
    .work-detail-wrapper .text {
        margin-bottom: 6em;
        column-count: 1;
        width: 100%;
    }
    .work-detail-wrapper .contact-link {
        padding: 3em 0em;
        text-align: left;
        position: static;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}


/*# sourceMappingURL=style.css.map */