/* large and default screen */
*, *::before, *::after {
    box-sizing: border-box;

    }
/* header */
header {
    width: 100vw;
    height: 70px;
    border-bottom: 2px solid black;
    background-color: #323232;
    background-image: url("../bg_head_foot-100.jpg");
    background-size: cover;
    position: sticky;
    top: 0;}
/* header logo placement */
#header-logo {
    display:inline-block;
    padding: 10px;
    height: 95%;
    margin:auto;
    }
/* links and nav */
nav {color:#767679;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1rem;
    padding: 24px;
    position: relative;
    float: right;
    }
ul#nav_links {
    list-style-type: none;
    margin: 0;
    padding: 0;
    }
ul#nav_links li {
    display: inline;
}  
a {color: #767679;}
a:hover {color: #b4b4b9;}
/* body */
body {
    font-size: 100%;
    width: 100vw;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #4d4d4e;
    background-image: url("../bg_body-100.jpg"); 
    background-attachment: fixed;
    background-size: cover;
    margin: auto;
    position: absolute;
    margin: 0;
    padding: 0;
    overflow: hidden;
    }
div.contain { /* main container on pages*/
    width: 70vw;
    height: 90vh;   
    margin-left: auto;
    margin-right: auto;    
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
    }
footer {
    height: 40px;
    width: 100vw;
    margin-top: auto;
    bottom: 0;
    border-top: 2px solid black;
    background-color: gray;
    background-image: url("../bg_head_foot-100.jpg");
    background-size: cover;
    position: sticky;
   }
/* copyright placement */
#footer {        
    padding-right: 24px;
    float: right;  
    color:#b4b4b9;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: small;
}
/* headers */
h1.page-title {
    display: inline-block;
    font-family: "Ubuntu", sans-serif;
    font-weight: 7  00;
    font-style: normal;
    font-size: 2em;
    padding: 14px;
    float: none;
    position: absolute;
    margin-top: 0;
}
h1 {color: #767679;
    margin-bottom: -5px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 2.5em;
}
h2 {color: #767679;
    margin-left: 0px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 500;
    font-style: italic;
    font-size: 2em;   
}
hr.header2 { /* how to make this fit in space inline with h2? */
    display: block;
    color: #767679;
    width:100%;
    margin-left: 0px;
    margin-right: -10px;
    margin-bottom: -10px;
}
div.exp_title {
    display: flex;
    flex-direction: column;
    align-items: right;
    }

h3 {/* how to make this not get cut off at certain scales */
    color: #e6e6e6;
    margin-left: 10px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.5em;
    display: flex;
    line-height: 1em;
    overflow: visible !important;
}
h4 {
    color: #e6e6e6;
    margin-left: 10px;
    margin-right: 0px;
    margin-top: -21px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.25em;
    display: inline-block;
    text-align: right;
    line-height: 1em;
}
/* education */
h4.exp_edu {
    color: #e6e6e6;
    margin-left: 10px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.25em;
    display: inline-block;
    text-align: right;
    line-height: 1.2em;
}
p {
    color: #e6e6e6;
    margin-left: 10px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.1em;
}
/* freelance */
p#freelance {
    color: #e6e6e6;
    margin-left: 15px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.1em;
}
ul {
    display:block;
    margin-left: 0px;
    color: #e6e6e6;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1em;
    margin-bottom: -10px;
}
/* logo on main */
#logo_main:hover {
    cursor: pointer;
    transform: scale(1.0);
    animation-name: logo_main;
    animation-duration: 0s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}
@keyframes logo_main {
    0%{transform: scale(1.0);}
    50% {transform: scale(1.01);}
    100% {transform: scale(1.0);}
}
/* scales logo on home */
#logo_main { 
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px; 
    width: 80vw;
    height: auto;
    max-width: 800px;
    animation-name: logo_main;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    }
/* logo container on home */
div#logo_main { 
    margin: auto;
    }

/* Carousel */
div.carousel {
    display: flex;
    flex-direction: column;
    align-items: center;
    content: center;
    width: 90%;
    margin: auto;
    }
ul.carousel-slides {
    margin: 0;
    padding: 0;
    list-style: none;
    }
.slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: 200ms opacity ease-in-out;
    transition-delay: 200ms;
    }
.slide img {
    display: block;
    object-fit: cover;
    object-position: center;
    width: 100%;
    }
.slide[data-active] {
    opacity: 1;
    z-index: 1;
    transition-delay: 0ms;
    }
.carousel-button {
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    border-radius: .25rem;
    padding: 0 .5rem;
    font-size: 4rem;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    color: #e6e6e640;
    background-color: #32323280;
    }
.carousel-button:hover,
.carousel-button:focus {
    color: #767679;
    background-color: #4d4d4e80;
}
.carousel-button:focus {
    outline: 1px solid #767679;
}
.prev {
    left: 1rem;
    }
.next {
    right: 1rem;
    }

/* medium large screen */
@media screen and (max-width: 1200px) {
/* body */
body {
    font-size: 100%;
    width: 100vw;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #4d4d4e;
    background-image: url("../bg_body-100.jpg"); 
    background-attachment: fixed;
    background-size: cover;
    margin: auto;
    position: absolute;
    margin: 0;
    padding: 0;
    overflow: hidden;
    }
div.contain { /* main container on pages*/
    width: 80vw;
    height: 90vh;   
    margin-left: auto;
    margin-right: auto;    
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
    }
}

 /* medium screen */
@media screen and (max-width: 1024px) {
    body {
        font-size: 100%;
        width: 100vw;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        background-color: #4d4d4e;
        background-image: url("../bg_body-100.jpg"); 
        background-attachment: fixed;
        background-size: cover;
        margin: auto;
        position: absolute;
        margin: 0;
        padding: 0;
        overflow: hidden;
        }
    div.contain { /* main container on pages*/
        width: 70vw;
        height: 90vh;   
        margin-left: auto;
        margin-right: auto;    
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-width: none;
        }
    /* headers */
    h1 {color: #767679;
        margin-bottom: -5px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 00;
        font-style: normal;
        font-size: 2.2em;
    }
    h2 {color: #767679;
        margin-left: 0px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 500;
        font-style: italic;
        font-size: 1.8em;   
    }
    hr.header2 { /* how to make this fit in space inline with h2? */
        display: block;
        color: #767679;
        width:100%;
        margin-left: 0px;
        margin-right: -10px;
        margin-bottom: -10px;
    }
    div.exp_title {
        display: flex;
        flex-direction: column;
        align-items: right;
        }

    h3 {/* how to make this not get cut off at certain scales */
        color: #e6e6e6;
        margin-left: 10px;
        margin-bottom: 0px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.3em;
        display: flex;
        line-height: 1em;
        overflow: visible !important;
    }
    h4 {
        color: #e6e6e6;
        margin-left: 10px;
        margin-right: 0px;
        margin-top: -20px;
        margin-bottom: 0px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1.2em;
        display: inline-block;
        text-align: right;
        line-height: 1em;
    }
    /* education */
    h4.exp_edu {
        color: #e6e6e6;
        margin-left: 10px;
        margin-right: 0px;
        margin-top: 0px;
        margin-bottom: 0px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1.2em;
        display: inline-block;
        text-align: right;
        line-height: 1.2em;
    }
    p {
        color: #e6e6e6;
        margin-left: 10px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1em;
    }
    /* freelance */
    p#freelance {
        color: #e6e6e6;
        margin-left: 15px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1.1em;
    }
    ul {
        display:block;
        margin-left: 0px;
        color: #e6e6e6;
        font-family: "Ubuntu", sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1em;
        margin-bottom: -4px;
    }
}
/* medium small screen */
@media screen and (max-width: 768px) {
    body {
        font-size: 100%;
        width: 100vw;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        background-color: #4d4d4e;
        background-image: url("../bg_body-100.jpg"); 
        background-attachment: fixed;
        background-size: cover;
        margin: auto;
        position: absolute;
        margin: 0;
        padding: 0;
        overflow: hidden;
        }
    div.contain { /* main container on pages*/
        width: 80vw;
        height: 90vh;   
        margin-left: auto;
        margin-right: auto;    
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-width: none;
        }
    #logo_main { 
        margin-left: auto;
        margin-right: auto;
        margin-top: -40px; 
        width: 80vw;
        height: auto;
        max-width: 500px;
        }

        /* headers */
h1 {color: #767679;
    margin-bottom: -5px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 00;
    font-style: normal;
    font-size: 2em;
}
h2 {color: #767679;
    margin-left: 0px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 500;
    font-style: italic;
    font-size: 1.5em;   
}
hr.header2 { /* how to make this fit in space inline with h2? */
    display: block;
    color: #767679;
    width:100%;
    margin-left: 0px;
    margin-right: -10px;
    margin-bottom: -5px;
}
div.exp_title {
    display: flex;
    flex-direction: column;
    align-items: right;
    }
h3 {/* how to make this not get cut off at certain scales? */
    color: #e6e6e6;
    margin-left: 10px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.15em;
    display: flex;
    line-height: 1em;
}
h4 {
    color: #e6e6e6;
    margin-left: 10px;
    margin-right: 0px;
    margin-top: -17px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1em;
    display: inline-block;
    text-align: right;
    line-height: 1em;
}
/* education */
h4.exp_edu {
    color: #e6e6e6;
    margin-left: 10px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1em;
    display: inline-block;
    text-align: right;
    line-height: 1.2em;
}
p {
    color: #e6e6e6;
    margin-left: 10px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.1em;
}
/* freelance */
p#freelance {
    color: #e6e6e6;
    margin-left: 15px;
    margin-bottom: -10px;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.1em;
}
ul {
    display:block;
    margin-left: 0px;
    color: #e6e6e6;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1em;
    margin-bottom: 10px;
}
}


/* small screen */
@media screen and (max-width: 600px) {
    #logo_main { /* scales logo on home */
        margin-left: auto;
        margin-right: auto;
        margin-top: -100px ;
        width: 60vw;
        height: auto;
        max-width: 300px;
        }
    header {
        width: 100vw;
        height: 70px;
        border-bottom: 2px solid #767679;
        background-color: #b4b4b9;
        background-image: url("../bg_head_foot-100-light.jpg");
        background-size: cover;
        position: sticky;
        top: 0;}
    /* links and nav */
    nav {color:#4d4d4e;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.1em;
        padding: 24px;
        position: relative;
        float: right;
        }
    ul#nav_links {
        list-style-type: none;
        margin: 0;
        padding: 0;
        }
    ul#nav_links li {
        display: inline;
    }  
    a {color: #4d4d4e;}
    a:hover {color: #323232;}

    body { /* body on mobile */
        font-size: 100%;
        width: 100vw;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        background-color: #4d4d4e;
        background-image: url("../bg_body-light-1200.jpg"); 
        background-attachment: fixed;
        background-size: cover;
        margin: auto;
        position: absolute;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }
    div.contain { /* main container on pages*/
        width: 90vw;
        height: 90vh;   
        margin-left: auto;
        margin-right: auto;    
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-width: none;
        }
    footer {
        height: 40px;
        width: 100vw;
        margin-top: auto;
        bottom: 0;
        border-top: 2px solid #767679;
        background-color: #b4b4b9;
        background-image: url("../bg_head_foot-100-light.jpg");
        background-size: cover;
        position: sticky;
       }
    
    /* copyright placement */
    #footer {        
        padding-right: 24px;
        float: right;  
        color: #323232;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: small;
    }
    /* headers */
    h1 {color: #4d4d4e;
        margin-left: 10px;
        margin-bottom: -5px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 1.4em;
    }
    h2 {color: #4d4d4e;
        margin-left: 10px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 500;
        font-style: italic;
        font-size: 1.5em;   
        overflow: visible; 
    }
    hr.header2 { /* how to make this fit in space inline with h2? */
        color: #4d4d4e;
        width:94%;
        margin-left: 10px;
        margin-right: -10px;
        margin-bottom: -10px;
    }
    h3 {/* how to make this not get cut off at certain scales */
        color: #4d4d4e;
        margin-left: 15px;
        margin-right: -40px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 500    ;
        font-style: normal;
        font-size: 1.3em;
        display: inline-block;
    }
    h4 {
        color: #4d4d4e;
        margin-left: 15px;
        margin-right: 0px;
        margin-top: 0px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.1em;
        line-height: 1.2em;
        display: inline-block;
        text-align: left;
    }
    /* education */
    h4.exp_edu {
        color: #4d4d4e;
        margin-left: 15px;
        margin-right: 0px;
        margin-top: 0px;
        margin-bottom: 0px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.1em;
        display: inline-block;
        text-align: left;
        line-height: 1.2em;
    }
    p {
        color: #4d4d4e;
        margin-left: 14px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 1.1em;
        line-height: 1.2em;
    }
    /* freelance */
    p#freelance {
        color: #4d4d4e;
        margin-left: 20px;
        margin-bottom: -10px;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.1em;
        line-height: 1.2em;
    }
    /* lists */
    ul {
        display:block;
        margin-left: 0px;
        color: #4d4d4e;
        font-family: "Ubuntu", sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size: 1.1em;
        margin-bottom: 0px;
        line-height: 1.2em;
    }
    /* end mobile */
}
