* {
    box-sizing: border-box;
    flex-grow: 1;
    flex-shrink: 1;
}

body {
    text-align: center;
    background-color: rgb(242, 243, 244);
    padding-bottom: 1.2%;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 3.73vh;
    width: 100%;
    flex-shrink: 1;
    flex-grow: 1;
}

p {
    text-align: justify;
    font-size: 2.33vh;
}

a {
    text-decoration: none;
    color: black;
}

h2 {
    font-size: 3.38vh;
    flex-grow: 1;
    flex-shrink: 1;
}

h3 {
    font-size: 2.57vh;
    flex-grow: 1;
    flex-shrink: 1;
}

  /*-----------------------------------------------
|   Separators
-----------------------------------------------*/

.section-break {
    padding-top: 3%;
    padding-right: 6%;
    padding-left: 6%;
}

.border {
    border-top: 2px solid grey;
}

.shadow {
    -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

  /*-----------------------------------------------
|   Intro Section
-----------------------------------------------*/

.intro {
    background-color: rgb(242, 215, 213);
    height: 35%;
}

.intro h1 {
    font-family: 'Raleway', sans-serif;
    font-size: 7vh;
    font-weight: bolder;
    display: flex;
    justify-content: center;
}

.intro h3 {
    font-family: 'Raleway', sans-serif;
    font-size: 3.15vh;
    display: flex;
    justify-content: center;
}

.test {
    padding-top: 5%;
    padding-bottom: 5%;
}

  /*-----------------------------------------------
|   Navigation Bar
-----------------------------------------------*/

.nav {
    width: 100%;
    border-top: 2px solid black;
    border-bottom: 2px solid black;
    background-color: rgb(229, 231, 233);
    display: inline-flex;
    flex-shrink: 1;
    flex-grow: 1;
}

.nav h3 {
    display: inline-block;
    margin-right: 1%;
    margin-left: 1%;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 600;
    flex-shrink: 1;
    flex-grow: 1;
    overflow: auto;
}

.nav a {
    color: black;
    text-decoration: none;
    flex-shrink: 1;
    flex-grow: 1;
}

  /*-----------------------------------------------
|   About Section
-----------------------------------------------*/

#about {
    background-color: rgb(242, 243, 244);
    box-sizing: border-box;
    padding: 1%;
    padding-right: 9%;
    padding-left: 9%;
    text-align: center;
}

#about div {
    width: 100%;
    margin-top: 6%;
    flex-grow: 1;
    flex-shrink: 1;
    margin-right: 4%;
    vertical-align: middle;
    height: 50%;
}

#about img {
    float: center;
    margin: auto 0;
    height: 56vh;
    display: flex;
    justify-content: center;
}

#about p {
    padding-left: 2%;
    flex-grow: 1;
    flex-shrink: 1;
    justify-content: flex-end;
    text-align: justify;
}

  /*-----------------------------------------------
|   Curriculum Section
-----------------------------------------------*/

.curriculum {
    background-image: url(../images/picture24.png);
    height: 55vh;
    background-size: 90vw auto;
    background-repeat: no-repeat;
}

#curriculum p {
    text-align: center;
}

#curriculum a {
    text-align: center;
    color: cornflowerblue;
    text-decoration: underline;
}

  /*-----------------------------------------------
|   Research Section
-----------------------------------------------*/

#research h4 {
    text-align: justify;
    margin-bottom: -1%;
    font-size: 2.57vh;
    font-weight: 600;
}

#research p {
    margin-bottom: 3%;
    text-align: justify;
}

#research img {
    display: inline-flex;
    flex-grow: 1;
    flex-shrink: 1;
}

/* Publications section */

#publications {
    padding-right: 3%;
    padding-left: 3%;
}

#publications a {
    color: cornflowerblue;
    text-decoration: underline;
}

/* Working papers section */

.working-papers {
    background-image: url(../images/picture34.png);
    height: 55vh;
    background-repeat: no-repeat;
    background-size: 90vw auto;
    flex-grow: 1;
    flex-shrink: 1;
}

#working-papers {
    padding-right: 3%;
    padding-left: 3%;
    margin-bottom: 5%;
}

  /*-----------------------------------------------
|   Practice Section
-----------------------------------------------*/

.practice {
    background-image: url(../images/picture44.png);
    height: 55vh;
    background-repeat: no-repeat;
    background-size: 90vw auto;
    flex-grow: 1;
    flex-shrink: 1;
}

.practice-content {
    padding-right: 3%;
    padding-left: 3%;
}

/* Block quote */

.blockquote {
    border: 3px groove grey;
    text-align: center;
    width: 60%;
    padding: 1.2% 2.4% 1.2% 2.4%;
    margin: 0 auto;
    font-style: italic;
    position: relative;
}

.blockquote-footer {
    text-align: right;
}

  /*-----------------------------------------------
|   Teaching Section
-----------------------------------------------*/

#teaching {
    padding-right: 9%;
    padding-left: 9%;
}

#teaching p {
    text-align: justify;
}

ol {
    text-align: left;
    margin-left: 2%;
    font-size: 2.33vh;
}

#teaching a {
    color: cornflowerblue;
    text-decoration: underline;
}

  /*-----------------------------------------------
|   Contact Section
-----------------------------------------------*/


#contact p{
    text-align: center;
}

  /*-----------------------------------------------
|   Media Queries (making webpage compatible for all devices)
-----------------------------------------------*/

/* iPhone and iPad potrait view */

@media only screen and (max-width: 1024px) and (orientation: portrait) {

    #about {
        display: flex;
        justify-content: flex-start;
    }

    #about img {
        height: 18vh;
    }

    .intro h1 {
        line-height: 6vh;
        font-size: 5.8vh;
    }

    .intro h3 {
        font-size: 2.8vh;
    }

    p, footer, ol {
        font-size: 2vh;
    }

    .nav a {
        font-size: 1.3vh;
    }

    .blockquote {
        width: 85%;
    }

    .curriculum {
        background-color: white;
        height: 50vh;
    }

    .working-papers {
        background-color: white;
        height: 50vh;
    }
    
    .practice {
        background-color: white;
        height: 50vh;
        background-size: 100vw auto;
    }
}

/* Laptop view */

@media only screen and (min-width: 1025px) {

    .curriculum {
        background-image: url(../images/picture25.png);
        background-size: 100vw auto;
        background-color: white;
        background-attachment: fixed;
        flex-grow: 1;
        flex-shrink: 1;
    }
    
    .working-papers {
        background-image: url(../images/picture35.png);
        background-size: 100vw auto;
        background-color: white;
        background-attachment: fixed;
        flex-grow: 1;
        flex-shrink: 1;
    }

    .practice {
        background-image: url(../images/picture45.png);
        background-size: 92vw auto;
        background-color: white;
        background-attachment: fixed;
        flex-grow: 1;
        flex-shrink: 1;
    }

    #about {
        display: flex;
        justify-content: flex-start;
    }
}

/* iPhone landscape view */

@media only screen and (max-width: 1024px) and (orientation: landscape){

    .parallax-group {
        /* The image used */
        background-image: url("../images/picture44.png");
      
        /* Set a specific height */
        min-height: 30vh; 
      
        /* Create the parallax scrolling effect */
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto 80vh;
    }

    #about {
        display: flex;
        justify-content: flex-start;
    }
}


/* iPad landscape view */

@media only screen and (min-width: 1025px) and (max-width: 1200px) and (orientation: landscape) and (orientation: portrait) {

    .parallax-group {
        /* The image used */
        background-image: url("../images/picture44.png");
      
        /* Set a specific height */
        min-height: 50vh; 
      
        /* Create the parallax scrolling effect */
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    #about {
        display: flex;
        justify-content: flex-start;
    }
}

  /*-----------------------------------------------
|   Margins and Padding
-----------------------------------------------*/

.p-0 {
    padding: 0px;
}

.p-1 {
    padding: 10px;
}

.p-2 {
    padding: 20px;
}

.p-3 {
    padding: 30px;
}

.pt-2 {
    padding-top: 20px;
}

.pt-5 {
    padding-top: 50px;
}

.pt-6 {
    padding-top: 60px;
}

.pb-4 {
    padding-bottom: 40px;
}

.mb-01 {
    margin-bottom: -10px;
}

.mb-0 {
    margin-bottom: 0px;
}

.mb-1 {
    margin-bottom: 10px;
}

.mb-2 {
    margin-bottom: 20px;
}

.mb-3 {
    margin-bottom: 30px;
}

.mb-4 {
    margin-bottom: 40px;
}

.mb-5 {
    margin-bottom: 50px;
}

.mb-6 {
    margin-bottom: 60px;
}

.mb-8 {
    margin-bottom: 80px;
}

.mt-05 {
    margin-top: -50px;
}

.mt-010 {
    margin-top: -100px;
}

.mt-0 {
    margin-top: 0px;
}

.mt-1 {
    margin-top: 10px;
}

.mt-2 {
    margin-top: 20px;
}

.mt-3 {
    margin-top: 30px;
}

.mt-4 {
    margin-top: 40px;
}

.mt-5 {
    margin-top: 50px;
}

.mt-6 {
    margin-top: 60px;
}


/* Adding Parallax Effects */
.parallax-headshot {
    /* The image used */
    background-image: url("../images/picture24.png");
  
    /* Set a specific height */
    min-height: 50vh; 
  
    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 100vh;
}

.parallax-standing {
    /* The image used */
    background-image: url("../images/picture34.png");
  
    /* Set a specific height */
    min-height: 50vh; 
  
    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 100vh;
}

.parallax-group {
    /* The image used */
    background-image: url("../images/picture44.png");
  
    /* Set a specific height */
    min-height: 50vh; 
  
    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 80vh;
}