@import url('https://fonts.googleapis.com/css2?family=Nunito&family=Open+Sans:wght@300&display=swap');

/* Body Styles */
body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: #D2D5DD;
    font-size: 150%;
    background-color: #3A3238;
    min-height: 100vh;
    padding: 0 1vw 0 1vw;
}

h1, h2, a {
    font-family: 'Nunito', sans-serif;
    text-transform: uppercase;
    color: #D2D5DD;
    
}

header {
    background-color: #3A3238;
    height: 75px;
    padding-bottom: 20px;
}

a {
    text-decoration: none;
}

a:hover {
    color: #F58F29;
}

ul {
    list-style-type: none;
}

hr {
    border: 1px solid #3A3238;
}

/* Logo and Navigation */

.logo {
    float: left;
    margin-left: 25px;
    color: #F58F29;
}

#nav {
    font-size: 110%;
    letter-spacing: 3px;
}

#nav li{
    float: right;
    list-style-type: none;
    margin-right: 25px;
    line-height: 105px;
}

.logo, #nav {
    line-height: 40px;
}

/* Hero image */

#hero-container { 
        height: 800px;
        width: 100%;
        overflow: hidden;
    
        position: relative;
    }

#hero-image {
    height: 800px;
    width: 100%;
    background-color: #D2D5DD;
    background: url('../images/pexels-binyamin-mellish-17840.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

    animation-name: hero-zoom;
    animation-duration: 5s;
    animation-fill-mode: forwards;
    overflow: hidden;
}

/* Animation for Hero image */

@keyframes hero-zoom {
    from{
        transform: scale(1);
    }
    to{
        transform: scale(1.1);
    }
}

/* Hero container for Hero images on facilities page */

.fac-hero-container { 
    height: 800px;
    width: 100%;
    overflow: hidden;

    position: relative;
}

/* Gym Hero image for facilties page */

#gym-hero-image {
    height: 800px;
    width: 100%;
    background-color: #D2D5DD;
    background: url('../images/Third_Space_Tower_Bridge_Studio_JMS_Uncropped-Compressed-for-CRM.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Spa Hero image for facilties page */

#spa-hero-image {
    height: 800px;
    width: 100%;
    background-color: #D2D5DD;
    background: url('../images/Third_Space_Highbury_Shot_07_089.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Yoga Hero image for facilties page */

#yoga-hero-image {
    height: 800px;
    width: 100%;
    background-color: #D2D5DD;
    background: url('../images/Mind-and-Body@2x.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Info box for Main Page Hero image */

#info-box {
    font-size: 100%;
    font-family: 'Nunito', sans-serif;
    text-transform: uppercase;
    letter-spacing: 3px;
    text-align: center;

    width: 400px;
    height: 300px;

    padding: 5px 10px 30px 10px;

    background-color: rgba(245,143,41, .8);

    bottom: 40px;
    right: 60px;

    position: absolute;
}

#info-box > h3 {
    font-size: 75%;
}

/* Info box for the images on the facilties page */

.info-box-2 {
    font-size: 100%;
    font-family: 'Nunito', sans-serif;
    text-transform: uppercase;
    letter-spacing: 3px;
    text-align: center;

    width: 100%;
    height: 800px;

    background-color: rgba(58, 50, 56, .4);

    bottom: 0;
    right: 0;

    position: absolute;
}

.info {
    padding: 300px 50px 50px 50px;
    font-weight: bold;
}

.info p {
    font-family: 'Open Sans', sans-serif;
}

/* Page Content */

.content {
    padding: 10px 50px 10px 50px;
    text-align: center;
    background-color: rgba(210, 213, 221);
    color: #000;
    border-radius: 20px;
}

.content h2 {
    color: #3A3238;
}

.tile {
    width: 100%;
    height: 100%;
}

.tile li {
    text-align: left;
    list-style-type: disc;
}

.live-page {
    border-bottom: 1px solid #F58F29;
}

/* Footer */

footer {
    height: 160px;
    background-color: #468189;
}

#footer-container {
    display: flex;
    justify-content: flex-end;
}

#address {
    flex: 1;
    order: 1;
    padding-left: 20px;
}

#contact {
    flex: 1;
    order: 3;
    padding-right: 20px;
    text-align: right;
}

#social {
    flex: 1;
    order: 2;
}

#follow {
    text-align: center;
}

#contact, #address, .socials {
    line-height: 30px;
}

footer h2 {
    font-size: 100%;
}

.socials {
    text-align: center;
}

.socials > li {
    display: inline;
}

.socials i {
    font-size: 120%;
    padding-right: 15px;
    padding-left: 15px;
    padding: 15px 15px 0 15px;
}

#socials > h2 {
    text-align: center;
}

/* Form */

#form-heading {
    padding-top: 150px;
    text-align: center;
}

#form {
    height: 900px;
    display: flex;
    justify-content: center;
}

.signup {
    margin-top: 5vh;
    color: #D2D5DD;
    background-color: rgba(245,143,41, .8);
    max-width: 500px;
    position: absolute;
    padding: 30px;
    width: 100%;
}

.form-input {
    background: transparent;
    color: #3A3238;
    width: 100%;
    height: 25px;
    margin: 20px 0 20px 0;
    border: 1px solid #3A3238;
    border-radius: 2px;
}

.join-button {
    padding: 10px;
    font-size: 80%;
    background-color: #D2D5DD;
    color: #3A3238;
}

.join-button:hover {
    background-color:  #F58F29;
    color: #D2D5DD;
}

/* Media Queries */

@media screen and (max-width: 950px) {
    #nav {
        clear: left;
        float: right;
        margin: 0 10px 10px 0;
        line-height: 10px;
    }

    #info-box {
        bottom: 0;
        right: 0;
    }

}

@media screen and (max-width: 750px) {
    #footer-container {
        flex-direction: column;
        align-items: center;
    }

    footer {
        height: 100%;
    }

    #address {
        flex: 1;
        order: 1;
        text-align: center;
        padding: 0;
    }
    
    #contact {
        flex: 1;
        order: 2;
        text-align: center;
        padding: 0;
    }
    
    .socials {
        flex: 1;
        order: 3;
        text-align: center;
        padding: 0;
    }
}

@media screen and (max-width: 520px) {

    #info-box {
        height: 30%;
        width: 100%;
        font-size: 75%;
    }

    .signup {
        width: 95%;
    }

    #nav {
        float: left;
    }

    .nav-wrapper {
        display: flex;
        flex-direction: column;
    }

    .nav-wrapper li:nth-child(1) {
        order: 3;
      }

    .nav-wrapper li:nth-child(2) {
        order: 2;
      }

    .nav-wrapper li:nth-child(3) {
        order: 1;
      }

    #form-heading {
        clear: both;
        padding: 10px;
    }

}