/* GDES306 | MMDD253 - Coding Your Portfolio     */
/* Extra small devices (phones, less than 600px) */
/* No media query since this is the default CSS */

/* Basic page styling */
@import url('https://fonts.googleapis.com/css2?family=Merriweather&family=Raleway:wght@400;600;900&display=swap');
:root {
    /* These are global variables that you can use in your CSS */
    --black:black;
    --dark-grey:#333;
    --mid-grey:#666;
    --light-grey:#999;
    --white:white;
    --accent-colour:#85946d;
    --headline-font:'Raleway', sans-serif;
    --body-font:'Merriweather', serif;
    --horizontal-shift:6px;
    --section-padding-top:120px;
    }
    
    * {
    margin: 0;
    padding: 0;
    transition: 0.5s;
    }

body {
    font-family: var(--body-font);
    }
    #introduction h1 {
        font-weight: 400;
    }
    .MMDD {
        font-weight: 900;
    }
    .passionate {
        font-weight: 900;
        font-style: italic;
        text-decoration: underline;
    }
    h1, h2, h3, h4, h5, h6 {
    font-family: var(--headline-font);
    }
    h1 {
    font-size: calc(40px + (72 - 40) * (100vw - 400px) / (1800 - 400));
    margin-bottom: 3rem;
    }
    h2 {
    font-size: calc(30px + (48 - 32) * (100vw - 400px) / (1800 - 400));
    margin-bottom: 1.5rem;
    }
    h3 {
    font-size: calc(20px + (28 - 20) * (100vw - 400px) / (1800 - 400));
    }
    p {
    font-size: calc(16px + (20 - 16) * (100vw - 400px) / (1800 - 400));
    margin-bottom: 2rem;    
}

.intro-link {
    font-size: calc(20px + (28 - 20) * (100vw - 400px) / (1800 - 400));
    text-decoration: underline;
}

a {
    font-size: calc(16px + (20 - 16) * (100vw - 400px) / (1800 - 400));
    text-decoration: none;
    color: var(--black);
    }
    img {
    width:100%;
    }
    .btn {
    background-color: var(--black);
    border: none;
    border-radius: 8px;
    color: var(--white);
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: calc(16px + (20 - 16) * (100vw - 400px) / (1800 - 400));
    width: fit-content;
    }
    .btn:hover {
    background-color: var(--accent-colour);
    color:var(--white);
    padding-left:calc(32px + var(--horizontal-shift));
    }

    .btn_fullwork {
    background-color: var(--black);
    margin: 0 auto;
    border: none;
    border-radius: 8px;
    color: var(--white);
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: calc(16px + (20 - 16) * (100vw - 400px) / (1800 - 400));
    width: fit-content;
    }

    .btn_fullwork:hover {
    background-color: var(--accent-colour);
    color:var(--white);
    padding-left:calc(32px + var(--horizontal-shift));
    }

    /* Styling to invert the colour scheme. Add this class to a section */
.inverted-colours {
    background:var(--black);
    color:var(--white);
    }
    .inverted-colours a {
    color:var(--white);
    }
    .inverted-colours a:visited {
    color:var(--black);
    }
    .inverted-colours .btn {
    color:var(--black);
    background:var(--white);
    }
    .inverted-colours .btn:hover {
    color:var(--white);
    background:var(--accent-colour);
    }

/* Styling the Navigation */
header {
    position: fixed;
    width: 100%;
    z-index: 10;
    }
    nav {
    overflow: hidden;
    background: var(--white);
    height: 70px;
    }
    nav ul {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    }
    .navexpanded {
    height: 170px;
    }

nav ul {
    display: flex;
    list-style-type: none;
    flex-wrap: wrap;
    text-align: center;
    }
    nav ul > li {
    margin-top: 14px;
    flex-basis: 100%;
    }
    nav ul li a {
    text-decoration: none;
    color: var(--black);
    margin: 10px;
    padding: 10px 20px 10px 20px;
    }
    nav ul li a:hover {
    text-decoration: none;
    color: var(--white);
    background: var(--accent-colour);
    border-radius: 8px;
    }
    #logo {
        margin-right: auto;
        flex-basis: 50%;
        text-align: left;
        }
        #logo img {
        height: 2.5rem;
        }
        #menu-icon {
        margin-left: auto;
        flex-basis: 50%;
        text-align: right;
        font-size: 40px;
        margin-top: 0px;
        }
        #logo a:hover,
        #menu-icon a:hover {
        background: none;
        }

/* Styling for the Introduction */
#introduction {
    align-content: center;
    height: 100vh;
    padding-top:0;
    }

/* Styling for the Portfolio Section */
#portfolio h3 {
    margin-top: 8px;
}

#portfolio img {
    border-radius: 8px;
}

#portfolio a:hover h3,
#portfolio a:hover p {
padding-left:var(--horizontal-shift);
}

#portfolio img:hover {
    opacity: 0.7;
    box-shadow: 5px 5px 3px var(--mid-grey);
}

/* Styling for the Sections */
section {
    display: grid;
    min-height: calc(100vh - var(--section-padding-top));
    padding-top: var(--section-padding-top);
    grid-template-columns: 5% 1fr 5%;
    align-content: start;
    }

    section > * {
    grid-column: 2;
    }

    .two-columns {
    display: grid;
    grid-template-columns:1fr;
    grid-gap:50px;
    margin-bottom:3rem;
    }

    .two-columns-fixed {
    display: grid;
    grid-template-columns:1fr 1fr;
    grid-gap:50px;
    margin-bottom:3rem;
    }

    .featured {
    grid-column: 1/-1; /*This Class can be used to stretch an item the entire width of the parent grid */
    }

    .auto-height {
        min-height: auto;
        }

    .three-columns {
        display: grid;
        grid-template-columns:1fr 1fr;
        grid-gap:50px;
        margin-bottom:3rem;
        margin-top: 3rem;
        }

    .clickhere {
        font-family: var(--headline-font);
        font-weight: 600;
        text-decoration: underline;
    }
    .clickhere:hover {
        color: var(--accent-colour);
    }

/* Styling for the About */
#about ul {
    list-style: none;
    }

/* Styling for the About */
#about .intro-paragraph {
    font-size: calc(20px + (28 - 20) * (100vw - 400px) / (1800 - 400));
    grid-column: 1/-1;
    }

/* iFrame videos styling */
.single-video {
    margin: 0 auto;
    padding-bottom: 20px;
}

/* Small devices (i.e. tablets in portrait) */
@media (min-width: 600px) {
    nav ul {
        flex-direction: row;
        align-items: baseline;
        }
        nav ul > li {
        flex-basis: auto;
        }
        #logo {
        flex-basis: auto;
        }
        #menu-icon {
        display: none;
        }
        .navexpanded {
        height: 60px;
        }
        .three-columns {
            grid-template-columns:1fr 1fr 1fr;
            }
}

/* Styling the Contact section */
#contact {
    min-height:auto;
    }
    #contact ul {
    display: flex;
    list-style-type: none;
    margin-top: 1rem;
    margin-bottom:1rem;
    }
    #contact ul li a {
    text-decoration: none;
    color: var(--accent-colour);
    margin: 0 20px 0 0;
    font-size: 32px;
    }
    #contact ul li a:hover {
    text-decoration: none;
    color: var(--mid-grey);
    }

/* Small devices (i.e. tablets in portrait) */
@media (min-width: 600px) {
    section {
    grid-template-columns: 15% 1fr 15%;
    }
    .two-columns {
    grid-template-columns:1fr 1fr;
    }
}

/* Medium devices (i.e. tablets in landscape */
@media (min-width: 900px) {
}

/* Large devices (i.e. desktop) */

@media (min-width: 1200px) {
}
/* X-Large devices (i.e. big desktop) */

@media (min-width: 1800px) {
}
