/*global*/

/*Montserrat font from file*/
@font-face {
    font-family: "Montserrat";
    font-style: normal;
    font-weight: 100, 200, 300, 400, 500, 600, 700, 800, 900;
    src: url(../Montserrat/Montserrat-VariableFont_wght.ttf) format("truetype");
}


* {
    /* box-sizing: border-box; */
    font-family: 'Montserrat', sans-serif;

}


:root {
    /*default colors... dark scheme*/
    --blue: #133982;
    --teal: #0fe1c2;
    --darkblue: #18272b;
    --darkgreen: #18575b;
    --lgtorange: #febd02;
    --orange: #f88628;
    --gray: #e4e4e4;

    /*light scheme*/
    --lightblue: #33979d;
}

body {
    background-color: var(--darkgreen);
    background-color: #c33434;
    background-color: #d75f5f;
    background-color: darkgray;
    background-color: #dbd386;
    /* background-color: rgb(15 49 65); */
    /* background-color: rgb(80 129 151); */

    background-color: #f88628;
    background-color: var(--lightblue);
    background-color: #5fc177;

    background-color: #999780;

    height: 96vh;
    /* margin: 0; */
    display: flex;
    flex-direction: column;
    align-items: center;
}

body.beige {
    background-color: #999780;
}

body.orange {
    background-color: #f88628;
}

body.blue {
    background-color: var(--lightblue);
}

body.green {
    background-color: #5fc177;
}


header {
    z-index: 1;
    position: fixed;
    display: none;
}


.hidden {
    display: none;
}

.block {
    display: block;
}

.flex {
    display: flex;
}

.invalid {
    border: 3px solid yellow;
}

.error-text {
    font-size: 1rem;
    text-align: center;
    color: black;
    font-weight: 500;
    background-color: var(--incorrect);
    border: 2px dashed var(--warning);
    width: 200px;
    margin: 0 auto;
    padding: 10px;
}


#logo {
    width: 275px;
}

#mode-toggle {
    background-color: var(--gray);
    color: black;
    border-style: none;
    padding: 10px;
    border-radius: 10px;
    font-size: 1.1rem;
}

.w-ten {
    width: 12%;
}

.w-twenty {
    width: 20%;
}

.w-thirty {
    width: 30%;
}

.w-forty {
    width: 40%;
}

.w-fifty {
    width: 50%;
}

.w-sixty {
    width: 60%;
}

.w-seventy {
    width: 70%;
}

.w-eighty {
    width: 80%;
}

.w-ninety {
    width: 90%;
}

.w-hundred {
    width: 100%;
}

/*end global*/


/*animation*/

@keyframes bringin {
    from {
        transform: translateX(-100%);
        opacity: 0;
        display: none;
    }

    to {
        transform: translateX(0);
        opacity: 1;
        display: flex;
    }
}

@keyframes bringout {
    from {
        transform: translateX(0);
        opacity: 1;
    }

    to {
        transform: translateX(100%);
        opacity: 0;
    }
}

@keyframes slidedown {
    from {
        transform: translateY(0);
        opacity: 1;
    }

    to {
        transform: translateY(100%);
        opacity: 0;
    }
}

@keyframes slideup {
    from {
        transform: translateY(100%);
        opacity: 0;
    }

    to {
        transform: translateY(0%);
        opacity: 1;
    }
}

@keyframes cta-left {
    0% {
        transform: translateX(0);
        opacity: 1;
    }

    40% {
        opacity: 1;
    }

    90% {
        transform: translateX(-2000px);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }

}


@keyframes cta-right {
    0% {
        transform: translateX(-2000px);
        opacity: 0;
    }

    100% {
        transform: translateX(0%);
        opacity: 1;
    }

}

@keyframes about-down {
    0% {
        transform: translateY(-600px);
        opacity: 0;
    }

    100% {
        transform: translateY(0px);
        opacity: 1;
    }

}


@keyframes about-up {
    0% {
        transform: translateY(0px);
        opacity: 1;
    }

    40% {
        opacity: 1;
    }

    90% {
        transform: translateY(-600px);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }

}

@keyframes building-right {
    0% {
        transform: translateX(-2000px);
        opacity: 0;
    }

    100% {
        transform: translateX(0px);
        opacity: 1;
    }

}

@keyframes building-left {
    0% {
        transform: translateX(0);
        opacity: 1;
    }

    40% {
        opacity: 1;
    }

    70% {
        opacity: 1;
    }

    90% {
        transform: translateX(-2000px);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }

}

@keyframes learning-left {
    0% {
        transform: translateX(2000px);
        opacity: 0;
    }

    100% {
        transform: translateX(0px);
        opacity: 1;
    }

}

@keyframes learning-right {
    0% {
        transform: translateX(0);
        opacity: 1;
    }

    40% {
        opacity: 1;
    }

    70% {
        opacity: 1;
    }

    90% {
        transform: translateX(2000px);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }

}


@keyframes contact-up {
    0% {
        transform: translateY(1000px);
        opacity: 0;
    }

    100% {
        transform: translateY(0px);
        opacity: 1;
    }

}


@keyframes contact-down {
    0% {
        transform: translateY(0px);
        opacity: 1;
    }

    40% {
        opacity: 1;
    }

    70% {
        opacity: 1;
    }

    90% {
        transform: translateY(1000px);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }

}

@media (prefers-reduced-motion: no-preference) {

    #bubble-menu.in {
        opacity: 0;
        animation: bringin 0.7s ease-out forwards;
    }

    #bubble-menu.out {
        animation: bringout 0.7s ease-out forwards;
    }

    #cool-stuff.out {
        animation: slidedown 0.5s ease-out forwards;
    }

    #cool-stuff.in {
        animation: slideup 0.5s ease-out forwards;
    }

    #cta.out {
        animation-name: cta-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #cta.in {
        animation-name: cta-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #about.in {
        animation-name: about-down;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #about.out {
        animation-name: about-up;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #building.out {
        animation-name: building-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #building.in {
        animation-name: building-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #posts.in {
        animation-name: learning-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #posts.out {
        animation-name: learning-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #contact-view.in {
        animation-name: contact-up;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #contact-view.out {
        animation-name: contact-down;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }
}

@media (prefers-reduced-motion: reduce) {

    #bubble-menu.in {
        opacity: 0;
        animation: bringin 0.7s linear forwards;
    }

    #bubble-menu.out {
        animation: bringout 0.7s linear forwards;
    }

    #cool-stuff.out {
        animation: slidedown 0.5s linearforwards;
    }

    #cool-stuff.in {
        animation: slideup 0.5s linear forwards;
    }

    #cta.out {
        animation-name: cta-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #cta.in {
        animation-name: cta-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #about.in {
        animation-name: about-down;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #about.out {
        animation-name: about-up;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #building.out {
        animation-name: building-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #building.in {
        animation-name: building-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #posts.in {
        animation-name: learning-left;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }


    #posts.out {
        animation-name: learning-right;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #contact-view.in {
        animation-name: contact-up;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-delay: 0.1s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    #contact-view.out {
        animation-name: contact-down;
        animation-duration: 1s;
        animation-timing-function: cubic-bezier(0, 0, 1, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }
}

/*end animation*/


/*background*/

/* #background {
    position: fixed;
    z-index: -1;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
} */

.slants {
    transform: skew(14deg);
    height: 150vh;
    width: 1000px;
}

#slant-one {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 31%, rgba(157, 204, 224, 1) 100%, rgba(201, 209, 209, 1) 41%);
    position: relative;
    left: 30px;
}

#slant-two {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 17%, rgba(157, 204, 224, 1) 100%, rgba(201, 209, 209, 1) 41%);
    position: relative;
    left: 25px;
}

#slant-three {
    /* background: linear-gradient(180deg, rgba(42, 123, 155, 1) 20%, rgb(255 255 255) 100%, rgb(255 255 255) 41%); */
    /* background: linear-gradient(180deg, rgba(42, 123, 155, 1) 20%, rgb(255 255 255) 100%, rgb(255 255 255) 41%); */
    position: relative;
    left: 20px;
    /* background-color: rgba(42, 123, 155, 1);
    background-color: rgb(71 151 183); */
    /* background: linear-gradient(100deg, rgb(67 139 167) 60%, rgb(255 255 255) 100%, rgb(255 255 255) 42%); */

    box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5), -10px -10px 5px rgba(0, 0, 0, 0.5);
    background-color: rgb(12 36 47);
}

#slant-four {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 30%, rgb(255 255 255) 100%, rgb(255 255 255) 41%);
    position: relative;
    left: 15px;
}

#slant-five {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 40%, rgb(255 255 255) 100%, rgb(255 255 255) 41%);
    position: relative;
    left: 10px;
}


#slant-six {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 17%, rgba(157, 204, 224, 1) 100%, rgba(201, 209, 209, 1) 41%);
    position: relative;
    left: 5px;
}


#slant-seven {
    background: linear-gradient(180deg, rgba(42, 123, 155, 1) 31%, rgba(157, 204, 224, 1) 100%, rgba(201, 209, 209, 1) 41%);
}


/*end background*/


/*cta*/

#cta,
#about,
#building,
#posts,
#contact-view {
    height: 85vh;
    /* height: 560px; */

    margin: 32px auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 400px;
    box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5);
    background-color: rgb(40 65 77);
    overflow: hidden;
    width: 330px;
    position: fixed;

}

#cta.beige h1,
#cta.beige h2 {
    color: lightgray;
}

#cta.orange h1,
#cta.orange h2 {
    color: #f5a96a;
}

#cta.blue h1,
#cta.blue h2 {
    color: #79d0d5;
}

#cta.green h1,
#cta.green h2 {
    color: #96d1a4;
}



#my-name {
    /* font-size: 4rem;
    font-weight: 900;
    color: lightgray;
    text-align: center;
    position: relative;
    top: 90px;
    width: 400px;
    margin: 0 auto; */

    font-size: 3rem;
    font-weight: 900;
    color: lightgray;
    text-align: center;
    position: relative;
    top: 95px;
}

.cta-img {
    width: 400px;
    height: 400px;
    margin: 0px auto;
    display: block;
}

.cta-img.hidden {
    display: none;
}

#expl {
    font-size: 2.2rem;
    font-weight: 600;
    color: lightgray;
    text-align: center;
    position: relative;
    bottom: 100px;
}

section {
    width: 340px;
    margin: 100px auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

#explore {
    height: 300px;
}

/*end cta*/


/*color chg functionality*/

#bubble-menu {
    z-index: 1;
    position: fixed;
    /* width: 350px; old width before 5th element */
    width: 350px;
    /* display: flex; */
    flex-direction: row;
    justify-content: center;
    align-items: center;
    /* background-color: lightcoral; */
    bottom: 30px;
    /* display: none; */
}

.bubble-icon {
    width: 50px;
    border-radius: 50px;
    background-color: white;
    height: 50px;
    border: 3px solid black;
    background-color: #676555;
    padding: 2px;
}

#bubble-menu.beige .bubble-icon {
    background-color: #676555;
}

#bubble-menu.orange .bubble-icon {
    background-color: #bd7132;
}

#bubble-menu.blue .bubble-icon {
    background-color: #226c71;
}

#bubble-menu.green .bubble-icon {
    background-color: #3b834d;
}


#about-me {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#bubble-close {
    position: fixed;
    top: -58px;
    right: -10px;
    /* color: lightcoral; */
    color: lightgray;
    /* border: 2px solid; */
    padding: 0px 10px;
    /* border-radius: 50px; */
    /* height: 46px; */
    /* display: flex; */
    flex-direction: column;
    justify-content: center;
    /* align-items: center; */
}

#cool-stuff {
    background-color: #413b3b;
    color: lightgray;
    font-size: 2.5rem;
    border: none;
    padding: 2px;
    position: fixed;
    bottom: -5px;
    width: 70%;
    border-radius: 10px 10px 0px 0px;
    font-weight: 800;
}

/*
#color-circle {
    width: 77px;
    border-radius: 50px;
    background-color: white;
    height: 77px;
    border: 3px solid black;*/
/* position: fixed;
    bottom: 20px;
    right: 10px; */
/* background-color: #676555; */
/* padding: 2px; */
/* } */

.menu-img {
    width: 50px;
}

.menu-text {
    font-size: 3.4rem;
    font-weight: 700;
    text-align: center;
}

/*end color change functionality*/


/*about*/

#about {
    /* position: relative; */
    /* top: -600px;
    opacity: 0; */
    transform: translateY(-600px);
    opacity: 0;
}

#about-structure,
#building-structure,
#posts-structure,
#contact-structure {
    font-size: 1.5rem;
    list-style: none;
    color: lightgray;
}

#about-structure {
    padding-left: 20px;
    margin: 0px 21px;
}

.struct-li {
    margin-top: 25px;
    color: #edcf92;
    max-width: 400px;
}

.struct-li li {
    margin-top: 10px;
}

.emb-ul li {
    margin-top: 15px;
}

.lang {
    font-size: 1.1rem;
    font-weight: 500;
}

.gl {
    font-size: 1.05rem;
}

#about-structure li .expander,
#about-structure li .subtractor {
    color: lightsalmon;
}

#about-structure li .expander {
    display: inline;
}

#about-structure li .subtractor {
    display: none;
}

#about-structure li.expanded .expander {
    display: none;
}

#about-structure li.expanded .subtractor {
    display: inline;
}

.list-sub ul {
    list-style: none;
    padding-left: 0;
    text-align: center;
}

#about-structure li .list-sub {
    color: lightgray;
    font-size: 1rem;
    display: none;
}

#about-structure li .list-sub ul li {
    color: lightgray;
}

#about-structure li.expanded .list-sub {
    display: block;
}


#about-structure.beige li,
#building-structure.beige h2,
#building-structure.beige a,
#posts-structure.beige h2,
#contact-view.beige h2 {
    /* color: lightgray; */
    color: #edcf92;
}

#about-structure.orange li,
#building-structure.orange h2,
#building-structure.orange a,
#posts-structure.orange h2,
#contact-view.orange h2 {
    color: #f5a96a;
}

#about-structure.blue li,
#building-structure.blue h2,
#building-structure.blue a,
#posts-structure.blue h2,
#contact-view.blue h2 {
    color: #79d0d5;
}

#about-structure.green li,
#building-structure.green h2,
#building-structure.green a,
#posts-structure.green h2,
#contact-view.green h2 {
    color: #96d1a4;
}

#project-link {
    color: lightgray;
    font-size: 1.2rem;
    font-weight: 700;
}

#proj-desc {
    font-size: 1.1rem;
    font-weight: 400;
}

#proj-e {
    font-weight: 600;
    font-size: 1.05rem;
}

/*end about*/


/*posts*/

#posts {
    /* position: relative; */
    /* left: 2000px; */
    transform: translateX(2000px);
    opacity: 0;
    display: flex;
    flex-direction: column;
}

#posts-structure h2 {
    font-size: 1.2rem;
    color: #edcf92;
    margin-bottom: 10px;
}

#posts-structure li {
    margin-top: 25px;
    /* max-width: 32%; */
}

#posts-structure div {
    font-size: 1.1rem;
}

#posts-structure img {
    height: 100px;
}

.title-name {
    font-weight: 700;
    font-size: 1.1rem;
}

.author-name {
    font-size: 1.1rem;
}

.percent {
    text-align: center;
    margin-top: 4px;
}

#learn-bar,
#read-bar {
    background-color: lightsalmon;
    border-radius: 20px;
    color: black;
    padding: 3px;
    font-weight: 600;
    margin-top: 5px;
}

#song-link {
    color: lightsalmon;
    font-weight: 700;
}

#posts-structure.beige #learn-bar,
#posts-structure.beige #read-bar {
    background-color: lightsalmon;
}

#posts-structure.orange #learn-bar,
#posts-structure.orange #read-bar {
    background-color: #f5a96a;
}

#posts-structure.blue #learn-bar,
#posts-structure.blue #read-bar {
    background-color: #79d0d5;
}

#posts-structure.green #learn-bar,
#posts-structure.green #read-bar {
    background-color: #96d1a4;
}


#posts-structure.beige #song-link {
    color: lightsalmon;
}

#posts-structure.orange #song-link {
    color: #f5a96a;
}

#posts-structure.blue #song-link {
    color: #79d0d5;
}

#posts-structure.green #song-link {
    color: #96d1a4;
}

/*end posts*/


/*contact*/

#contact-view {
    /* position: relative; */
    /* left: 2000px; */
    transform: translateY(1000px);
    opacity: 0;
    color: lightgray;
}

#contact-view h2 {
    text-align: center;
    color: #edcf92;
}

#contact-view ul {
    padding-left: 0;
    margin: 0;
}

#contact-view li {
    margin-top: 15px;
}

#contact-structure a {
    text-decoration: none;
    color: lightgray;
    font-size: 1.2rem;
}

#contact-structure img {
    max-width: 50px;
    display: block;
    margin: 5px auto;
}

/*end contact*/


/* building */

#building {
    position: relative;
    /* left: 2000px; */
    transform: translateX(-2000px);
    opacity: 0;
    display: flex;
    flex-direction: column;
    color: lightgray;
}

#building-structure h2 {
    font-size: 1.5rem;
    text-align: center;
    color: #edcf92;
}

#building-structure a {
    color: lightgray;
    font-size: 1.2rem;
    text-align: center;
    display: block;
    margin: 10px;
    position: relative;
    bottom: -10px;
}

#building-structure .gh {
    display: none;
}

#building-inst {
    font-size: 1.1rem;
    text-align: center;
    margin: 10px;
}

#building-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-gap: 4px 4px;
    width: 320px;
    background-color: lightslategray;
}

.thumbnail {
    max-width: 160px;
    max-height: 160px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.thumbnail .title-div {
    position: absolute;
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
    background-color: #d3d3d3c2;
    color: black;
    width: 158px;
    padding: 5px 0px;
}


#building-structure.beige .title-div {
    background-color: #d3d3d3c2;
}

#building-structure.orange .title-div {
    background-color: #f5a96ac9;
}

#building-structure.blue .title-div {
    background-color: #79d0d5c5;
}

#building-structure.green .title-div {
    background-color: #96d1a4c0;
}


.thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#modal {
    z-index: 1;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(119, 136, 153, 0.603);
    overflow: hidden;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

#modal-content {
    /* z-index: 1; */
    position: absolute;

    /* width: 320px; */
    width: 85vw;

    /* height: 600px; */
    height: 90vh;

    background-color: lightslategray;
    border-radius: 20px;
    padding: 0px;
    overflow: hidden;
}

/* #modal::backdrop {
    background: rgb(0 0 0 / 50%);
} */

#modal-close {
    position: relative;

    /* left: 150px; */
    left: 42vw;

    /* top: -297px; */
    top: -44vh;

    z-index: 1;
    color: black;
    width: 50px;
    border-radius: 50px;
}

#modal-content h3 {
    box-sizing: border-box;
    text-align: center;
    font-size: 1.3rem;
    font-weight: 900;
    margin: 0px auto 10px auto;
    position: absolute;
    top: 28px;
    width: 100%;
    background-color: #d3d3d3c2;
    padding: 10px 10px;
}

#modal-content #modal-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* object-fit: contain; */
}

#modal-text {
    box-sizing: border-box;
    text-align: center;
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0px auto 10px auto;
    position: absolute;
    width: 100%;
    background-color: #d3d3d3c2;
    padding: 10px 10px;
    bottom: 25px;
}

#gh-link {
    display: block;
    color: black;
    margin-top: 10px;
    font-size: 1.2rem;
}



/* end building */


/* admin post ui*/


#custom-upload {
    border: 2px solid black;
    cursor: pointer;
    width: 180px;
    height: 40px;
    margin: 10px;
    justify-content: center;
    align-items: center;
    background-color: #cfc3b7;
    border-radius: 50px;
    padding: 5px 5px;
}

.success-check {
    /* width: 80px;
    height: 80px; */
    width: 125px;
    height: 133px;
    /* display: inline-block; */
}

#upload-form {
    width: 240px;
    margin: 7px auto;
    font-size: 1.1rem;
    font-weight: 500;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

#upload-form button {
    font-size: 1.1rem;
    font-weight: 600;
}

.file-boxes {
    text-align: center;
}

#success {
    width: 300px;
    margin: 10px auto;
    text-align: center;
    background-color: #4fbd98;
    padding: 7px;
    color: #21363D;
    font-weight: 600;
}

#upload-form input {
    font-size: 1.2rem;
    width: 250px;
    background-color: lightgray;
    border: 2px solid black;
}

#upload-form textarea {
    font-size: 1.2rem;
    width: 250px;
    height: 200px;
    background-color: lightgray;
    border: 2px solid black;
}

#upload-form select {
    height: 30px;
    width: 250px;
    font-size: 1.2rem;
    background-color: lightgray;
    border: 2px solid black;
}

#upload-form label {
    font-size: 1.3rem;
    font-weight: 700;
}

#up-title {
    text-align: center;
    font-size: 1.9rem;
}

#logout {
    text-align: center;
    font-size: 1.5rem;
    display: block;
    margin: 10px;
    color: black;
}

/*end admin post ui */


/*error and notfound view*/

#error-h1 {
    font-size: 2.5rem;
    margin-top: 100px;
}

#error-icon {
    height: 300px;
}

#link-back {
    font-size: 1.5rem;
    color: black;
    margin-top: 20px;
}

/*end error and notfound view*/


/* licensing (on contact card)*/

#licensing {
    list-style: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.1rem;
    position: relative;
    bottom: -50px;
}

#licensing li a {
    color: lightgray;
}

#priv-table {
    width: 90%
}

/* end licensing (on contact card)*/


@media screen and (min-width: 500px) {

    .cta-img {
        position: relative;
        z-index: -1;
        left: 13px;
    }

    #modal-content h3 {
        top: 40px;
        font-size: 1.5rem;
    }

    #about-structure,
    #building-structure h2 {
        font-size: 1.7rem;
    }

    #about-structure li .list-sub ul li,
    #building-inst,
    #building-structure a,
    #posts-structure div {
        font-size: 1.2rem;
    }

    #project-link {
        font-size: 1.3rem;
    }

    #posts-structure h2 {
        font-size: 1.5rem;
    }

    #contact-view h2 {
        font-size: 2rem;
    }

    #contact-structure a {
        font-size: 1.3rem;
    }

    #contact-structure img {
        max-width: 55px;
    }

    #bubble-menu {
        width: 400px;
    }

    .bubble-icon {
        width: 60px;
        height: 60px;
    }

    .menu-img {
        width: 60px;
    }

    #cool-stuff {
        font-size: 3rem;
        bottom: -5px;
        width: 60%;
    }

}

@media only screen and (min-width: 500px) and (max-width: 1099px) {

    #cta,
    #about,
    #building,
    #posts,
    #contact-view {
        width: 83%;
        max-width: 1000px;
    }

    #my-name {
        top: 130px;
    }

}

@media only screen and (min-width: 600px) {

    #modal-text {
        font-size: 1.2rem;
        font-weight: 600;
        margin: 0px auto 10px auto;
        position: relative;
        width: 70vw;
        padding: 10px 28px;
        bottom: 150px;
    }

    #gh-link {
        font-size: 1.3rem;
    }

}

@media only screen and (min-width: 700px) {

    .thumbnail {
        max-width: 240px;
        max-height: 240px;
    }

    .thumbnail .title-div {
        width: 240px;
        padding: 10px 0px;
        font-size: 1.1rem;
        font-weight: 700;
    }


}

@media only screen and (min-width: 700px) and (max-width: 1099px) {

    #building-grid {
        width: auto;
    }

    #my-name {
        font-size: 3.5rem;
    }

    #expl {
        font-size: 2.7rem;
    }

}

@media only screen and (min-width: 900px) {

    #about-structure,
    #building-structure h2 {
        font-size: 1.9rem;
    }

    #about-structure li .list-sub ul li,
    #building-inst,
    #building-structure a,
    #posts-structure div {
        font-size: 1.3rem;
    }

    #project-link {
        font-size: 1.4rem;
    }

    #posts-structure h2 {
        font-size: 1.5rem;
    }

    #contact-view h2 {
        font-size: 2.5rem;
    }

    #contact-structure a {
        font-size: 1.4rem;
    }

    #contact-structure img {
        max-width: 60px;
    }


    #bubble-menu {
        width: 500px;
    }

    .bubble-icon {
        width: 80px;
        height: 80px;
    }

    .menu-img {
        width: 80px;
    }

    .menu-text {
        font-size: 4rem;
    }

    #cool-stuff {
        font-size: 3.4rem;
        bottom: -5px;
        width: 60%;
    }

    #licensing {
        flex-direction: row;
        justify-content: space-between;
        font-size: 1.1rem;
        position: relative;
        bottom: -120px;
        width: 83%;
    }

}

@media only screen and (min-width: 1040px) {

    #posts-structure {
        display: flex;
        justify-content: space-between;
        position: relative;
        bottom: 25px;
    }

    #posts-structure li {
        padding: 20px;
        max-width: 32%;
    }

}


@media screen and (min-width: 1100px) {

    #cta,
    #about,
    #building,
    #posts,
    #contact-view {
        /* height: 650px; */
        max-width: 1050px;
        width: 1050px;
    }

    #my-name {
        font-size: 5rem;
        top: 120px;
    }

    #expl {
        font-size: 4rem;
        bottom: 125px;
    }

    .cta-img {
        height: 450px;
    }

    #building-grid {
        display: grid;
        grid-template: 1fr / 1fr 1fr 1fr 1fr;
        grid-gap: 0px 4px;
        width: auto;
        background-color: lightslategray;
    }


}

/*end of larger screen adjustments*/