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

html, body {
	height: 100%;
}

body {
	margin: 0;
	width: 100%;
	height: 100%;
    font-family: 'Lato', sans-serif;
	font-size: 18px;
	-webkit-font-smoothing: subpixel-antialiased;
	-webkit-text-size-adjust: 100%;
    background-color: #000;
    color: #ddd
}

a{
    /*color: rgba(160, 130, 70, 1);*/
    color: #ddd
}
.noTouchScreen a:hover{
    /*color: #fff;*/
    color: #ddd
}
img, video {
	width: 100%;
	/*padding: 1em;*/
  	/*filter: grayscale(100%);*/
}

canvas {
    /* border: 5px solid red; */
}
.small-text{
    /*color: #AB8B63;*/
    color: #ddd
}
#landing{
    position: relative;
    background-color: #111;
    height: 100vh;
    /*padding: 0 80px;*/
    /*font-family: 'Space Grotesk', sans-serif;*/
    /*font-family: 'Oswald', sans-serif;*/
    /*font-family: 'Fjalla One', sans-serif;*/
    /*font-family: 'Abril Fatface', cursive;*/
}
#dna
{
    width: initial;
    height: 100vh;
    float: right;
}
#dna path
{
    fill: #fff;
}
#title
{
    font-size: 28px;
    text-align: center;
    width: 100%;
    left: 0;
    border-bottom: 2px solid #ddd;
    padding: 5px 0;
}

/* ##nav */
#nav{
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 20px;
}
.viewing_menu #nav{
    opacity: 1;
    pointer-events: initial;
    transition: opacity .5s;
}
.nav-item
{
    display: inline-block;
    text-decoration: none;
}

.noTouchScreen .nav-item:hover
{
    text-decoration: underline;
}
.nav-item + .nav-item
{
    margin-left: 20px;
}
.noTouchScreen .menu-item.yellow-is:hover
{
    /*background-color: #f3f2d4;*/
   
}
/*.noTouchScreen .menu-item.yellow-is > a:hover
{
    color: #000;
}*/

.menu-item > *{
    display: inline-block;
    padding: 7px 20px;
    text-decoration: none;
    font-size: 18px;
    cursor: pointer;
    font-weight: 700;
}
.noTouchScreen .menu-item > span:hover
{
    color: #fff;
}  
.page{
    width: 100vw;
    max-width: 100%;
    min-height: 100vh;
    max-height: 100%;
    /*position: relative;*/
    display: none;
    overflow: hidden;
    
}
#black-is .page
{
    font-size: 14vw;
    letter-spacing: .05em;
}
.preview .page{
    display: block;
}
.page.current{
    display: block;
}
.submenu{
    position: relative;
    margin-bottom: 5px;
}
.submenu-item{
    text-align: center;
}
.submenu-item > a{
    padding: 5px 10px;
    display: block;
}

.submenu-holder{
    /*transform: translate(0, 100%);*/
}
.noTouchScreen .submenu:hover .submenu-holder{
    transition: transform .25s;
    transform: translate(0, 0);
}
.submenu-mask{
    /*position: absolute;*/
    /*top:0;*/
    /*left: 0;*/
    /*transform: translate(0, -100%);*/
    /*height: 0;*/
    /*overflow: hidden;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*background-color: #000;*/
    /*z-index: 10;*/
}
.noTouchScreen .submenu:hover > .submenu-mask{
    height: initial;
}
.laptop-item{
    display: none;
}

#home-btn a
{
    display: block;
    width: 30px;
    height: 30px;
    padding: 5px;
    box-sizing: content-box;
    background-image: url(../../media/svg/home-grey.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}
.noTouchScreen #home-btn a:hover
{
    background-image: url(../../media/svg/home-w.svg);
}

body.yellow-is #home-btn a
{
    background-image: url(../../media/svg/home-k.svg);
}
/* ##matter */
#matter_ctner{
    /*width: 1000px;*/
    /*margin: 0 auto;*/
}

/* ##origin */


/* ##depth */




/* ##breath */
#breath_ctner{
    /*padding-left: 17vw;*/
    /*padding-top: calc(50vh - 16vw);*/
}
.breath_letter{
    display: inline-block;
    line-height: .75em;
    transform-origin: left bottom;
    transform: translateX(-50%);
    /*overflow: hidden;*/
    /*vertical-align: top;*/
}
.breath_letter .letter_wrapper{
    display: block;
    /*transform: translateX(-10%);*/
    opacity: 0;
    
}
.breath_letter:first-child{
    font-size: 3vw;
    margin-right: .5vw;
    animation: breath .75s forwards 0s ease-out;
}
.breath_letter:first-child .letter_wrapper{
    animation: breath-2 .75s forwards 0s ease-out;
}

.breath_letter:nth-child(2){
    font-size: 4.5vw;
    margin-right: .75vw;
    animation: breath .9s forwards .25s ease-out;
}
.breath_letter:nth-child(2) .letter_wrapper{
    animation: breath-2 .9s forwards .25s ease-out;
}

.breath_letter:nth-child(3){
    font-size: 7.5vw;
    margin-right: 1vw;
    animation: breath 1.05s forwards .65s ease-out;
}
.breath_letter:nth-child(3) .letter_wrapper{
    animation: breath-2 1.05s forwards .65s ease-out;
}

.breath_letter:nth-child(4){
    font-size: 16vw;
    margin-right: .5vw;
    animation: breath 1.2s forwards 1.05s ease-out;
}
.breath_letter:nth-child(4) .letter_wrapper{
    animation: breath-2 1.2s forwards 1.05s ease-out;
}

.breath_letter:nth-child(5){
    font-size: 24vw;
    animation: breath 1.35s forwards 1.45s ease-out;
}
.breath_letter:nth-child(5) .letter_wrapper{
    animation: breath-2 1.35s forwards 1.45s ease-out;
}

.breath_letter:nth-child(6){
    font-size: 40vw;
    animation: breath 1.5s forwards 1.85s ease-out;
}
.breath_letter:nth-child(6) .letter_wrapper{
    animation: breath-2 1.5s forwards 1.85s ease-out;
}

/*.flip_page p{
    color: #fff;
    font-size: 36px;
    
}*/
body.yellow-is #previous_page
{
    background-image: url(../../media/svg/previous-k.svg);
}
body.yellow-is #next_page
{
    background-image: url(../../media/svg/next-k.svg);
}
body.yellow-is #previous_page:hover
{
    background-image: url(../../media/svg/previous-k-hover.svg);
}
body.yellow-is #next_page:hover
{
    background-image: url(../../media/svg/next-k-hover.svg);
}

body.black-is #previous_page
{
    background-image: url(../../media/svg/previous-w.svg);
}
body.black-is #next_page
{
    background-image: url(../../media/svg/next-w.svg);
}
body.black-is #previous_page:hover
{
    background-image: url(../../media/svg/previous-w-hover.svg);
}
body.black-is #next_page:hover
{
    background-image: url(../../media/svg/next-w-hover.svg);
}
#previous_page p{
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translate(0, -50%);
}
.noTouchScreen .flip_page:hover
{
    opacity: 1;
    transition: opacity .5s;
}
#next_page{
    /*background: linear-gradient(270deg, rgba(255, 255, 255, .5) 0%, rgba(255, 255, 255, 0) 75%);*/
    right: 0;
}
#next_page p{
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
}
.last #next_page{
}
#infinite_page{
}
#infinite_ctner{
    height: 90vh;
    width: 75vw;
    margin: 0 auto;
    /*overflow: hidden;*/
}
.page[letter_arrange='slope_reverse']{
    padding: 1.5vw 2vw;
    position: relative;
}
.page[letter_arrange='slope_reverse'] .letter{
    text-align: center;
    position: absolute;
    line-height: .75em;
    /*overflow: hidden;*/
}

.page[letter_arrange='slope_reverse'] .letters_ctner{
    position: relative;
}
.page[letter_animation*='fade_in'] .letter_wrapper{
    opacity: 0;
}


.life_letter{
    /*font-size: 24vw;*/
    /*letter-spacing: .05em;*/
    line-height: .8em;
}
.page[letter_animation*='slide'] .letter{
    /*overflow: hidden;*/
}
.page[letter_animation*='slide_up'] .letter > .letter_wrapper{
    transform: translate3d(0, 100%, 0);
}
.page[letter_animation*='slide_right'] .letter > .letter_wrapper{
    transform: translate3d(-100%, 0, 0);
}
.page[letter_animation*='slide_down'] .letter > .letter_wrapper{
    transform: translate3d(0, -100%, 0);
}

.letters_ctner.center{
    position: absolute;
    top: 50%;
    width: 100vw;
    max-width: 100%;
    text-align: center;
    transform: translateY(-50%);
}
.letters_ctner.center-top{
    text-align: center;
}
.alert
{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background: #000;
    color: #fff;
    font-size: 24px;
    width: 100vw;
    max-width: 100%;
    height: 100vh;
    max-height: 100%;
    overflow: scroll;
    display: none;
    padding: 20px;
    line-height: 1.5em;
    text-align: center;
}
.alert p
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
body.rotate #rotate_alert
{
    display: block;
}
.shining{
    animation: shining2 1.5s 1 linear;
}
#projects-container
{
    position: fixed;
    width: 100vw;
    max-width: 100%;
    height: 100vh;
    /*background-color:#111;*/
    top: 0;
    left: 0;
    /*display: none;*/
}
.viewing_projects #projects-container
{
    /*display: block;*/
}
#projects-container .items-container
{
    text-align: center;
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*width: 50%;*/
    /*min-width: 350px;*/
}
.project-item
{
    display: inline-block;
    margin: 15px;
    border: 2px solid #ddd;
    width: 160px;
    height: 160px;
    padding-top: 66px;
    text-decoration: none;
}
#yellow-is.project-item
{
    background-color: #f3f2d4;
    color: #000;
    border-color: #f3f2d4;
}
.container
{
    padding: 30px 50px;
    padding-right: 70px;
    line-height: 28px;
}
.col.col-right
{
    margin-top: 20px;
}
.text-centered
{
    text-align: center;
}
.letters_ctner.position-centered
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.list-item .list-item-detail
{
    margin-top: 30px;
}
.list-item .thumbnail
{
    border: 1px solid #fff;
}
.list-item-button:after
{
    /*content: "";
    display: block;
    height: 0;
    clear: both;*/
}
.list-item-button a
{
    /*float: left;
    clear: both;*/
}
.letter.space
{
    height: 1em;
}
.seal
{
    position: absolute;
    bottom: 0;
    width: 5vh;

}
.seal > img
{
    /*width: 40px;*/
}
@keyframes depth{
    0%{
        transform: translateY(-50%);
        opacity: 0;
    }
    100%{
        transform: translateY(0);
        opacity: 1;
    }
}
.list-container
{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
}
.square
{
    position: relative;
}
.square-maker
{
    padding: 50% 0;
}
.thumbnail
{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
#info
{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 100%);
}
@keyframes embrace_an{
    0%{
        opacity: 0;
    }
    100%{
        /*transform: scale(8) translate(8%, 0);*/
        opacity: 1;
    }
}

@keyframes breath{
    0%{
        transform: translateX(-40%) scale(.75);
        
    }
    100%{
        transform: translateX(0) scale(1);
        
    }
}

@keyframes breath-2{
    0%{
        /*transform: translateX(-50px);*/
        opacity: 0;
    }
    100%{
        /*transform: translateX(0);*/
        opacity: 1;
    }
}

@keyframes fade_out{
    0%{
        opacity: 1;
    }
    100%{
        opacity: 0;
    }
}
@keyframes fade_in{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

@keyframes slide_up{
    0%{
        transform: translate3d(0, 100%, 0);
    }
    100%{
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slide_up_fade_in{
    0%{
        transform: translate3d(0, 100%, 0);
        opacity: 0;
    }
    100%{
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes slide_right_fade_in{
    0%{
        transform: translate3d(-100%, 0, 0);
        opacity: 0;
    }
    100%{
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes slide_down_fade_in{
    0%{
        transform: translate3d(0, -100%, 0);
        opacity: 0;
    }
    100%{
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}
@keyframes shining{
    0%{
        color: initial;
    }
    25%
    {
        color: rgba(255, 255, 255, 1);
    }
    50%{
        color: initial;
    }
    75%{
        color: rgba(0, 0, 0, 1);
    }
    100%{
        color: initial;
    }
}
@keyframes shining2{
    0%{
        color: #fff;
        opacity: 0;
    }
    50%{
        color: #fff;
        opacity: 1;
    }
    100%{
        color: #fff;
        opacity: 0;
    }
}
@keyframes fade_zoom_in {
    0%
    {
        transform: scale(1.2);
        opacity: 0;
    }
    100%
    {
        transform: scale(1);
        opacity: 1;
    }
}
/* laptop */
@media screen and (min-width: 768px) {
    body
    {
        font-size: 20px;
    }
    .menu-item > *
    {
        font-size: 20px;
    }
    #nav
    {
        /*opacity: 1;
        position: fixed;
        overflow: initial;
        background-color: transparent;
        pointer-events: initial;
        width: initial;
        height: initial;
        left: auto;
        right: 20px;
        padding: 15px 0;*/
    }
    #nav
    {
        opacity: 1;
        position: fixed;
        overflow: initial;
        background-color: transparent;
        pointer-events: initial;
        width: auto;
        height: initial;
        /*left: 0;*/
        /*right: 20px;*/
        /*padding: 15px 0;*/
    }
    .home #nav{
        /*height: 100%;
        padding: 0;
        right: 80px;*/
    }
    .home #nav{
        height: auto;
        /*padding: 0;*/
        /*right: 80px;*/
    }
    .home #nav .menu-item{
        /*position: absolute;
        width: 100%;
        text-align: center;
        font-weight: 700;*/
        /*display: inline-block;*/
    }
    .home #nav .menu-item:first-of-type{
        top: 18vh;
        transform: translate(0, -50%);
    }
    .home #nav .menu-item:nth-of-type(2){
        top: 50%;
        transform: translate(0, -50%);
    }
    .home #nav .menu-item:nth-of-type(3){
        top: 82vh;
        transform: translate(0, -50%);
    }
    #title
    {
        font-size: 40px;
        padding: 10px 0;
    }
    .menu-item a{
        padding: 10px 20px;
    }
    .noTouchScreen .menu-item a:hover{
        color: #fff;
        cursor: pointer;
    }
    #menu-toggle{
        display: none;
    }
    .submenu{
        margin-bottom: 0;
    }
    .submenu-holder{
        transform: translate(0, 100%);
    }
    .noTouchScreen .submenu:hover .submenu-holder{
        transition: transform .25s;
        transform: translate(0, 0);
    }
    .submenu-mask{
        position: absolute;
        top:0;
        left: 0;
        transform: translate(0, -100%);
        height: 0;
        overflow: hidden;
        width: 100%;
        height: 100%;
        /*background-color: #000;*/
        /*z-index: 10;*/
    }
    .noTouchScreen .submenu:hover > .submenu-mask{
        height: initial;
    }
    .laptop-item{
        display: block;
    }
    .mobile-item{
        display: none;
    }
    .submenu-item > a{
        padding: 10px 10px;
    }
    .container
    {
        width: 700px;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
    }
    .col
    {
        display: inline-block;
        width: 50%;
        padding-right: 15px;
    }
    .col.col-left
    {
        padding-right: 15px;
    }
    .col.col-right
    {
        padding-left: 15px;
    }
    /*.noTouchScreen .list-item .thumbnail
    {
        border: 1px solid transparent;
    }
    .noTouchScreen .list-item .thumbnail:hover
    {
        border: 1px solid #fff;
    }*/
    #about-container
    {
        font-size: 28px;
        line-height: 40px;
    }
}
@media screen and (min-width: 1160px) {
    .container
    {
        width: 700px;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
    }
}
/* vertical iPad / horizontal iPhone */
@media screen and (min-width: 500px) {
}
