* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    overflow-x: hidden;
}

body a {
    text-decoration: none;
}

* {
    cursor: url("../media/img/logo-&-nav/cursor.png") 0 0, auto;
}




html {
    font-size: 16px;
}




/* FONTS */

/* PAGE HEADERS */
h1 {
    font-family: "cc-regeneration-variable", sans-serif;
    font-variation-settings: "ital"0, "wght"400;
    /* font-size: 120pt; */
    font-size: 10rem;
    color: #2C1400;
}

/* TEXT BOX HEADERS */
h2 {
    font-family: "cc-regeneration-variable", sans-serif;
    font-variation-settings: "ital"0, "wght"400;
    /* font-size: 60pt; */
    font-size: 5rem;
    color: #2C1400;
}

/* HOME NAV BOX HEADERS */
h3 {
    font-family: "cc-regeneration-variable", sans-serif;
    font-variation-settings: "ital"0, "wght"400;
    /* font-size: 40pt; */
    font-size: 3.3rem;
    color: #2C1400;
}

/* CARD HEADERS */
h4 {
    font-family: "cc-regeneration-variable", sans-serif;
    font-variation-settings: "ital"0, "wght"400;
    /* font-size: 28pt; */
    font-size: 2.3rem;
    color: #2C1400;
    /* text-transform: uppercase; */
}

/* UNDER HEADER SUB HEADERS */
h5 {
    font-family: "museomoderno", sans-serif;
    font-weight: 500;
    font-style: normal;
    /* font-size: 24pt; */
    font-size: 2rem;
    color: #2C1400;
}

/* BUTTONS */
h6 {
    font-family: "museomoderno", sans-serif;
    font-weight: 500;
    font-style: normal;
    /* font-size: 24pt; */
    font-size: 2rem;
    color: #2C1400;
}

/* BODY TEXT */
p {
    font-family: "museomoderno", sans-serif;
    font-weight: 300;
    font-style: normal;
    /* font-size: 18pt; */
    font-size: 1.5rem;
    color: #2C1400;
}

/* FOOTER LINKS */

ul {
    font-family: "museomoderno", sans-serif;
    font-weight: 500;
    font-style: normal;
    /* font-size: 12pt; */
    font-size: 1rem;
    color: #2C1400;
}




/* COLOURS */

/* body {
    background-color: #FDF6E6;
    background-color: #FFEAD5;
background-color: #EBCAA8;
background-color: #C59E76;
background-color: #F1D4B6;

background-color: #2C1400;
background-color: #371B05;
background-color: #562914;
background-color: #84472A;

background-color: #FFE6BB;
background-color: #FFBF53;

background-color: #FFD5C5;
background-color: #F99872;

background-color: #FFD1E4;
background-color: #FF6CB4;

background-color: #F3DCFF;
background-color: #B175D1;

background-color: #D5F2F8;
background-color: #4AABBE;

background-color: #E9E1A5;
background-color: #A09754;
} */



















/* NAVIGATION */

nav {
    height: 100px;
    width: 100%;
    padding: 40px 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3000;
    background-color: rgba(86, 41, 20, 0);
    /* <-- ADD THIS */
}


.nav-button {
    height: 60px;
    width: 200px;
    background-color: #f1d4b6;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease-in-out;
    position: relative;
    z-index: 10000;
}

.nav-button img {
    height: 100%;
}

.nav-logo {
    height: 60px;
    width: 200px;
    background-color: #f1d4b6;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 10000;
}

.nav-logo img {
    height: 100%;
}

.nav-button,
.nav-logo {
    border-radius: 20px;
    border-color: #562914;
    border-width: 3px;
    border-style: solid;
    box-shadow: 5px 5px 0px rgba(86, 41, 20, 0.8);
}

.home-page .nav-logo {
    visibility: hidden;
}

.nav-button:hover,
.nav-logo:hover {
    transform: scale(1.05);
}




/* NAVIGATION OPEN */

.nav-open {
    width: 100%;
}

.nav-open-content {
    width: 60%;
    background-color: #FDF6E6;
    border-radius: 20px;
    border-style: solid;
    border-width: 5px;
    border-color: #562914;
    box-shadow: 10px 10px 0px rgba(86, 41, 20, 1);
    padding: 30px;
    display: flex;
    flex-direction: column;
    right: 60px;
    top: 100px;
    position: absolute;
    z-index: 888;
    gap: 20px;
}

.nav-r-one,
.nav-r-two,
.nav-r-three {
    display: flex;
    flex-direction: row;
    gap: 20px;
}

/* ROW ONE */

.nav-home {
    width: 50%;
    background-color: #d5f2f8;
    border-color: #002f36;
    border-style: solid;
    border-width: 3px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
    text-align: center;
    padding: 30px;
}

.nav-home h3 {
    padding-bottom: 8px;
    color: #002f36;
}

.nav-home:hover {
    transform: scale(1.02);
}

.nav-about {
    width: 50%;
    background-color: #E9E1A5;
    border-color: #4B5320;
    border-style: solid;
    border-width: 3px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
    text-align: center;
    padding: 30px;
}

.nav-about h3 {
    padding-bottom: 8px;
    color: #4B5320;
}

.nav-about:hover {
    transform: scale(1.02);
}

/* ROW TWO */

.nav-port {
    width: 100%;
    background-color: #ffd1e4;
    border-color: #A90C51;
    border-style: solid;
    border-width: 3px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
    text-align: center;
    padding: 20px;
}

.nav-port h3 {
    padding-bottom: 24px;
    color: #A90C51;
    font-size: 70pt;
}

.nav-port:hover {
    transform: scale(1.02);
}

/* ROW THREE */


.nav-con {
    width: 35%;
    background-color: #ffd9ca;
    border-color: #AF340B;
    border-style: solid;
    border-width: 3px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
    text-align: center;
    padding: 10px;
}

.nav-con h3 {
    padding-bottom: 8px;
    color: #AF340B;
}

.nav-con:hover {
    transform: scale(1.02);
}

.nav-bus {
    width: 65%;
    background-color: #f3dcff;
    border-color: #430A60;
    border-style: solid;
    border-width: 3px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
    text-align: center;
    padding: 10px;
}

.nav-bus h3 {
    padding-bottom: 8px;
    color: #430A60;
}

.nav-bus:hover {
    transform: scale(1.02);
}


/* open/close */

/* NAV CLOSED BY DEFAULT */
.nav-open {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

/* NAV OPEN WHEN VISIBLE CLASS ADDED */
.nav-open.visible {
    opacity: 1;
    pointer-events: auto;
}

/* BUTTON DEFAULT */
.nav-button {
    transition: background-color 0.3s ease;
    cursor: pointer;
}

/* BUTTON WHEN NAV IS OPEN */
.nav-button.active {
    background-color: #fdf6e6;
}

.nav-button img {
    pointer-events: none;
}



















/* ABOUT PAGE */

.about-page {
    overflow-x: hidden;
}

/* ABOUT HERO */

.about-hero {
    width: 100%;
    display: flex;
    flex-direction: row;
    background-color: #ffead5;
    overflow: hidden;
    gap: 2vw;
    position: relative;
    overflow: visible;
    max-height: 900px;
    min-height: 700px;
}

/* BACKGROUND */
.about-hero-bg {
    width: 30%;
    top: 35%;
    left: -5%;
    position: absolute;
}

.about-hero-bg img {
    width: 100%;
}

/* FOREGROUND */
.about-hero-fg {
    display: flex;
}

.about-hero-text {
    width: 100%;
    top: 25%;
    position: absolute;
    padding-left: 15%;
}

.about-hero-text h5 {
    background-color: #FDF6E6;
    width: 30%;
    text-align: center;
    border-radius: 10px;
    border-color: #562914;
    border-width: 3px;
    border-style: solid;
    box-shadow: 5px 5px 0px rgba(86, 41, 20, 0.8);
    position: absolute;
    left: 35%;
    padding-left: 3%;
    padding-right: 3%;
}

.about-hero-mascot {
    width: 30%;
    bottom: 0;
    right: 5%;
    position: absolute;
}

.about-hero-mascot img {
    width: 100%;
}









/* ABOUT CONTENT */

.about-content {
    width: 100%;
    background-image: url(../media/img/backgrounds/beige-stars.png);
    background-size: cover;
    padding-left: 4vw;
    padding-right: 4vw;
    padding-top: 10%;
    padding-bottom: 10%;
    display: flex;
    gap: 4vw;
    background-attachment: fixed;
}

.about-content-left {
    width: 40%;
    display: flex;
    flex-direction: column;
    gap: 8vh;
    align-items: center;
}

.about-content-right {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 8vh;
}





/* LEFT */

.skill-box {
    width: 100%;
    background-color: #FFE6BB;
    border-color: #832100;
    border-style: solid;
    border-width: 5px;
    border-radius: 20px;
    box-shadow: 10px 10px 0px rgba(131, 33, 0, 0.8);
    z-index: 98;
}

.skill-box-header {
    background-color: #FFBF53;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    padding-left: 30px;
    padding-top: 2px;
    padding-bottom: 10px;
}

.skill-box-body {
    padding: 30px;
}

.technical-skills {
    line-height: 2;
    font-weight: 400;
}

.school {
    font-size: 12pt;
}

.qual-title {
    font-weight: 400;
}

/* RESUME BUTTON */

.resume {
    background-color: #FDF6E6;
    width: 100%;
    text-align: center;
    border-radius: 15px;
    border-color: #832100;
    border-width: 5px;
    border-style: solid;
    box-shadow: 5px 5px 0px rgba(131, 33, 0, 0.8);
    transition: transform 0.3s ease-in-out;
}

.resume:hover {
    transform: scale(1.1);
}





/* RIGHT */

.about-blurb-card {
    width: 100%;
    background-color: #FDF6E6;
    border-radius: 20px;
    border-style: solid;
    border-width: 5px;
    border-color: #562914;
    box-shadow: 10px 10px 0px rgba(86, 41, 20, 0.8);
    padding: 30px;
}

.about-contact {
    display: flex;
    gap: 4vw;

}

/* CONTACT LEFT */

.about-contact-left {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 8vh;
    align-items: center;
}

/* BUSINESS BUTTON */

.business-link {
    text-decoration: none;
}

.business-link img {
    width: 20%;
    margin-left: 80%;
    margin-bottom: -12%;
    z-index: 99;
}

.business-link h6 {
    background-color: #F3DCFF;
    text-align: center;
    border-radius: 15px;
    border-color: #723194;
    border-width: 5px;
    border-style: solid;
    box-shadow: 5px 5px 0px rgba(114, 49, 148, 0.8);
    z-index: 98;
    padding-left: 50px;
    padding-right: 50px;
}

.business-button {
    transition: transform 0.3s ease-in-out;
}

.business-button:hover {
    transform: scale(1.1);
}

/* CONTACT DETAILS */

.social {
    width: 100%;
    background-color: #FFd5c5;
    border-color: #832100;
    border-style: solid;
    border-width: 5px;
    border-radius: 20px;
    box-shadow: 10px 10px 0px rgba(131, 33, 0, 0.8);
    z-index: 98;
}

.social-header {
    background-color: #F99872;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    padding-left: 25px;
    padding-top: 18px;
    padding-bottom: 15px;
}

.social-header img {
    width: 50%;
}

.social-body {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 4vw;
    padding-bottom: 170px;
}

.contact-details-body p {
    text-align: center;
    font-weight: 300;
}

.socials {
    display: flex;
    justify-content: space-between;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 20px;
}

.socials i {
    font-size: 40pt;
    color: #832100;
    transition: transform 0.3s ease-in-out;

}

.socials i:hover {
    color: #00282F;
    transform: rotate(15deg) scale(1.2);
}

/* DOG */

.polaroid {
    position: relative;
    width: 140%;
    top: -15%;
    z-index: 99;
    transform: rotate(-8deg);
    transition: transform 0.5s ease-in-out;
}

.polaroid:hover {
    transform: rotate(10deg) scale(1.2);
}

.polaroid img {
    width: 100%;
}

/* CONTACT RIGHT */

.about-contact-right {
    width: 50%;
}

.message-form-box {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 3vh;
    background-color: #FFd5c5;
    border-color: #832100;
    border-style: solid;
    border-width: 5px;
    border-radius: 20px;
    padding-bottom: 30px;
    box-shadow: 10px 10px 0px rgba(131, 33, 0, 0.8);
}

.message-header {
    background-color: #F99872;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    padding-bottom: 10px;
    height: 70px;
}

.message-header img {
    width: 80%;
    transform: rotate(-10deg);
    margin-left: -30px;
    margin-top: -5px;
}

.message-note {
    padding-right: 30px;
    text-align: right;
    margin-top: -20px;
}

.message-form {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding-left: 30px;
    padding-right: 30px;
}

.message-form input,
textarea {
    font-family: "museomoderno", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 16pt;
    color: #2C1400;
}

.small-input {
    padding: 10px;
    border-radius: 10px;
    background-color: #FDF6E6;
    border-color: #832100;
    border-width: 2px;
}

.large-input {
    padding: 10pt;
    border-radius: 10px;
    background-color: #FDF6E6;
    height: 30vh;
    border-color: #832100;
    border-width: 2px;
}

.message-send-button {
    text-align: center;
    margin-left: 30px;
    margin-right: 30px;
    background-color: #F99872;
    border-radius: 10px;
    padding: 5pt;
}

.message-send-button h6 {
    font-size: 18pt;
}

.message-send-button:hover {
    background-color: #FF7F4D;
}

.error-message {
    color: #d33;
    display: block;
    font-family: "museomoderno", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12pt;
}




/* ABOUT FOOTER */

.about-footer {
    width: 100%;
    height: 100%;
    overflow: hidden;
    margin-top: -500px;
}

.about-footer-imgs {
    width: 100%;
}

.about-footer-imgs img {
    width: 100%;
}

.bottom-links ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
    color: #fdf6e6;
    background-color: #252B07;
    padding-top: 30px;
    padding-bottom: 20px;
    padding-left: 120px;
    padding-right: 120px;
    margin-top: -10px;
    text-transform: uppercase;
}


















/* TOP BUTTON */

#back-to-top {
    display: none;
    bottom: 75px;
    right: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 30px;
    padding-right: 30px;
    background-color: #f3dcff;
    border-style: solid;
    border-radius: 10px;
    border-width: 3px;
    border-color: #723194;
    box-shadow: 5px 5px 0px rgba(114, 49, 148, 0.8);
    text-align: center;
    position: fixed;
    z-index: 9999;
    transition: transform 0.2s ease;
    font-family: "museomoderno", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16pt;
    color: #2C1400;
    transition: transform 0.3s ease-in-out;
}

#back-to-top.show {
    display: block;
    opacity: 1;
}

#back-to-top:hover {
    transform: scale(1.05);
}

















/* MEDIA QUERIES 991 */

@media only screen and (max-width: 992px) {



    h1 {
        font-size: 70pt;
    }

    p {
        font-size: 16pt;
    }

    h2 {
        font-size: 40pt;
    }

    h3 {
        font-size: 30pt;
    }

    h4 {
        font-size: 20pt;
    }

    /* NAV */

    nav {
        padding: 2% 3%;
    }

    .nav-button,
    .nav-logo {
        height: 50px;
        width: 150px;
        border-radius: 15px;
    }

    .nav-open-content {
        width: 80%;
        right: 3%;
    }

    /* HERO */

    .about-hero-text h5 {
        font-size: 18pt;
        left: 35%;
        position: absolute;
    }

    .about-hero {
        min-height: 500px;
        max-height: 500px;
    }

    /* CONTENT */

    .about-content {
        padding-bottom: 90%;
    }

    .business-link {
        width: 80%;
        margin-top: -2%;
    }

    .resume {
        width: 80%;
    }

    .about-contact-left {
        width: 100%;
    }

    .message-form-box {
        width: 70%;
        position: absolute;
        left: 4vw;
        margin-top: -38%;
    }

    .message-header img {
        width: 60%;
    }

    .message-note {
        margin-top: 5px;
    }

    .message-note p {
        font-size: 24pt;
    }

    .large-input {
        height: 25vh;
    }

    .contact-details-body p {
        font-size: 24pt;
    }

    .social-header img {
        width: 30%;
    }

    .social {
        height: 25%;
    }

    .socials {
        padding-left: 30px;
        padding-right: 30px;
    }

    .socials i {
        font-size: 40pt;
    }

    .about-contact {
        display: flex;
        flex-direction: column;
    }

    .about-contact-right {
        width: 100%;
    }

    .polaroid {
        width: 65%;
        left: 25%;
        top: -10%;
        transform: rotate(25deg);
    }

    /* FOOTER */

    .about-footer {
        margin-top: -440px;
    }

    .bottom-links ul {
        display: flex;
        flex-wrap: wrap;
        padding-left: 80px;
        padding-right: 200px;
        gap: 30px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

}








/* MEDIA QUERIES 1540 */

@media only screen and (min-width: 1541px) {

    .about-hero {
        max-height: 700px;
    }

}









/* MEDIA QUERIES 1920 */

@media only screen and (min-width: 1900px) {

    h1 {
        font-size: 160pt;
    }

    .about-hero {
        height: 90vh;
        min-height: 900px;
        max-height: 1080px;
    }

    .socials i {
        font-size: 50pt;
    }

    .contact-details-body p {
        font-size: 24pt;
    }

    .message-send-button h6 {
        font-size: 24pt;
    }



}
