
/* || Homepage specific shite */

.hero-container-index {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(Images/hero-bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.hero-container-index .central-container {
    display: flex;
    width: 55%;
    height: auto;
}

.hero-container-index .central-container .text-container {
    height: 100%;
    width: 65%;
    margin-right: 40px;
}

.hero-container-index .central-container .text-container .title {
    height: 40%;
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    color: white;
    font-size: 3.75vw;
    text-align: left;
    font-weight: bold;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
    margin-top: 4vh;
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
}

.hero-container-index .central-container .text-container .strapline {
    height: 35%;
    width: 100%;
    color: white;
    font-size: 1.5vw;
    text-align: left;
    margin-top: 20px;
    margin-bottom: 30px;
}

.hero-container-index .central-container .text-container .button-container-hero {
    width: 100%;
    height: 10%;
    display: flex;
}

.hero-container-index .central-container .text-container .button {
    border: solid thin white;
    color: white;
    border-radius: 0.25em;
    margin-right: 25px;
    padding: 10px 20px;
    font-size: 1.25vw;
    background-color: #274954;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
    transition: 0.3s;
}

.hero-container-index .central-container .text-container .button:hover {
    background-color: #eca72c;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
}

.hero-container-index .central-container .profile-container {
    height: auto;
    width: 35%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background-color: rgb(7, 17, 8, 0.5);
    border: solid thin white;
    border-radius: 2em;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
    padding: 1px 0;
}

.hero-container-index .central-container .profile-container .avatar {
    width: 75%;
    object-fit: contain;
    border-radius: 50%;
    margin-top: 2.5vh;
    border: solid 1px white;
}

.hero-container-index .central-container .profile-container .description {
    width: 100%;
    color: white;
    text-align: center;
    justify-content: center;
}

.hero-container-index .central-container .profile-container .description .title {
    font-size: 1.35vw;
    letter-spacing: 0.1em;
    font-weight: 750;
    margin-top: 2vh;
}

.hero-container-index .central-container .profile-container .underline {
    width: 90%;
    margin-left: 5%;
    color: white;
    margin-top: 1.5vh;
    margin-bottom: 1.5vh;
}

.hero-container-index .central-container .profile-container .description .tick-icon {
    width: 1vw; 
    height: 1vw;
    margin: 0 2% 0 2%;
}

.hero-container-index .central-container .profile-container .description .features-container {
    margin-bottom: 2vh;
    margin-left: 1vw;
}

.hero-container-index .central-container .profile-container .description .feature {
    display: flex; 
    align-items: center;
    margin-bottom: 1vh;
    color: white; 
    font-family: Cabin; 
    font-size: 1vw;
}

.spacer-home {
    width: 100%; 
    height: 100vh; 
    z-index: 0;
}

.exp-banner {
    width: 100%;
    height: 45vh;
    background-color: #40798C;
    z-index: 5;
    border-top: solid 1px white;
    border-bottom: solid 1px white;
}

.exp-banner .exp-title {
    width: 100%; 
    margin-top: 6vh;
    color: white; 
    font-size: 1.4vw; 
    letter-spacing: 0.075em; 
    text-align: center;
}

.exp-banner .exp-container {
    width: 100%; 
    display: flex; 
    flex-direction: row; 
    justify-content: center;
}

.exp-banner .exp-container .exp-item-container {
    width: 15%;
    display: flex;
    justify-content: center;
}

.exp-banner .exp-container .exp-item {
    width: 100%; 
    object-fit: contain;
}

.main-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-bottom: solid thin white;
}

.main-content .approach-container {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    background-image: url(Images/approach-bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom: solid 1px white;
}

.main-content .approach-container .approach-text {
    width: 60%;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 20vh 0;
}

.main-content .approach-container .approach-text .main {
    color: white;
    font-size: 1.75vw;
    text-align: justify;
    margin-top: 4vh;
    line-height: 1.5em;
}

.main-content .structure-container {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    background-color: #01011C;
}

.main-content .structure-container .structure-content {
    width: 60%;
    margin: 10vh 0;
}

.main-content .structure-container .structure-content .cards-container {
    margin-top: 5vh;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.main-content .structure-container .structure-content .card {
    width: 31%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: left;
}

.main-content .structure-container .structure-content .card .icon-container {
    width: 100%;
}

.main-content .structure-container .structure-content .card .icon {
    width: 3.5vw;
    height: 3.5vw;
    background-color: #40798C;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 1em;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
}

.main-content .structure-container .structure-content .card .icon .icon-img {
    width: 60%;
}

.main-content .structure-container .structure-content .card .title-container {
    width: 100%;
    color: white;
    text-align: left;
    font-size: 1.75vw;
    font-weight: 700;
    padding-top: 2vh;
}

.main-content .structure-container .structure-content .card .text-container {
    width: 100%;
    color: gray;
    text-align: left;
    font-size: 1vw;
    padding-top: 1vh;
}

.main-content .assessment-container {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    background-color: #01011C;
    padding-bottom: 10vh;
}

.main-content .assessment-container .inner{
    width: 60%;
    height: auto;
    display: flex;
    justify-content: center;
}

.main-content .assessment-container .image-container{
    width: 30%;
    height: auto;
    display: flex;
    justify-content: center;
}

.main-content .assessment-container .image-container .icon {
    width: 60%;
    object-fit: contain;
}

.main-content .assessment-container .text-container{
    width: 70%;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

.main-content .marking-container {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    background-color: #01011C;
    padding-bottom: 10vh;
}

.main-content .marking-container .inner{
    width: 60%;
    height: auto;
    display: flex;
    justify-content: center;
}

.main-content .marking-container .image-container{
    width: 30%;
    height: auto;
    display: flex;
    justify-content: center;
}

.main-content .marking-container .image-container .icon {
    width: 55%;
    object-fit: contain;
}

.main-content .marking-container .text-container{
    width: 70%;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

.main-content .whyitworks-container {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #01011C;
    padding-bottom: 10vh;
}

.main-content .whyitworks-container .inner{
    width: 60%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: solid thin white;
    padding: 4vh 0;
    border-radius: 1em;
    background-color: rgb(251, 254, 249, 0.1);
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
}

.main-content .whyitworks-container .text-container{
    width: 80%;
    height: auto;
    display: flex;
    justify-content: center;
    text-align: center;
    color: white;
    font-size: 1.25vw;
}

@media screen and (max-width: 1440px) {
}

@media screen and (max-width: 640px) {

    .hero-container-index {
        width: 100%;
        height: auto;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        background-image: url(Images/hero-bg.png);
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        padding: 8vh 0;
    }

    .hero-container-index .central-container {
        display: flex;
        width: 90%;
        height: auto;
        flex-direction: column;
        justify-content: center;
    }

    .hero-container-index .central-container .text-container {
        height: 100%;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .hero-container-index .central-container .text-container .title {
        height: 40%;
        width: 100%;
        display: flex;
        color: white;
        font-size: 9vw;
        text-align: center;
        font-weight: bold;
        letter-spacing: 0.08em;
        margin-bottom: 5px;
        margin-top: 12vh;
    }

    .hero-container-index .central-container .text-container .strapline {
        height: 50%;
        width: 100%;
        color: white;
        font-size: 5vw;
        text-align: center;
        margin-top: 10px;
    }

    .hero-container-index .central-container .text-container .button-container-hero {
        width: 100%;
        height: 10%;
        display: flex;
        justify-content: center;
    }
    
    .hero-container-index .central-container .text-container .button {
        border: solid thin white;
        color: white;
        border-radius: 0.25em;
        margin: 0 1vw 3vh 1vw;
        padding: 8px 20px;
        font-size: 4vw;
        background-color: #274954;
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
        transition: 0.3s;
    }
    
    .hero-container-index .central-container .text-container .button:hover {
        background-color: #eca72c;
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
    }

    .hero-container-index .central-container .profile-container {
        height: auto;
        width: 90%;
        margin-top: 5vh;
        margin-left: 2%;
        padding: 5% 2%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        background-color: rgb(251, 254, 249, 0.1);
        border: solid thin white;
        border-radius: 1.25em;
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
    }

    .hero-container-index .central-container .profile-container .description {
        margin-top: 3vh;
        width: 100%;
        color: white;
        text-align: center;
        justify-content: center;
    }
    
    .hero-container-index .central-container .profile-container .description .title {
        font-size: 5.5vw;
        letter-spacing: 0.12em;
        font-weight: 750;
    }

    .hero-container-index .central-container .profile-container .description .tick-icon {
        width: 5vw; 
        height: 5vw;
        margin: 0 2% 0 2%;
    }
    
    .hero-container-index .central-container .profile-container .description .features-container {
        margin-bottom: 2vh;
        margin-left: 5vw;
        margin-top: 2h;
    }
    
    .hero-container-index .central-container .profile-container .description .feature {
        display: flex; 
        align-items: center;
        margin-bottom: 1vh;
        color: white; 
        font-family: Cabin; 
        font-size: 4.5vw;
    }

    .spacer-home {
        width: 100%; 
        height: 150vh;
        z-index: 5;
        display: none;
    }

    .exp-banner {
        width: 100%;
        height: auto;
        padding-top: 2vh;
        padding-bottom: 4vh;
        background-color: #40798C;
        border-top: solid 1px white;
    }
    
    .exp-banner .exp-title {
        width: 90%; 
        margin-top: 4vh;
        margin-left: 5%;
        color: white; 
        font-size: 4.5vw; 
        letter-spacing: 0.075em; 
        text-align: center;
    }

    .exp-banner .exp-container {
        width: 100%; 
        display: flex; 
        flex-direction: column; 
        justify-content: center;
        align-items: center;
    }

    .exp-banner .exp-container .exp-item-container {
        width: 60%;
        display: flex;
        justify-content: center;
        margin-bottom: -2.5vh;
    }

    .main-content .approach-container .approach-text {
        width: 80%;
        color: white;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin: 10vh 0;
    }
    
    .main-content .approach-container .approach-text .main {
        color: white;
        font-size: 4.5vw;
        text-align: justify;
        margin-top: 4vh;
        line-height: 2em;
    }

    .main-content .structure-container .structure-content {
        width: 80%;
        margin-top: 10vh;
    }

    .main-content .structure-container .structure-content .cards-container {
        margin-top: 5vh;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .main-content .structure-container .structure-content .card {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: left;
    }
    
    .main-content .structure-container .structure-content .card .icon {
        width: 15vw;
        height: 15vw;
        background-color: #40798C;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 0.5em;
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
    }
    
    .main-content .structure-container .structure-content .card .icon .icon-img {
        width: 60%;
    }
    
    .main-content .structure-container .structure-content .card .title-container {
        width: 100%;
        color: white;
        text-align: left;
        font-size: 5vw;
        font-weight: 700;
        padding-top: 2vh;
    }
    
    .main-content .structure-container .structure-content .card .text-container {
        width: 100%;
        color: gray;
        text-align: left;
        font-size: 4vw;
        padding-top: 1vh;
        margin-bottom: 5vh;
    }

    .main-content .assessment-container {
        width: 100%;
        height: auto;
        display: flex;
        justify-content: center;
        background-color: #01011C;
        padding-bottom: 10vh;
    }
    
    .main-content .assessment-container .inner{
        width: 80%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
    .main-content .assessment-container .image-container{
        width: 80%;
        height: auto;
        display: flex;
        justify-content: center;
        margin-bottom: 4vh;
    }
    
    .main-content .assessment-container .image-container .icon {
        width: 50%;
        object-fit: contain;
    }
    
    .main-content .assessment-container .text-container{
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .main-content .marking-container {
        width: 100%;
        height: auto;
        display: flex;
        justify-content: center;
        background-color: #01011C;
        padding-bottom: 10vh;
    }
    
    .main-content .marking-container .inner{
        width: 80%;
        height: auto;
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
    }
    
    .main-content .marking-container .image-container{
        width: 80%;
        height: auto;
        display: flex;
        justify-content: center;
        margin-bottom: 4vh;
    }
    
    .main-content .marking-container .image-container .icon {
        width: 45%;
        object-fit: contain;
    }
    
    .main-content .marking-container .text-container{
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }
    
    .main-content .whyitworks-container {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        background-color: #01011C;
        padding-bottom: 10vh;
    }
    
    .main-content .whyitworks-container .inner{
        width: 80%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        border: solid thin white;
        padding: 4vh 0;
        border-radius: 0.5em;
        background-color: rgb(251, 254, 249, 0.1);
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
    }
    
    .main-content .whyitworks-container .text-container{
        width: 90%;
        height: auto;
        display: flex;
        justify-content: center;
        text-align: center;
        color: white;
        font-size: 4vw;
    }
}