* {box-sizing: border-box;}

@font-face {
    font-family: arsenal;
    src: url(fonts/Arsenal-Regular.ttf);
}

@font-face {
    font-family: arsenalBold;
    src: url(fonts/Arsenal-Bold.ttf);
}

@font-face {
    font-family: arsenica;
    src: url(fonts/ArsenicaTrial-Regular.ttf);
}

@font-face {
    font-family: arsenicaThin;
    src: url(fonts/ArsenicaTrial-Thin.ttf);
}

@font-face {
    font-family: engry;
    src: url(fonts/engry.otf) format("opentype");
}

body{
    height: 100vh;
    display: flex;
    flex-direction: column;
    margin: 0;
    justify-content: space-between;
    background-color: #D4E6EB;
    align-items: center;
    width: 100%;
    position: relative;
}

img {
    -webkit-touch-callout: none; 
    -webkit-user-select: none; 
    -khtml-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
}

ul {
    list-style: none;
}

html {
    font-size: calc(15px + 0.390625vw);
    height: 100vh;
    margin: 0;
    font-family: engry;
    overflow-x: hidden;
}

p {
    font-family: arsenalBold;
    font-size: 1.2rem;
}


/*color palette https://coolors.co/0a1128-001f54-034078-1282a2-c3dee5-e1edf0-f0f5f6-fefcfb*/

/*Hamburger Menu Styling*/
.pageSelectContainer {
    display: none;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    width: 100%;
    position: fixed;
    z-index: 998;
    background-color: #4da1b9c4;
    transition: all 1.4s ease;
    padding-top: 20vh;
}

.hamburgerList {
    list-style: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10vw;
    text-align: center;
}

#hamburgerContainer {
    display: none;
    margin-right: 6%;
    cursor: pointer;
    height: 50px;
    width: 50px;
    align-items: center;
    justify-content: center;
}

.hamburger{
    position: absolute;
    height: 40px;
    width: 50px;
    padding: 0.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hamburger > div{
    position: relative;
    background: #F0EFE5;
    height: 3px;
    width: 80%;
    transition: all  0.4s ease;
}

.hamburger > div::before,
.hamburger > div::after{
    content: '';
    position: absolute;
    top: -10px;
    background: #F0EFE5;
    width: 100%;
    height: 3px;
    transition: all  0.4s ease;
}

.hamburger > div::after{
    top: 10px;
}


#toggler {
    display: none;
}

.toggled + .hamburger > div{
    background: rgba(0,0,0,0);
}

.toggled + .hamburger > div::before{
    top: 0;
    transform: rotate(45deg);
}

.toggled + .hamburger > div::after{
    top: 0;
    transform: rotate(135deg);
}

#burgerLink {
    font-size: 2em;
    white-space: inherit;
    text-align: center;
    font-family: engry;
}

#burgerLink:hover {
    color: #0A1128;
}

@media screen and (max-width: 767px) {
    .headerLink {
        display: none !important;
    }
    #hamburgerContainer {
        display: flex !important;
    }
}

.header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #0A1128;
    color: #F0F5F6;
    position: fixed;
    width: 100%;
    padding-top: 1vw;
    padding-bottom: 1vw;
    z-index: 999;
    height: fit-content;
}

.headerText{
    padding-left: 1.5em;
    white-space: nowrap;
}

.headerLink{
    display: flex;
    justify-content: space-between;
    gap: 2em;
    padding-right: 40px;
}

li > a{
    text-decoration: none;
    color: #F0F5F6;
    white-space: nowrap;
    font-family: arsenalBold;
}

li > a:hover{
    color:#A9D0DA;
}


.mainImgDiv{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: calc(40px + 4vw);
    width: 100%;
}

.mainImg{
   width: 100%;
}

.mainImgText {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 40%;
    left: 72%;
    transform: translate(-40%, -72%);
    gap: .8em;
    white-space: nowrap;
}

.hero{
    color: #F0F5F6;
    font-size: 4vw;
    margin: -30px;
    white-space: nowrap;
}

@media screen and (max-width:540px){
    .hero {
        margin: -20px !important;
    }
}

.heroSub {
    color: #F0F5F6;
    font-size: 2vw;
}



.indexMain {
    height: 80%;
    width: 85%;
    margin-top: 2em;
    margin-bottom: 4em;
    color: #F0F5F6;
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: center;

}

@media screen and (max-width: 900px) {
    .indexMain {
        flex-direction: column;
        height: fit-content;
        width: 100% !important;
        margin-bottom: .5em !important;
    }
    .textHolder {
        width: 90% !important;
    }
    .aboutImg {
        width: 90% !important;
        height: 80vh !important;
    }
    .indexAbout {
        font-size: 2em !important;
    }
}

.textHolder {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #1283a28f;
    padding-left: 2em;
    padding-right: 2rem;
    width: 50%;
    height: 100%;
}

.textHolder > p {
    font-size: calc(.95em + .43vw);
}

@media screen and (max-width:1120px) {
    .textHolder > p {
        font-size: calc(.85em + .39vw) !important;
    }
}

@media screen and (max-width:1030px) {
    .textHolder > p {
        font-size: calc(.8em + .3vw) !important;
    }
}


.indexAbout {
    font-size: 3vw;
    margin-bottom: 0px;
    margin-top: .8em;
    white-space: nowrap;
}

.indexUnderline {
    width: 80%;
    background-color: #D4E6EB;
    height: 5px;
    border-radius: 5px;
}

.aboutImg {
    height: 100%;
    object-fit: cover;
    width: auto;
    object-position: 50% 0%;
}

/*Slideshow styling*/

.bigFooter {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 0;
}

.slideshowBackground {
    background-color: #A9D0DA;
    padding: 3.5em;
    margin-top: 5em;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 3;
}

.slideshowBorder {
    padding: 3%;
    background-color: #4DA1B9;
    border-radius: 10px;
    width: 90%;
    z-index: 0;
}

.slideshowBlock {
    background-color: #2d869e75;
    width: 100%;
    height: 700px;
    z-index: 0;
    position: absolute;
}

@media screen and (max-width:1000px) {
    .slideshowBlock {
        display: none !important;
    }
    .slideshowBorder {
        width: 100% !important;
    }
}
@media screen and (max-width:680px) {
    .slideshowBackground {
        padding: 0 !important;
        background-color: #D4E6EB !important;
    }
    .slideshowBorder{
       padding: 0 !important;
       border-radius: none !important;
       background-color: #D4E6EB !important;
    }
}

.slideshow-container {
    max-width: 100%;
    position: relative;
    margin: auto;
    background-color: none;
}

.Containers {
    display: none;
    width: 100%;
}

.carouselPic {
    width: 100%;
    height: 90vh;
    object-fit: cover;
}

.Back, .Forward {
    cursor: pointer;
    position: absolute;
    top: 48%;
    width: auto;
    margin-top: -23px;
    padding: 17px;
    color: #F0F5F6;
    font-weight: bold;
    font-size: 19px;
    transition: 0.4s ease;
    border-radius: 0 5px 5px 0;
    user-select: none;
    background-color: #a9d0da5d;
}

.Forward {
    right: 0;
    border-radius: 5px 0 0 5px;
}

.Back:hover, .Forward:hover {
    font-size: 25px;
}

.Info {
    color: #F0F5F6;
    font-size: 60px;
    padding: 10px 14px;
    position: absolute;
    bottom: 30px;
    width: 100%;
    text-align: center;
}

.hidden {
    display: none;
}

.showText {
    animation: textAppear 2s;
}

.hideText {
    animation: hideText 1s;
}

@keyframes textAppear {
    from {
        opacity: 0;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes hideText {
    from {
        opacity:1;
        transform: scale(1);
    }
    to {
        opacity:0;
        transform: scale(.95);
    }
}

.MessageInfo {
    color: #F0F5F6;
    font-size: 14px;
    padding: 10px 14px;
    position:absolute;
    top: 0;
    background-color: #f0f5f677;
    border-radius: 0 0 5px 0;
}

.dotContainer {
    background-color: #a9d0da5d;
    position: absolute;
    width: fit-content;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    gap: 2px;
    top: 95%;
    left: 45%;
    -webkit-touch-callout: none; 
    -webkit-user-select: none; 
    -khtml-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
    white-space: nowrap;
}

.dots {
    cursor: pointer;
    height: 8px;
    width: 8px;
    margin: 0 3px;
    background-color: #F0F5F6;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.5s ease;
}

.enable, .dots:hover {
    background-color: #0A1128;
}

.fade {
    -webkit-animation-name: fade;
    -webkit-animation-duration: 1.4s;
    animation-name: fade;
    animation-duration: 1.4s;
}

@-webkit-keyframes fade {
    from {opacity: .5}
    to {opacity: 2;}
}

@keyframes fade {
    from {opacity: .5}
    to {opacity: 2}
}

.footer{
    display: flex;
    justify-content: center;
    background-color: #0A1128;
    align-items: center;
    width: 100%;
    margin-top: -20px;
}

.insta, .youtube {
    height: 30px;
}

.footerText{
    color: #F0F5F6;
    font-family: arsenal;
    font-size: .7em;
}

/*About Page styling*/

.aboutContent {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #1283a28f;
    width: 90%;
    margin-top: 100px;
    margin-bottom: 30px;
}

.aboutContent > img {
    max-width: 50%;
    max-height: 100%;
}

.aboutText {
    color: #F0F5F6;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left: 10%;

}

/*Contact Page Styling*/


.contactContent {
    display: flex;
    width: 80%;
    align-items: center;
    height: 70vh;
    justify-content: center;
    margin-top: 8.5%;
    gap: 2em;
}

.formContainer {
    background-color: #1283a28f;
    height: 100%;
    padding: 4%;
}

.contactHeader {
    color: #F0F5F6;
    font-size: 3rem;
    text-align: center;
}

.contactImg {
    height: 100%;
    width: auto;
}

.contactForm {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 20px;
    margin-bottom: 5%;
    justify-content: center;
    align-items: center;
    padding-left: 2%;
    padding-right: 2%;
}

.infoContainer {
    display: flex;
    gap: 1em;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.infoContainer > input {
   height: 2rem;
   width: 50%;
}

.contactForm > button {
    height: 2.5rem;
    width: 50%;
}

.contactForm > textarea {
    height: 10rem;
    width: 100%;
}

/*resume page styling*/

.resumeContent {
    display: flex;
    width: auto;
    gap: 3em;
    margin:0 auto;
    align-items: center;
    justify-content: center;
    padding-top: 8%;
    padding-bottom: 4%;
}


.resumeContainer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .8em;
}

.resumeContainer > a {
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3a7e9283;
    color: #F0F5F6;
    padding: 1%;
    border-color: #F0F5F6;
    border-style: solid;
    border-width: 1px;
    width: 70%;
}

.resumeContainer > a:hover {
    background-color: #2b607083;
}

.headshot, .resume {
    width: 40vw;
    border-color:#3a7e9283;
    border-width: 1em;
    border-style: solid;
}

@media screen and (max-width: 900px) {
    .resumeContent{
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin-top: 14%;
        margin-bottom: 10%;
        gap: 1em;
    }
    .headshot, .resume {
        width: 80vw;
    }
    .resumeContainer > a {
        width: 90%;
    }
    .contactImg {
        display: none;
    }
    .formContainer {
        height: fit-content;
        margin-top: 25vh;
    }
    
}

.construction {
    text-align: center;
    color: #0A1128;
}