@charset "UTF-8";
/* CSS Document */

body {
    position: relative;
    background: #F9EBF3;
    margin: 0;
}

a, p {
    color: #613965;
}

.section {
    overflow: hidden;
    position: relative;
    z-index: 1;
}

/* HEADER SECTION */

/* -> GRID LAYOUT */

.header-container {
  display: grid;
  grid-template-columns: 33% 37% 30%;
  padding: 5px
}
@media screen and (max-width: 720px) {
    .header-container {
        display: grid;
        grid-template-columns: 100%;
    padding: 5px
    }
}

.header-container div {
  text-align: center;
}
.header-container a {
    color: thistle; 
}

/* -> POLKA-DOT HEADER BACKGROUND */

.polka {
    padding-top: 50px;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
.leftPolka {
    animation-name: bg-dots-scroll-left;
    animation-duration: 15s;
}
.rightPolka {
    animation-name: bg-dots-scroll-right;
    animation-duration: 5s;
}
.polka-bg {
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
@media screen and (max-width: 720px) {
    .polka, .leftPolka, .rightPolka, .polka-bg {
        display: none;
    }
}


/* -> NAME CARD */

.nameCardSection-wrapper {
    padding-top: 155px;
    padding-left: 15px;
}
.nameCardSection {
    color: #613965;
    background-color: rgba(249,235,243,0.7);
    padding: 20px auto 15px auto;
    border-radius: 75px;
}
.nameCardSection img {
    width: 80%;
    padding: 30px 0px 5px 0px;
}
.nameCardSection hr {
    margin: -30px auto -50px auto;
    height: 2px;
    width: 70%;
    color: #613965;
    background-color: #613965;
}
.nameCardSection p {
    font-size: 2.2em;
    line-height: 1.4;
}
@media screen and (max-width: 720px) {
    .nameCardSection-wrapper {
        margin: -10px 0 0 0;
        padding: 0 0 20px 0;
    }
    .nameCardSection img {
        width: 70%;
        padding: 5px auto 5px auto;
    }
    .nameCardSection hr {
        height: 1px;
        margin: auto;
    }
    .nameCardSection p {
        margin: 0;
        font-size: 1.5em;
        line-height: 1.2;
    }
}

/* -> HEADSHOT */
.headShotImg {
    padding-top: 33px;
    border-radius: 50px;
    margin: auto;
    width: 93%;
}
@media screen and (max-width: 720px) {
    .headShotImg {
        padding-top: 5px;
        border-radius: 15px;
        margin: auto;
        width: 50%;
    }
}

/* -> MINI NAV */
.miniNav {
    padding-top: 730px
}
.miniNav p {
    font-size: 1.6em;
    color: thistle;
}
@media screen and (max-width: 720px) {
    .miniNav {
        padding-top: 0px;
        margin-top: 10px;
    }
    .miniNav p {
        font-size: 1em;
        color: thistle;
    }
}



/* MAIN BODY SECTION */
.mainBody {
    margin-top: 45px;
    position: relative; 
    background-color: #FBF3F8;
    padding: 20px 250px;
    text-align: center;
}
.mainBody .title {
    font-size: 3.5em    
}
.mainBody .content {
    font-size: 1.5em; 
}
@media screen and (max-width: 720px) {
    .mainBody {
        padding: 25px 20px 0px;
        margin-top: 20px;
    }
    .mainBody .title {
        font-size: 1.8em;
        line-height: 0.1;
    }
    .mainBody .content {
        font-size: 1em;
    }
}
.showcase-container {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
    margin-bottom: 150px;
}
.showcase-container-box, .showcase-container-box-short {
    margin: 10px;
    display: grid;
    grid-template-rows: 4fr 1fr;  
    align-content: center;
}
.showcase-container-box div, .showcase-container-box-short div, .showcase-container-box div img, .showcase-container-box-short div img {
    width: 100%;
    margin: auto;
}
@media screen and (max-width: 720px) {
    .showcase-container {
        margin-bottom: 30px;
    }
    .showcase-container-box, .showcase-container-box-short {
        margin: 0;
    }
    .showcase-container-box-short {
        grid-template-rows: 1fr 1fr;
    }
    .showcase-container-box div, .showcase-container-box-short div, .showcase-container-box div img, .showcase-container-box-short div img {
        width: 100%;
        margin: 0;
    }
}
}
.showcase-container .caption {
    font-size: 1em;
}
.showcase-container .smallFlex {
    width: 20%;
}
.showcase-container .mediumFlex {
    width: 30%;
}
.showcase-container .bigFlex {
    width: 40%;
}
.showcase-container .hugeFlex {
    width: 45%;
}
@media screen and (max-width: 720px) {
    .showcase-container .smallFlex, .showcase-container .mediumFlex, .showcase-container .bigFlex, .showcase-container .hugeFlex {
        width: 100%;
    }
    .showcase-container .caption {
        line-height: 1;
    }
}
.video-container {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.video {
  width: 100%;
  height: 100%;
}



/* CONTACT SECTION */
.contact {
    background-color: #613965;
    color: #FBF3F8;
    text-align: center;
}
.contact p, .contact p a {
    color: white;
    font-size: 2em;
}
.contact-button {
    background-color: white;
    border-radius: 25px;
    padding: 20px 30px;
    margin: -10px auto 30px auto;
    display:inline-block;
    cursor: pointer;
    color: thistle;
    text-decoration: none;
    border: 2px solid thistle;
}


/* FOOTER SECTION */
.footer {
    text-align: center;
}
.footer p {
    white-space: pre;
}
.footer p, .footer p a {
    color: thistle; 
}
@media screen and (max-width: 720px) {
    .jumpers {
        display: none;
    }
}



/* ANIMATIONS */

@keyframes bg-dots-scroll-left {
    from {
        transform: translateX(0);
    } to {
        transform: translateX(-6%);
    }
}
@keyframes bg-dots-scroll-right {
    from {
        transform: translateX(-6%);
    } to {
        transform: translateX(0);
    }
}

/* TOP JUMP BUTTON STUFF */

.topJumpButton-div {
    position: fixed;
    z-index: 99;
    display: flex;
    justify-content: right;
    align-items: right;
    bottom: 100px;
    left: 93%
}
#top-jump {
    opacity: 0; 
    pointer-events: none;
    transition: all 0.06s ease-in;
} 
#top-jump.is-visible {
    opacity: 1;
    pointer-events: auto;
}
@media screen and (max-width: 720px) {
    .topJumpButton-div {
        display: none;
    }
}
