/* reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* at-rules */
@font-face {
    font-family: 'Handwritten Serif';
    src: url('fonts/handwrittenSerif.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'UGLY FONT';
    src: url('fonts/FontNo1.ttf') format('truetype');
    font-weight: normal;
    font-style:normal;
}

@font-face {
    font-family: 'FIRE FONT';
    src: url('fonts/goodFont.ttf') format('truetype');
    font-weight: bolder;
    font-style:normal;
}

@font-face {
    font-family: 'regular';
    src: url('fonts/SansSerifFunnySymbols.ttf') format('truetype');
    font-weight: normal;
    font-style: monospace;
}

@keyframes pulse {
    0% {
        transform: scale(0.8) rotate(0deg);
    }
    25% {
        transform: scale(1) rotate(10deg);
    }
    50% {
        transform: scale(1.3) rotate(0deg);
    }
    75% {
        transform: scale(1)rotate(-10deg);
    }
    100% {
        transform: scale(0.8) rotate(0deg);
    }
}

/* FONT STUFF */
body p {
    font-family: 'regular';
}

body h1, h2, h3 {
    font-family: 'Handwritten Serif';
    margin: 0.5%;
}

body {
    background-image: url('images/background5.jpg');
}

.content h1 {
    display: flex;
    font-size: 5rem;
    justify-content: center;
    padding-top: 2%;
}

.content h2, a {
    font-family: 'regular';
    font-size: 2rem;
    font-style: bold;
    color: black;
    text-decoration: none;
}

.content p {
    font-size: 1.5rem;
}

/* HEADER */
.header {
    background-color: darkslategray;
    border-radius: 1rem;
    margin: 3% 3%;
    margin-bottom: 3%;
    border: 10px double white;
}

.header-top {
    font-family: 'UGLY FONT';
    display: column;
    align-items: center;
}

.buttons {
    display: flex;
    flex-direction: row;
    gap: 2rem;
}

.btn {
    color: white;
    background-color: rgb(31, 56, 56);
    border: 2px solid white;
    padding: 2% 1.5rem;
    padding-bottom: 0.5rem;
    border-radius: 2rem;
    align-items: center;
    transition: transform 0.3s ease;
}

.btn:hover {
    background-color: rgb(16, 32, 32);
    transform: scale(1.1);
}

.name {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.5s ease;
}

.name:hover {
    animation: pulse 1s ease-in-out infinite;
}

.header-top h1 {
    font-size: 700%;
    color: white;
}

.eatthatjam {
    display: flex;
    width: 35%;
    transition: transform 0.5s ease;
}

.top-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.top-bar p {
    padding-left: 2%;
    font-size: 1.5rem;
    color: white;
}

.icons {
    display: flex;
    padding-top: 2%;
    margin-right: 2%;
    gap: 15%;
    justify-content: right;
}

.icons a {
    transition: transform 0.3s ease;
}

.icons a:hover {
    transform: scale(1.3);
}

button {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

.header-bottom {
    display: flex;
    justify-content: space-evenly;
    margin-left: 5rem;
    color: white;
    padding-bottom: 2rem;
    align-items: center;
}

.header-bottom h2 {
    font-size: 3.5rem;
    justify-content: center;
    width: 40%;
}

.header-bottom p {
    font-size: 2rem;
    padding-right: 10%;
}

/* PROJECTS */
.content {
    margin: 0;
    margin-top: 0;
}

.section1 {
    background-color: #77a585;
    margin: 3% 3%;
    border-radius: 1rem;
    border: 4px solid black;
}

.section2 {
    background-color: #b0d1b9;
    margin: 3% 3%;
    border-radius: 1rem;
    border: 10px dotted black;
}

.section-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    gap: 2%;
    padding-bottom: 1rem;
}

.project {
    padding: 2%;
    margin-top: 2%;
    border-radius: 2rem;
    transition: transform 0.3s ease;
}

.project a {
    display: inline-block;
    transition: transform 0.3s ease;
}

.project:hover {
    transform: scale(1.1);
}

/* FOOTER */
.break {
    display: flex;
    justify-content: center;
    font-size: 1.5rem;
    align-items: center;
}

.divider {
    background-color: #618d6e;
    margin: 3% 3%;
    border-radius: 1rem;
    padding-bottom: 1%;
    border: 3px solid black;
}

.footer {
    display: flex;
    padding-right: 8%;
    align-items: center;
    justify-content: space-evenly;
    background-color: darkslategrey;
    border-radius: 1rem;
    margin: 0 3%;
    margin-bottom: 2%;
    border: 10px double white;
}

.footer h1 {
    padding-top: 1%;
    padding-bottom: 1%;
    padding-left: 4%;
    font-size: 3rem;
    color: white;
}

.footer p {
    padding-left: 4%;
    font-size: 3rem;
    color: white;
}

.icons2 {
    display: flex;
    padding-left: 4%;
    gap: 15%;
}

.icons2 a {
    transition: transform 0.3s ease;
}

.icons2 a:hover {
    transform: scale(1.3);
}