html { 
    scroll-behavior: smooth;
}

body {
    background: 
        linear-gradient(180deg, rgba(51, 0, 25, 0.9), rgba(255, 0, 255, 0.1)),
        url(../img/background/html-code_640.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    width: 100%;

    header nav div:first-child {
        max-width: 1200px;
        margin: 0 auto;
    }

    h1 {
        font-size: 4em;
    }

    h1, h2, h3, h4 {
        font-family: 'Glegoo', serif;
        font-weight: 900;
    }

    h2, h3 {
        margin-top: 2rem;
        margin-bottom: 2rem;
        letter-spacing: 2px;
    }

    p {
        font-size: 1.75em;
        letter-spacing: 1.5px;
        font-family: 'Montserrat', sans-serif;
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    @media screen and (max-width: 1141px) {
        h1 {
            font-size: 3.75em;
        }

        p {
            font-size: 1.5em;
        }
    }

    @media screen and (max-width: 1086px) {
        h1 { 
            font-size: 3.5em;
        }
    }

    @media screen and (max-width: 1032px) {
        h1 {
            font-size: 3.25em;
        }
    }

    @media screen and (max-width: 978px) {
        h1 {
            font-size: 3em;
        }
    }

    @media screen and (max-width: 923px) {
        h1 {
            font-size: 2.75em;
        }
    }

    @media screen and (max-width: 868px) {
        h1 {
            font-size: 2.5em;
        }
    }

    @media screen and (max-width: 813px) {
        h1 {
            font-size: 2.5em;
        }

        p {
            font-size: 1.25em;
        }
    }

    @media screen and (max-width: 762px) {
        h1 {
            font-size: 2.25em;
        }
    }

    @media screen and (max-width: 707px) {
        h1 {
            font-size: 2.2em;
        }

        p {
            font-size: 1.2em;
        }
    }

    @media screen and (max-width: 707px) {
        h1 {
            font-size: 2em;
        }
    }

    @media screen and (max-width: 621px) {
        h1 {
            font-size: 1.8em;
        }

        p {
            font-size: 0.7em;
        }
    }

    @media screen and (max-width: 621px) {
        h1 {
            font-size: 1.65em;
        }
    }

    @media screen and (max-width: 545px) {
        h1 {
            font-size: 1.2em;
        }
        
        p {
            margin-bottom: 0.1rem;
        }
    }
}

main {
    position: relative;
}

.contain {
    max-width: 1200px;
    margin: 0 auto;
}

.myrow {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.mywrapper {
    max-width: 1200px;
}

#navigation {
    .navbar {
        position: fixed;
        top: 0;
        width: 100%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 1.0), rgba(44, 44, 44, 0));
        padding-bottom: 75px;
        z-index: 2;
    }

    .navbar-expand-lg {
        justify-content: center;
    }

    .navbar-brand {
        color: white;
        font-weight: 900;
        font-family: 'Grandiflora One', cursive;
    }

    .nav-link {
        color: white;
        font-weight: 700;
        font-family: 'Montserrat', sans-serif;
    }

    .navbar-nav .nav-link.hover,
    .navbar-nav .nav-link.active,
    .navbar-nav .nav-link.show {
        color: #868686;
    }

    .nav-item {
        letter-spacing: 1.75px;

        @media screen and (max-width: 991px) {
            text-align: center;
        }
    }

    .nav-item:hover,
    .nav-item:focus {
        text-decoration: underline 5px;
        text-underline-offset: 8px;
        text-transform: uppercase;
        color: white;
        transition: ease 0.4s;
        outline: none;
    }

    .navbar-text {
        color: white;
        font-size: 2em;
        font-weight: 900;
        font-family: 'Grandiflora One', cursive;
        letter-spacing: 2px;

        @media screen and (max-width: 991px) {
            width: 100%;
            text-align: center;
            position: absolute;
            top: 0.6rem;
            right: 0%;
            left: auto;
            font-size: 1.25em;
            z-index: 10;
        }
    }

    .navbar-toggler {
        z-index: 1;
    }

    .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }

    .container-fluid {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }

    .logo-icon {
        border-radius: 50%;
        width: 2rem;
    }
}

footer {
    background-color: #fef2ee;
    width: 100%;
    height: auto;
    display: flex;
    align-items: flex-end;

    ul {
        list-style: none;
    }

    li {
        font-size: 1.25em;
    }

    img {
        width: 30px;
        height: auto;

        @media screen and (max-width: 545px) {
            width: 25px;
        }
    }
}

.footer-container {
    padding-top: 4rem;
    padding-right: 2rem;
    padding-bottom: 3rem;
    padding-left: 2rem;
    display: flex;

    @media screen and (max-width: 768px) {
        flex-flow: column-reverse;
        padding-top: 2rem;
        padding-bottom: 1rem;
    }
}

.footer-left {
    display: flex;
    width: 50%;

    @media screen and (max-width: 768px) {
        width: 100%;
        margin-top: 0.5rem;
        margin-bottom: 1rem;
    }

    .logo {
        max-width: 50%;
        margin-left: 0;

        @media screen and (max-width: 768px) {
            max-width: 25%;
        }
    }

    .social {
        display: flex;
        margin-bottom: 1rem;
        margin-left: 1rem;
        column-gap: 1rem;
        max-width: fit-content;
        align-items: flex-end;

        a {
            text-decoration: none;
        }

        img:hover {
            transform: scale(1.2);
            transition: ease-in-out 0.3s;
        }
    }
}

.footer-right {
    width: 50%;
    align-self: center;

    @media screen and (max-width: 768px) {
        width: 100%;
        font-size: 0.75em;
    }

    .edu-sec {
        display: flex;
    }

    .edu-sec div {
        max-width: fit-content;
    }

    .edu-sec ul {
        @media screen and (max-width: 768px) {
            padding-left: 1rem;
        }
    }

    .edu-sec ul li {
        font-size: 1em;
        padding-bottom: 0.25rem;
    }
}

.trademark {
    position: absolute;
    bottom: 15px;
    max-width: fit-content;
    color: black;

    @media screen and (max-width: 768px) {
        font-size: 0.75em;
    }
}
