

html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}

.clearfix:after {visibility: hidden; display: block; font-size: 0; content: ''; clear: both; height: 0; }

html { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}

*, *:before, *:after {box-sizing: inherit}

.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; padding: 0; white-space: nowrap; clip-path: inset(100%); clip: rect(0 0 0 0); overflow: hidden;}


/* remove all styling */
* {
    margin: 0;
    padding: 0;
}

ul, 
ol, 
li {
    list-style: none;
}

a {
    text-decoration: none;
    color: inherit;

}

a:focus {
    outline: none;
}

input, 
button {
    border: none;
    box-shadow: none;
    background: none;
}

/* ------------------- */

html {
    font-size: 62.5%;
    margin: 0;
    padding: 0;
    /* filter: invert(1); */
    font-weight: 300;
}

body {
    background: rgb(241, 224, 200);
}

img {
    width: 100%;
    display: block;
    object-fit: cover;
}

#particles-js {
    height: 100vh;
    overflow: hidden;
    cursor: url(../assets/cursor.png), auto;
    background-color: rgb(26, 24, 32);
}

*::selection {
    background: rgb(26, 24, 32);
    color: rgb(241, 224, 200);
}

em {
    font-weight: 400;
    font-style: normal;
}

span {
    font-style: italic;
}

header {
    position: absolute;
    bottom: 8%;
    right: 10vw;
    z-index: 50;
    color: rgb(241, 224, 200);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    text-align: end;
}

.aboutMe {
    position: relative;
    display: flex;
    justify-content: flex-end;
}

.speechBubble {
    width: 750px;
    height: 413px;
    position: absolute;
    right: 150px;
    bottom: -30px;
    background: url(../assets/speechBubble.png);
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 1.8rem;
    color: black;
    font-family: 'Josefin Sans', monospace;
    padding: 37px 130px 0 43px;
    text-align: left;
}

.speechBubble a {
    background: rgba(190, 142, 212, 0.5);
    text-decoration: underline;
    text-decoration-color: rgba(26, 24, 32, 0.7);
    text-decoration-thickness: 3px;
    font-weight: 400;
    padding: 5px 3px;
}

.speechBubble a:focus, 
.speechBubble a:active, 
.speechBubble p a:hover {
    background: rgb(190, 142, 212);
    color: rgb(4, 4, 5);
}


p {
    text-indent: 40px;
    margin: 7px 0;
    line-height: 1.4;
}

p:last-child {
    text-indent: 100px;
    text-align: center;
}

h3 {
    font-weight: 400;
    letter-spacing: 2.5px;
}

.profilePic {
    min-width: 150px;
    width: 45%;
    max-width: 350px;
    margin-bottom: 3%;
    position: relative;
}

.invert {
    filter: invert(1);
}

.invert button {
    filter: invert(1);
}

button:hover, 
button:focus {
    outline: 0;
    transform: rotate(-5deg) rotateY(180deg);
}

h1 {
    font-size: 9rem;
    margin: 0 -12px 0 0;
    font-family: 'Amatic SC', serif;
    letter-spacing: 9px;
    animation: gradient 15s infinite;
}

h1:hover, 
h2:hover {
    /* https://icons8.com/icon/46373/moon-and-stars */
    cursor: url(../assets/moon.png), auto; 
}


h2 {
    width: 100%;
    text-align: right;
    font-size: 3rem;
    font-family: 'Josefin Sans', monospace;
    font-weight: 100;
}

h1::selection {
    background: rgb(241, 224, 200);
    color: rgb(4, 4, 5);
}

h2::selection {
    background: rgb(241, 224, 200);
    color: rgb(26, 24, 32);
}

ul {
    display: flex;
    justify-content: flex-end;
}

li {
    font-size: 3.7rem;
    margin: 30px 45px 0 0 ;
}

li:last-child {
    margin: 30px 0;
}

li, 
a {
    padding: 0;
}

i {
    transition: transform 300ms linear;
    
}

i:hover, 
button:hover, 
a:hover {
    cursor: url(../assets/hand.png), pointer;
}

i:hover {
    transform: scale(1.5) rotate(10deg);
}

.backwards i:hover {
    transform: scale(1.5) rotate(-10deg);
}

ul a:focus, 
ul a:active {
    color: rgba(190, 142, 212, 0.8);
}

main {
    display: none;
}

@media(max-width: 1050px) {
    h1 {
        font-size: 7rem;
        letter-spacing: 7px;
        margin-right: -9px;
    }
    h2 {
        font-size: 2.7rem;
    }
    li {
        margin: 25px 33px 0 0;
    }
    li:last-child {
        margin: 25px 0 0;
    }

    header {
        bottom: 30px;
        right: 50px;
    }

    .speechBubble {
        right: -50px;
        bottom: 85px;
        height: 375px;
        padding: 17px 130px 0 27px;
        background: rgb(241, 224, 200);
        font-size: 1.7rem;
        line-height: 1.8;
    }
    p {
        line-height: 1.6;
    }
}

@media(max-width: 850px) {
    .speechBubble {
        top: 375px;
        bottom: auto;
        width: 100vw;
        height: auto;
        padding: 50px;
        background: rgb(241, 224, 200);
        font-size: 1.8rem;
        line-height: 2;
    }

    p {
        line-height: 1.7;
        margin: 15px 0;
    }

    p:last-child {
        margin-bottom: 30px;
    }

    canvas {
        position: absolute;
        height: auto;
        top: 0;
        background-color: rgb(26, 24, 32);
    }

    #particles-js {
        z-index: -300;
        height: auto;
        overflow: auto;
    }

    .invert{
        filter: none;
    }

    .invert canvas, 
    .invert header  {
        filter: invert(1);
    }
}

@media(max-width: 450px) {
    h1 {
        font-size: 5.5rem;
        margin-right: -12px;
    }

    h2 {
        font-size: 2rem;
    }
    header {
        width: 300px;
        bottom: 47%;
        right: 50%;
        margin: 0 -135px -130px 0;
    }

    ul li {
        font-size: 3rem;
    }

    .speechBubble {
        min-width: 280px;
        width: auto;
        padding: 30px 0;
        top: 70vh;
        left: 30px;
        right: auto;
        bottom: auto;
        font-size: 1.6rem;
        background: transparent;
    }

    .invert .speechBubble {
        filter: invert(1);
    }
}




@keyframes gradient {
    0% {
        color: rgb(241, 224, 200);
    }
    13% {
        color: rgb(241, 224, 200, 0.8);
    }
    23% {
        color: rgba(232, 241, 200, 0.7);
    }
    30% {
        color: rgba(200, 241, 225, 0.7);
    }
    40% {
        color: rgba(200, 223, 241, 0.7);
    }
    50% {
        color: rgba(204, 200, 241, 0.7);
    }
    60% {
        color: rgba(225, 200, 241, 0.7);
    }
    70% {
        color: rgba(241, 200, 217, 0.7);
    }
    80% {
        color: rgba(241, 205, 200, 0.7);
    }
    90% {
        color: rgb(241, 224, 200, 0.8);
    }
    0% {
        color: rgb(241, 224, 200);
    }
}