/* 
    Page 
*/

/* 
    Kirby Text 
*/

.kt p {
    margin-bottom: 1em;
}

.about-blocks .kt p {
    margin-bottom: 0.4em;
}

.kt strong {
    font-weight: 700;
}

.kt a {
    text-decoration: underline;
    text-decoration-color: black;
    text-decoration-thickness: 1.2px;
    text-underline-offset: 0.2em;
}

/* Desktop 4K */
@media only screen and (min-width: 92rem) {
    .kt a {
        text-decoration: underline;
        text-decoration-color: black;
        text-decoration-thickness: 2px;
        text-underline-offset: 0.2em;
    }
}

/* Underlined */

u {
    text-decoration: underline;
    text-decoration-color: black;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.15em;
}


.mar-left-link a {
    margin-left: 0.5rem;
}


/* 
    List <li>
*/

li {
    list-style: none;
}


/* 
    Tags
*/

.tags {
    display: flex;
}

header .tags {
    display: flex;
    margin: 0px 0px;
}

.tag {
    position: relative;
    width: fit-content;
    height: fit-content;
    margin-right: 1.25em;
    display: flex;
    transition: rotate 250ms ease 200ms, color 0s ease 0s;
}

.tag-exp::before {
    content: "·";
    color: black ;
}

.tag-exp::before:not:first-child {
    content: none;
}

.tag::before {
    content: "";
    display: block;
    position: absolute;
    top: -0.2rem;
    left: -0.5rem;
    right: -0.5rem;
    bottom: -0.2rem;
    z-index: -1;
    transition: background-color 0s ease 0s;
    border-radius: 2px;
} 

.tag.active,
.tag:hover { 
    color: white;
    rotate: var(--randomRotation, 0);
}

.tag.active::before,
.tag:hover::before {                                                                                                                        
    background-color: black;
}

/*
    Form
*/

/* form {
    /* width: 100%;
    height: auto;
    padding: 12px 20px;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: rgb(232, 232, 232);
    resize: none;
} */

/* Tablet (> 552px) */
@media only screen and (min-width: 34.5em) {
    form {
        /* width: 85%;
        height: auto;
        margin-inline-start: 3.3em; */
    }
}

/* Tablet (> 768px) */
@media only screen and (min-width: 48em) {
    form {
        /* width: 100%;
        height: auto;
        margin-inline-start: 0em; */
    }
}

/* Desktop */
@media only screen and (min-width: 64rem) {
    form {
        /* width: 100%;
        height: auto;
        margin-inline-start: 0em; */
    }
}

/* Desktop 4K */
@media only screen and (min-width: 92rem) {

    form {
        /* width: 100%;
        height: auto;
        padding: 20px 20px;
        box-sizing: border-box;
        border-radius: 2px;
        background-color: rgb(232, 232, 232);
        resize: none;
        margin-inline-start: 0em; */
    }
}


/* Input */

input {border:0; outline:none;}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance:none;
}

input {
    border: 0px solid;
    padding: 0.6rem 1rem;
    width: 100%;
    color: #C3C3C3;
    border-radius: 0;
}

.about-form input {
    border: 0px solid;
    border-bottom: 0.15rem solid black;
    padding: 0.6rem 0rem;
    width: 100%;
    color: #8A8A8A;
    border-radius: 0;
}

.about-form input::placeholder {
    color: #C3C3C3;
}

.form-message input {
    height: 8rem;
}

input::placeholder {
    color: rgb(201, 201, 201);
}


/* Text Area */

textarea {
    width: 100%;
    height: 150px;
    padding: 0.7rem 0rem;
    box-sizing: border-box;
    border: 0px solid #ccc;
    border-bottom: 0.15rem solid black;
    border-radius: 0;
    color: #8A8A8A;
    resize: none;
    outline:none;
}

textarea::placeholder {
    color: #C3C3C3;
}

/* 
    Home
*/

.home {
    /* Hide vertical and horziontal scrollbar */
    overflow-y: hidden;
    overflow-x: hidden;
}

.home-logo {
    display: grid;
    z-index: 1;
    height: 100vh;
    width: 100vw;
}

.home-logo svg {
    width: 12rem;
    height: auto;
    place-self: center;
    position: fixed;
}

.home-logo p {
    height: auto;
    place-self: center;
    position: fixed;
}

.home-logo .logo-hovered {
    fill: #E9E9E9;
}




/*  Lighter Color */

.chip-tag {
    background-color: #EEEEEE;
}

/* 
    Project Page
*/
.project {
    margin-top: 4rem;
    margin-bottom: 1rem;
    color: black;
}

.project-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;

}

.project-tags .chip-tag {
    white-space: nowrap;
    margin: 0.125rem 0.125rem;
}

.projects-side-nav {
    display: none;
}

.project,
.project-title,
.project-cover-image,
.project-blocks,
.blocks-figure-image,
.block-figure-caption,
.project-credits,
.project-cover-vertical,
.project-cover-horiz,
.project-description,
.project-tags {
    grid-column: 1/-1 ;
}

/* Slideshow */
.project-slideshow {
    grid-column: 1/-1;
}

/* Cover Image */
.project-cover-image,
.block-gallery-figure {
    position: relative;
}

.project-cover-image.fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    background-color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    padding: 1rem;
}

.cover-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Desktop */
@media only screen and (min-width: 36rem) {
    .project {
        margin-top: 0.5rem;
        margin-bottom: 2rem;
        grid-column: 1/-1;
    }

    .projects-side-nav {
        display: none;
    }

    .project-title {
        grid-column: 3/-3;
    }

    .project-cover-image {
        grid-column: 2/-2;
    }

    .project-cover-vertical {
        grid-column: 2/-2;
    }

    .project-cover-image.fullscreen {
        padding: 2rem;
    }

    .project-cover-horiz {
        grid-column: 1/-1;
    }

    .project-slideshow {
        grid-column: 2/-2;
    }

    .project-blocks {
        grid-column: 2/-2;
    }

    .project-description,
    .project-tags {
        grid-column: 3/-3;
    }

    .project-credits {
        grid-column: 2/-2;
    }
}

/* Desktop */
@media only screen and (min-width: 48rem) {
    .projects-side-nav {
        display: block;
        grid-column: 1/5;
    }

    .project {
        margin-bottom: 8rem;
        grid-column: 5/-1;
    }

    .project-title {
        grid-column: 3/-3;
        margin-top: 0.5rem;
    }

    .project-cover-vertical {
        grid-column: 4/-4;
    }

    .project-cover-horiz {
        grid-column: 2/-2;
    }

    .project-blocks {
        grid-column: 3/-3;
    }

    .project-credits {
        grid-column: 3/-3;
    }
}

/* Desktop (> 1440px) */
@media only screen and (min-width: 92rem) {
    .project-cover-horiz {
        grid-column: 3 / -3;
    }

    .project-cover-vertical {
        grid-column: 4/-4;
        width: 100%;
        justify-self: center;
    }

    .project-blocks {
        grid-column: 4 / -4;
    }

    .project-credits {
        grid-column: 4 / -4;
    }
}



/* 
    Blocks 
*/
.block-figure {
    position: relative;
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    column-gap: 1.25rem;
    margin-top: 3rem;
}

.block-figure-vertical .blocks-figure-fullscreen {
    grid-column: 1 / -1;
}


.block-figure-caption {
    margin-top: 0.5rem;
}

/* Desktop */
@media only screen and (min-width: 36rem) {
    .blocks-figure {
        display: grid;
        grid-template-columns: repeat(8, 1fr);
        column-gap: 1.25rem;
        margin-top: 3rem;
    }

    .block-figure-image-horiz,
    .block-figure-image-vertical {
        grid-column: 1/-1;
    }

    .block-figure-caption {
        margin-top: 0.6rem;
        padding: 0rem 1.5rem;
    }
}


/* Desktop */
@media only screen and (min-width: 48rem) {
    .blocks-figure {
        display: grid;
        grid-template-columns: repeat(8, 1fr);
        column-gap: 1.25rem;
        margin-top: 3rem;
    }

    .block-figure-vertical .blocks-figure-fullscreen {
        border-radius: 4px;
        grid-column: 1 / -2;
    }    

    .block-figure-image-horiz {
        border-radius: 4px;
        grid-column: 1/-1;
    }

    .block-figure-image-vertical {
        border-radius: 4px;
        grid-column: 2/-2;
    }

    .block-figure-caption {
        margin-top: 0.8rem;
        padding: 0 1.8rem;
    }
}

/* Fullscreen */
.block-figure.fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    padding: 1rem;
    margin: 0;
}

.block-figure.fullscreen .block-figure-image {
    max-width: calc(100vw - 2rem);
    max-height: calc(100vh - 4rem);
    object-fit: contain;
    
}


/* 
    Gallery (2 Images)
*/

.block-gallery {
    display: block;
}
.block-gallery-figure {
    position: relative;
}

.block-gallery-figure img {
    border-radius: 2px;
}

.block-gallery-figure:first-child {
    margin-bottom: 0.8rem ;
}

/* Tablet */
@media only screen and (min-width: 36rem) {
    .block-gallery {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 1rem;
    }

    .block-gallery-figure:first-child {
        margin-bottom: 0rem ;
    }
}

/* Tablet */
@media only screen and (min-width: 48rem) {
    .block-gallery {
        column-gap: 1.25rem;
    }
}


/* Desktop */
@media only screen and (min-width: 92rem) {
    .block-gallery {
        column-gap: 1.5rem;
    }
}

/* Fullscreen */
.block-gallery-figure.fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    padding: 1rem;
}

.block-gallery-figure.fullscreen .block-gallery-figure-image {
    max-width: calc(100vw - 2rem);
    max-height: calc(100vh - 4rem);
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Fullscreen Button */
.fullscreen-button {
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    position: absolute;
    display: flex;
    cursor: url("../icons/zoom-in.svg"), auto;
    ;
}

.fullscreen .fullscreen-button {
    cursor: default;
}

.fullscreen-button-close {
    display: none;
}

.fullscreen .fullscreen-button-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.5rem 1rem;
}


/* 
    About
*/

.about-aside {
    grid-column: 1/-1;
    grid-row: 2;
    margin-top: 2rem;
}

.about-form,
.about-blocks,
.about-layout {
    grid-column: 1/-1;
}

.about-blocks .t-h3 {
    line-height: 1.6rem;
}

.about-layout {
    /* margin-left: 1.2rem; */
}

.about-layout-content {
    margin-bottom: 2rem;
}

/* Tablet (> 576px) */
@media only screen and (min-width: 36em) {
    
    .about-aside {
        grid-column: 3/-3;
        grid-row: 1;
        margin-top: 0;
        margin-bottom: 2rem;
        /* position: sticky;
        top: 9rem; */
    }
    
    .about-form,
    .about-blocks,
    .about-layout {
        grid-column: 3/-3;
    }

    .about-blocks .t-h3 {
        line-height: 1.5rem;
    }

    .about-layout {
        margin-left: 0rem;
    }
}

/* Tablet (> px) */
@media only screen and (min-width: 48em) {

    .about-aside {
        grid-column: 3/-3;
        position: sticky;
        top: 9rem;
    }

    .about-aside {
        grid-column: 2/5;
        margin-bottom: 0rem;
    }
    
    .about-form,
    .about-blocks {
        grid-column: 7/-4;
    }
    
    .about-layout {
        grid-column: 7/-4;
    }

    .about-blocks .t-h3 {
        line-height: 1.8rem;
    }
}

/* Tablet (> px) */
@media only screen and (min-width: 92em) {
    .about-form,
    .about-blocks {
        grid-column: 7/-5;
    }

    .about-layout {
        grid-column: 7/-5;
    }
}

/* Form */

.form-name,
.form-email,
.form-message {
    grid-column: 1/-1;
}

.form-button {
    grid-column: 1/-1;
    justify-content: center;
    align-items: center;
    place-self: center;
}

button.form-button {
    width: fit-content;
    height: fit-content;
    background-color: #EAEAEA;
    padding: 0.5rem 0.9rem;
    border-radius: 6px;
    color: black;
}

button.form-button:hover {
    background-color: #d5d5d5;
}


.index-title-grid{
    display: grid;
}
.index-count {
    grid-row: 1;
}

.index-title-name {
    grid-row: 1;
    margin-left: 1.5rem;
}

.index-mobile-info {
    grid-row: 2;
}


/* Tablet (> 576px) */
@media only screen and (min-width: 36em) {
    
    .form-name {
        grid-column: 1/4;
    }

    .form-email {
        grid-column: 4/-1;
    }

    .form-message {
        grid-column: 1/-1;
    }
}

/* Index */

.index {
    display: none;
}

.project-color {
    background-color: var(--project-color);
}

.index-tag-comma:first-child {
    display: none;
}

.index-list {
    position: relative;
    margin-bottom: 0.5rem;
}

.index-count {
    grid-column: 1 / 1;
} 

.index-count p{
    align-self: center;
} 

.index-image,
.index-year,
.index-category,
.index-location {
    display: none;
}

.index-mobile-info {
    display: inline;
    grid-column: 2/-1;
    color: #B4B4B4;
    margin-left: 1.5rem;
}

.index-project-color {
    background-color: var(--color);
    content: " ";
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 6px;
    margin-top: 0.5rem;
}

p.index-count {
    margin-top: 0.3em;
}

.index-title-name {
    grid-column: 2 / -1;
}

/* Tablet (> 576px) */
@media only screen and (min-width: 36em) {
    .index-title {
        margin-left: 1rem;
    }

    .index-nr-top {
        grid-column: 1/1;
    }

    .index-title-top {
        grid-column: 2/-1;
    }

    .index-top {
        display: none;
        /* grid-column: 1 / 6; */
    }

    .index-top-mob{
        grid-column: 1 / 6;
    }

    .index.grid  {
        display: grid;
        grid-template-columns: repeat(16, 1fr);
        column-gap: 1.25rem;
    }

    .index-nr {
        grid-column: 1/1;
        /* margin-left: 1.55rem; */
    }

    .index-list {
        position: relative;
        margin-bottom: 0.5rem;
    }

    .index-count {
        grid-column: 1/1;
    } 

    .index-count p{
        align-self: center;
    } 


    .index-title {
        margin-left: 0rem;
        grid-column: 1/7;
    }

    .index-year {
        display: block;
        grid-column: 7/9;
    }

    .index-category {
        display: inline;
        grid-column: 9/13;
    }

    .index-location {
        display: block;
        grid-column: 13/-1;
    }

    .index-mobile-info {
        display: none;
    }

    .index-image img {
        display: none;
    }
}

/* Desktop */
@media only screen and (min-width: 48rem) {
    .index-top {
        display: block;
        grid-column: 1 / 6;
    }

    .index-title-grid {
        display: grid;
        /* grid-template-columns: repeat(2, 1fr); */
        grid-template-columns: 10% 90%;
        column-gap: 1.25rem
    }

    .index-title-name {
        grid-row: 1;
        margin-left: 0;
    }    

    .index-nr {
        grid-column: 1/1;
    }

    .index-count {
        grid-column: 1/1;
    } 

    .index-title {
        grid-column: 1/6;
    }

    .index-year {
        display: block;
        grid-column: 10/11;
    }

    .index-category {
        display: inline;
        grid-column: 12/15;
    }

    .index-location {
        display: block;
        grid-column: 15/-1;
    }

    .index-image img {
        display: block;
    }
}

/* Desktop */
@media only screen and (min-width: 92rem) {
    .index-year {
        display: block;
        grid-column: 11/11;
    }

    .index-image img {
        display: block;
    }

    .index-count {
        margin-left: 0rem;
        grid-column: 1 / 1;
    }

    .index-nr {
        /* margin-left: 2.1rem; */
        grid-column: 1 / 1;
    }
}

/* Hover Index */

@media screen and (hover: hover) {

    .index-list {
        transition: 200ms ease;
    }

    .index-content.hover .index-list {
        filter: grayscale(1) opacity(40%);
    }

    .index-content .index-list:hover,
    .index-content .index-list:focus,
    .index-content .index-list:focus-within {
        filter: grayscale(0) opacity(100%);
    }

    .index-content .index-list:hover .index-image,
    .index-content .index-list:focus .index-image,
    .index-content .index-list:focus-within .index-image {
        display: block;
    }

    /* .index-image .visible {
        opacity: (100%);
    } */

    .index-image {
        position: fixed;
        justify-self: center;
        grid-column: 6/10;
        width: 90%;
        height: auto;
        top: var(--posY, 0);
        
    }

    /* Desktop */
    @media only screen and (min-width: 92rem) {
        .index-image {
            position: fixed;
            justify-self: center;
            grid-column: 6/11;
            width: 70%;
            height: auto;
            top: var(--posY, 0);
            
        }
    }
    
    .index-image img {
        border-radius: 3px;
    }

    /* On hover index list content turns the project color */
    .index-content .index-list:hover .index-count p,
    .index-content .index-list:focus .index-count p,
    .index-content .index-list:focus-within .index-count p,
    .index-content .index-list:hover .index-title,
    .index-content .index-list:focus .index-title,
    .index-content .index-list:focus-within .index-title,
    .index-content .index-list:hover time,
    .index-content .index-list:focus time,
    .index-content .index-list:focus-within time,
    .index-content .index-list:hover .index-category,
    .index-content .index-list:focus .index-category,
    .index-content .index-list:focus-within .index-category,
    .index-content .index-list:hover .index-location,
    .index-content .index-list:focus .index-location,
    .index-content .index-list:focus-within .index-location {
        color: var(--color);
    }
}

a:focus,
button:focus {
    outline-color: rgb(180, 180, 180);
}

