html {
    scroll-behavior: smooth;
    font-family: 'Fira Code', monospace;
}

body,
html {
    margin: 0;
    padding: 0;
    width: 100%;
}

body {
    overflow-x: hidden;
}

header {
    display: inline-flex;
    flex-direction: column;
    background-color: rgb(40, 40, 40);
    color: #fff;
    width: 100%;
    height: 25vh;
    text-align: center;
    justify-content: center;
}

header h1 {
    font-size: 3rem;
    margin-top: 1vh;
}

header h5 {
    margin-top: -1vh;
}

header h5 a {
    text-decoration: none;
}

header h5 a span {
    color: gold;
    font-size: 1.1rem;
    text-align: center;
}

header h5 a {
    color: rgb(75, 75, 75);
    font-size: 1.1rem;
    text-align: center;
    margin-top: -3vh;
}

.contact {
    margin-top: 5vh;
    margin-bottom: 5vh;
}

.contact .row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

.contact .row .image {
    flex: 1 1 40rem;
}

.contact .row .image img {
    width: 80%;
}

.contact .row form {
    flex: 1 1 15rem;
    border: 0.1rem solid black;
    padding: 2rem;
    text-align: center;
    margin-right: 5rem;
}

.contact .row form h3 {
    font-size: 2rem;
    text-align: center;
    margin-top: 0.5rem;
    font-weight: 900;
}

.contact .row form .box {
    margin: 1rem 0;
    border: 0.1rem solid black;
    width: 100%;
    font-size: 1.2rem;
}

.contact .row form textarea {
    height: 10rem;
    resize: none;
}

.btn {
    background-color: rgb(255, 187, 0);
    height: 2.5rem;
    width: fit-content;
    padding: 0.5rem 1rem;
    border-radius: 0.3rem;
    border: none;
    font-size: 1.2rem;
    transition: letter-spacing 0.4s ease-in-out, width 0.4s ease-in-out;
}

.btn:hover {
    letter-spacing: 0.1rem;
    width: fit-content;
    padding: 0.5rem 1rem;
}

.box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
}