/**
Queries for media.
 */

/* screenwidth less than 1024px
--------------------------------------------------------------------- */
@media only screen and (max-width: 1024px) {

    /* header styles
   ------------------------------------------------------------------ */
    header .banner-text h1 {
        font: 80px/1.1em 'opensans-bold', sans-serif;
        letter-spacing: -1px;
        margin: 0 auto 15px auto;
    }

}

/* screenwidth less than 1024px
--------------------------------------------------------------------- */
@media only screen and (max-width: 1024px) {

    /* header styles
   ------------------------------------------------------------------ */
    header .banner-text h1 {
        font: 80px/1.1em 'opensans-bold', sans-serif;
        letter-spacing: -1px;
        margin: 0 auto 15px auto;
    }

}

/* screenwidth less than 950px
--------------------------------------------------------------------- */
@media only screen and (max-width: 950px) {

    /* default
    -------------------------------------------------------------------- */
    /* header styles
   ------------------------------------------------------------------ */
    header .banner-text h1 {
        font: 78px/1.1em 'opensans-bold', sans-serif;
        letter-spacing: -1px;
    }

    header .banner-text h3 {
        font: 17px/1.9em 'librebaskerville-regular', serif;
        width: 80%;
    }

    header .banner-text hr {
        width: 65%;
        margin: 12px auto;
    }

    /* nav-wrap */
    #nav-wrap {
        font: 13px 'opensans-bold', sans-serif;
        letter-spacing: 1px;
    }

    /* About Section
    ------------------------------------------------------------------- */
    #about .profile-pic {
        width: 144px;
        height: 144px;
    }

    #about .contact-details {
        width: 50%;
    }

    /* Resume Section
    ------------------------------------------------------------------- */
    #resume h1 {
        font: 16px/24px 'opensans-bold', sans-serif;
    }

    #resume .main-col {
        padding-right: 5%;
    }

    /* Testimonials Section
    ------------------------------------------------------------------- */
    #testimonials .header-col h1:before {
        font-size: 66px;
        line-height: 66px;
    }

    #testimonials blockquote p {
        font-size: 22px;
        line-height: 46px;
    }

    /* Call to Action Section
   ------------------------------------------------------------------- */
    #call-to-action .header-col h1:before {
        font-size: 66px;
        line-height: 66px;
    }

    /* Contact Section
    ------------------------------------------------------------------- */
    #contact .section-head {
        margin-bottom: 30px;
    }

    #contact .header-col h1:before {
        font-size: 66px;
        line-height: 66px;
    }

    #contact .section-head p.lead {
        font: 17px/33px opensans-light, sans-serif;
    }

}

/* mobile wide/smaller tablets
---------------------------------------------------------------------- */

@media only screen and (max-width: 767px) {

    body {
        font-size: 17px;
    }

    section {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }

    h1, h2 {
        text-align: center;
    }

    /* default
    -------------------------------------------------------------------- */
    p {
        margin: 0 0 15px 0;
    }

    li {
        margin-bottom: 12px;
    }

    .row {
        width: 460px;
        margin: 0 auto;
        padding: 0;
    }

    .column, .columns {
        width: auto !important;
        float: none;
        margin-left: 0;
        margin-right: 0;
        padding: 0 30px;
    }

    .row .row {
        width: auto;
        max-width: none;
        margin: 0 -30px;
    }

    [class*="column"] + [class*="column"]:last-child {
        float: none;
    }

    [class*="bgrid"] [class*="column"] + [class*="column"]:last-child {
        float: none;
    }

    /* Offsets */
    .row .offset-1 {
        margin-left: 0;
    }

    .row .offset-2 {
        margin-left: 0;
    }

    .row .offset-3 {
        margin-left: 0;
    }

    .row .offset-4 {
        margin-left: 0;
    }

    .row .offset-5 {
        margin-left: 0;
    }

    .row .offset-6 {
        margin-left: 0;
    }

    .row .offset-7 {
        margin-left: 0;
    }

    .row .offset-8 {
        margin-left: 0;
    }

    .row .offset-9 {
        margin-left: 0;
    }

    .row .offset-10 {
        margin-left: 0;
    }

    .row .offset-11 {
        margin-left: 0;
    }

    /* mobile navigation
    -------------------------------------------------------------------- */
    #nav-wrap {
        font: 12px 'opensans-bold', sans-serif;
        background: transparent !important;
        letter-spacing: 1px;
        width: auto;
        position: fixed;
        top: 0;
        right: 0;
    }

    #nav-wrap > a {
        width: 60px;
        height: 60px;
        text-align: left;
        background-color: var(--accent-color);
        position: relative;
        border: none;
        float: right;
        text-shadow: none;
        color: transparent;
        top: 0;
    }

    #nav-wrap > a:before,
    #nav-wrap > a:after {
        position: absolute;
        border: 2px solid #fff;
        top: 35%;
        left: 25%;
        right: 25%;
        content: '';
    }

    #nav-wrap > a:after {
        top: 60%;
    }

    /* toggle buttons */
    #nav-wrap:not( :target ) > a:first-of-type,
    #nav-wrap:target > a:last-of-type {
        display: block;
    }

    /* hide menu panel */
    #nav-wrap ul#nav {
        height: auto;
        display: none;
        clear: both;
        width: auto;
        float: right;

        position: relative;
        top: 12px;
        right: 0;
    }

    /* display menu panels */
    #nav-wrap:target > ul#nav {
        display: block;
        padding: 15px 10px 10px;
        font-size: 15px;
        background: #1f2024;
        margin: 0 30px;
        clear: both;
    }

    ul#nav li {
        display: block;
        height: auto;
        margin: 0 auto;
        padding: 10px;
        text-align: left;
        border-bottom: 1px dotted #2D2E34;
    }

    ul#nav li a {
        color: #ffffff;
        display: block;
        margin: 0;
        padding: 0;
        line-height: 16px; /* reset line-height from 48px */
        border: none;
    }

    /* Header Styles
    -------------------------------------------------------------------- */
    header .banner-text {
        width: 100%;
    }

    header .banner-text h1 {
        font: 68px/1.1em 'opensans-bold', sans-serif;
    }

    header .banner-text h3 {
        font: 17px/1.9em 'librebaskerville-regular', serif;
        width: 85%;
    }

    header .banner-text hr {
        width: 80%;
        margin: 18px auto;
    }

    /* header social links */
    header .social {
        margin: 18px 0 24px 0;
        font-size: 30px;
        line-height: 36px;
    }

    header .social li {
        margin: 0 10px;
    }

    /* scrolldown link */
    header .scrolldown {
        display: none;
    }

    /* About Section
    -------------------------------------------------------------------- */
    #about .profile-pic {
        display: block;
        width: 130px;
        height: 130px;
        margin: -50px auto 30px;
    }

    #about .download .button {
        width: 100%;
        text-align: center;
        padding: 15px 20px;
    }

    #about .main-col {
        padding-right: 30px;
    }

    #about h3 {
        padding-top: 0;
        font: 25px/40px 'opensans-bold', sans-serif;
    }

    #about p {
        line-height: 29px;
    }

    #about #commit-chart {
        display: none !important;
    }

    #about #github-3d-contrib {
        display: none;
    }

    #about .logo img {
        width: 50%;
    }

    #about .people {
        padding-top: 1rem;
    }

    /* services Section
    ----------------------------------------------------------------------- */
    #services h2 {
        padding-bottom: 0;
        margin-bottom: 0;
    }

    #services .four {
        padding: 3rem;
        text-align: center;
    }

    #services .row + .row {
        padding-top: 0;
    }

    #services .sub {
        font-size: 2rem;
    }

    /* contact Section
    ----------------------------------------------------------------------- */
    #contact .section-head {
        margin-bottom: 12px;
    }

    #contact img {
        padding: 0 5rem 2rem;
    }

    #contact .section-head h1 {
        font: 20px/24px 'opensans-bold', sans-serif;
        text-align: center;
        text-shadow: 0 1px 3px rgba(0, 0, 0, 1);
    }

    #contact h1 span {
        display: block;
    }

    #contact .header-col {
        padding-top: 0;
    }

    #contact .header-col h1:before {
        content: none;
    }

    #contact .section-head p.lead {
        text-align: center;
    }

    /* form */
    #contact label {
        float: none;
        width: 100%;
    }

    #contact input,
    #contact textarea,
    #contact select {
        margin-bottom: 6px;
        width: 100%;
    }

    #contact button.submit {
        margin: 30px 0 24px 0;
    }

    #message-warning, #message-success {
        width: 100%;
        margin-left: 0;
    }

    #contact label {
        margin: 12px 0;
    }

    /* footer
    ------------------------------------------------------------------------ */
    /* copyright */
    footer .copyright li:before {
        content: none;
    }

    footer .copyright li {
        margin-right: 12px;
    }

    footer .row {
        width: 93%;
    }

    footer .row.bottom {
        font-size: 15px;
    }

    /* Go To Top Button */
    #go-top {
        margin-left: -22px;
    }

    #go-top a {
        width: 54px;
        height: 54px;
        font-size: 18px;
        line-height: 54px;
    }

    /* other
    ------------------------------------------------------------------------ */
    .submit-button-container {
        text-align: center;
    }

    .opaque {
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        border-bottom: 0 !important;
    }

}

@media only screen and (max-width: 650px) {
    #background-page-header img {
        max-width: 100%;
    }

    header .banner .logo {
        width: 100%;
    }

    header .banner .logo-bg {
        margin: 0 auto;
        padding: 2rem;
        border-radius: 2rem;
    }
}

@media only screen and (min-width: 576px) {
    #resume .description {
        text-align: justify;
    }
}

/* mobile narrow
  -------------------------------------------------------------------------- */
@media only screen and (max-width: 480px) {

    /* default
    -------------------------------------------------------------------- */
    .row {
        width: auto;
    }

    /* mobile navigation
    -------------------------------------------------------------------- */
    #nav-wrap ul#nav {
        width: auto;
        float: none;
    }

    /* header styles
    -------------------------------------------------------------------- */
    header .banner {
        padding-top: 24px;
    }

    header .banner-text h1 {
        font: 40px/1.1em 'opensans-bold', sans-serif;
        margin: 0 auto 24px auto;
    }

    header .banner-text h3 {
        font: 15px/1.9em 'librebaskerville-regular', sans-serif;
        width: 90%;
    }

    /* header social links */
    header .social {
        font-size: 20px;
    }

    header .social li {
        margin: 0 6px;
    }

    #resume ol > li, p {
        text-align: left;
    }
}
