* {
    margin: 0 auto;
    box-sizing: border-box;
    font-family: 'Source Sans Pro', sans-serif;
}

body {
    min-width: 350px;
}

.wrapper {
    max-width: 1440px;
}

/* Hero Section CSS */

.hero-section {
    background-color: #111111;
}

.logo {
    text-align: center;
    height: 10vh;
    width: 100%;
    max-width: 1440px;

    padding-top: 1rem;
}

.logo img {
    width: 250px;
}

.sign-in {
    display: none;
    width: 36px;
    position: absolute;
    top: 21px;
    right: 2rem;
}

.uk-flag {
    display: inline-block;
    width: 51px;
}

.japan-flag {
    display: inline-block;
    width: 51px;
    margin-left: 0.5rem;
}

.flags {
    position: absolute;
    top: 39px;
    left: 2rem;
}

.flags > * {
    vertical-align: middle;
}

.account-btn-wrapper {
    position: absolute;
    right: 2rem;
    top: 30px;
}

.account-btn {
    position: relative;
    background-image: linear-gradient(to top, #57adac 20%, #61c0bf 80%);
    font-size: 16px;
    padding: 12px 27px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.36s;
    outline: none;
    z-index: 2;
}

.account-btn a {
    position: relative;
    text-decoration: none;
    z-index: 3;
    color: #fae3d9;
    font-weight: 600;
}

.account-btn:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #fae3d9;
    transition: all 0.36s;
    border-radius: 6px;
}

.account-btn:hover a {
    color: #111111;
    transition: all 0.36s;
}

.account-btn:hover:after {
    width: 100%;
}

.hero-main-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-self: center;
    height: 90vh;
    width: 100%;

    padding-left: 3rem;
    padding-right: 3rem;
}

.main-content {
    color: #fae3d9;
}

.main-content h1 {
    position: relative;
    font-size: 39px;
    z-index: 2;
    margin-bottom: 3rem;
    font-family: 'Playfair Display', serif;
}

.main-btn {
    position: relative;
    background-image: linear-gradient(to top, #57adac 20%, #61c0bf 80%);
    font-size: 21px;
    padding: 15px 33px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.36s;
    outline: none;
    z-index: 2;
    display: inline;
}

.main-btn a {
    position: relative;
    text-decoration: none;
    z-index: 3;
    color: #fae3d9;
    font-weight: 600;
}

.main-btn:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #fae3d9;
    transition: all 0.36s;
    border-radius: 6px;
}

.main-btn:hover a {
    color: #111111;
    transition: all 0.36s;
}

.main-btn:hover:after {
    width: 100%;
}

.second-btn {
    position: relative;
    background-color: #fae3d9;
    font-size: 21px;
    padding: 15px 33px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.36s;
    outline: none;
    z-index: 2;
    display: inline;

    margin-left: 21px;
}

.second-btn a {
    position: relative;
    text-decoration: none;
    z-index: 3;
    color: #111111;
    font-weight: 600;
}

.second-btn:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: linear-gradient(to top, #57adac 20%, #61c0bf 80%);
    transition: all 0.36s;
    border-radius: 6px;
}

.second-btn:hover a {
    color: #fae3d9;
    transition: all 0.36s;
}

.second-btn:hover:after {
    width: 100%;
}

.hero-main-container img {
    text-align: center;
    height: 100%;
    width: 100%;
}

.circle1 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    border-radius: 50%;
    left: 15%;
    top: 24%;
    z-index: 1;
}

.circle2 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    border-radius: 50%;
    left: 36%;
    top: 57%;
    z-index: 1;
}

.circle3 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    border-radius: 50%;
    left: 39%;
    bottom: 9%;
    z-index: 1;
}

.square1 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    right: 9%;
    top: 15%;
    z-index: 1;
}

.square2 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    right: 30%;
    top: 42%;
    z-index: 1;
}

.square3 {
    position: absolute;
    border: 1px solid #3f3d56;
    height: 24px;
    width: 24px;
    right: 21%;
    bottom: 21%;
    z-index: 1;
}

/* .main-content p {
    font-size: 18px;
    color: #3f3d56;
    margin-left: 20px;
    float: left;
    margin-top: 18px;
    width: 150px;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
} */

/* Mobile Responsive Hero Section */

@media (max-width: 871px) {
    .main-content h1 {
        margin-bottom: 1rem;
    }

    .second-btn {
        margin-left: 0;
    }
}

@media (max-width: 829px) {
    .second-btn {
        margin-top: 15px;
    }
}

@media (max-height: 750px) {
    .main-content h1 {
        font-size: 36px;
    }
}

@media (max-width: 768px) {
    .hero-main-container {
        display: grid;
        grid-template-columns: auto;
        align-items: center;
        justify-self: center;

        padding-left: 0;
        padding-right: 0;
    }

    .main-content {
        text-align: center;
        margin-left: 2rem;
        margin-right: 2rem;
        margin-top: -6rem;
    }

    .main-content h1 {
        font-size: 27px;
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .hero-main-container img {
        width: 81%;
        margin-top: -15rem;
    }

    .main-btn {
        font-size: 18px;
    }

    .second-btn {
        font-size: 18px;
    }

    .logo img {
        width: 162px;
    }

    .main-content p {
        float: none;
        margin: 0 auto;
        font-size: 15px;
        margin-top: 9px;
    }

    .account-btn {
        display: none;
    }

    .sign-in {
        display: block;
        right: 1rem;
    }

    .uk-flag {
        width: 30px;
    }

    .japan-flag {
        width: 30px;
    }

    .flags {
        top: 33px;
        left: 1rem;
    }
}

@media (max-height: 700px) and (max-width: 768px) {
    .hero-main-container img {
        margin-top: -9rem;
    }

    .main-content {
        margin-top: -2rem;
    }

    .main-content h1 {
        font-size: 24px;
    }

    .main-btn {
        margin-top: -1rem;
    }
}


/* Information One */

#info-one {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    width: 100%;

    /* box-shadow: 3px 6px 18px #888888; */

    font-size: 21px;

    margin-top: 10rem;
    margin-bottom: 10rem;
    padding-top: 3rem;
    padding-bottom: 2rem;
}

.circle-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    width: 100%;

    padding-right: 6rem;
    margin-bottom: 2rem;
}

.btn-container {
    text-align: center;
}

.main-btn-two {
    position: relative;
    background-image: linear-gradient(to top, #57adac 20%, #61c0bf 80%);
    font-size: 21px;
    padding: 15px 33px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.36s;
    outline: none;
    z-index: 2;
    
    margin-top: 3rem;
}

.main-btn-two a {
    position: relative;
    text-decoration: none;
    z-index: 3;
    color: white;
    font-weight: 600;
}

.main-btn-two:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: white;
    transition: all 0.36s;
    border-radius: 6px;
}

.main-btn-two:hover a {
    color: #111111;
    transition: all 0.36s;
}

.main-btn-two:hover:after {
    width: 100%;
    border: 1px solid;
}

/* Information One Mobile */

@media (max-width: 848px) {
    #info-one {
        font-size: 18px;
    }
}

@media (max-width: 768px) {
    #info-one {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        width: 100%;
    }

    .circle-info {
        padding-right: 2rem;
    }
}


/* Information Two */

.moventum-image {
    width: 210px;
    margin-left: 1rem;
    margin-bottom: -4rem;
    margin-top: -5rem;
}

.bank-image {
    width: 210px;
    margin-left: 1rem;
    margin-bottom: 1rem;
}

.capital-image {
    width: 210px;
    margin-bottom: 1rem;
    margin-left: 1rem;
}

.luxembourg-image {
    width: 100px;
    margin-left: 1rem;
    margin-bottom: 1.1rem;
    margin-top: -0.5rem;
}

.text-two {
    text-align: center;
    margin-top: 2rem;
    margin-right: 2rem;
    margin-left: 2rem;
    margin-bottom: 1rem;
}

.text-two h2 {
    font-size: 36px;
    font-family: 'Playfair Display', serif;
}

.text-two p {
    font-size: 21px;
}

.text-two hr {
    width: 30%;
}

.text-boxes {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    justify-self: center;
    width: 100%;
}

.moventum-box,
.moventum-box-jp {
    width: 90%;
    box-shadow: 3px 6px 18px #888888;

    padding-top: 2rem;
    margin-top: 2rem;

    font-size: 16px;

    transition: all .6s ease-in-out;

    display: block;
    text-decoration: none;
}

.moventum-box .text-box {
    padding-bottom: 2.25rem;
    padding-top: 2.25rem;
}

.moventum-box-jp .text-box {
    padding-bottom: 4.25rem;
    padding-top: 4.25rem;
}

.luxembourg-box .text-box {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.luxembourg-box-jp .text-box {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
}

.bank-box,
.bank-box-jp {
    width: 90%;
    box-shadow: 3px 6px 18px #888888;

    padding-top: 2rem;
    margin-top: 2rem;

    font-size: 16px;

    transition: all .6s ease-in-out;

    display: block;
    text-decoration: none;
}

.capital-box,
.capital-box-jp {
    width: 90%;
    box-shadow: 3px 6px 18px #888888;

    padding-top: 2rem;
    margin-top: 2rem;

    font-size: 16px;

    transition: all .6s ease-in-out;

    display: block;
    text-decoration: none;
}

.luxembourg-box,
.luxembourg-box-jp {
    width: 90%;
    box-shadow: 3px 6px 18px #888888;

    padding-top: 2rem;
    margin-top: 2rem;

    font-size: 16px;

    transition: all .6s ease-in-out;

    display: block;
    text-decoration: none;
}

.moventum-box:hover,
.moventum-box-jp:hover {
    transform: scale(1.05);
}

.bank-box:hover,
.bank-box-jp:hover {
    transform: scale(1.05);
}

.capital-box:hover,
.capital-box-jp:hover {
    transform: scale(1.05);
}

.text-box {
    background-color: #3f3d56;
    color: white;
    padding: 1rem;
}

.text-box hr {
    width: 69%;
}

.btn-container {
    margin-bottom: 18rem;
}

/* Information Two Adjust */

@media (max-width: 1232px) {
    .bank-box .text-box {
        padding-top: 1.75rem;
        padding-bottom: 1.75rem;
    }
}

@media (max-width: 1138px) {
    .moventum-box .text-box {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}

@media (max-width: 1068px) {
    .bank-box .text-box {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }
}

@media (max-width: 1023px) {
    .bank-box .text-box {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}

@media (max-width: 932px) {
    .moventum-box .text-box {
        padding-top: 3.5rem;
        padding-bottom: 3.5rem;
    }
}

@media (max-width: 870px) {
    .moventum-box .text-box {
        padding-top: 4.25rem;
        padding-bottom: 4.25rem;
    }
}

@media (max-width: 869px) {
    .moventum-box .text-box {
        padding-top: 4.75rem;
        padding-bottom: 4.75rem;
    }
}



@media (max-width: 1270px) {
    .luxembourg-box .text-box {
        padding-top: 3.625rem;
        padding-bottom: 3.625rem;
    }
}

@media (max-width: 1167px) {
    .capital-box .text-box {
        padding-top: 1.75rem;
        padding-bottom: 1.75rem;
    }
}

@media (max-width: 1084px) {
    .capital-box .text-box {
        padding-top: 2.25rem;
        padding-bottom: 2.25rem;
    }
}

@media (max-width: 1013px) {
    .luxembourg-box .text-box {
        padding-top: 4.125rem;
        padding-bottom: 4.125rem;
    }
}


/* Information Two Adjust JP */

@media (max-width: 1363px) {
    .bank-box-jp .text-box {
        padding-top: 1.75rem;
        padding-bottom: 1.75rem;
    }
}

@media (max-width: 1014px) {
    .moventum-box-jp .text-box {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}

@media (max-width: 1003px) {
    .bank-box-jp .text-box {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }
}

@media (max-width: 968px) {
    .moventum-box-jp .text-box {
        padding-top: 5.75rem;
        padding-bottom: 5.75rem;
    }
}

@media (max-width: 959px) {
    .bank-box-jp .text-box {
        padding-top: 3.25rem;
        padding-bottom: 3.25rem;
    }
}

@media (max-width: 933px) {
    .moventum-box-jp .text-box {
        padding-top: 6.5rem;
        padding-bottom: 6.5rem;
    }
}

@media (max-width: 896px) {
    .bank-box-jp .text-box {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }
}

@media (max-width: 862px) {
    .moventum-box-jp .text-box {
        padding-top: 7.25rem;
        padding-bottom: 7.25rem;
    }
}


@media (max-width: 1198px) {
    .luxembourg-box-jp .text-box {
        padding-top: 4.25rem;
        padding-bottom: 4.25rem;
    }
}

@media (max-width: 1102px) {
    .luxembourg-box-jp .text-box {
        padding-top: 5.75rem;
        padding-bottom: 5.75rem;
    }
}

@media (max-width: 888px) {
    .capital-box-jp .text-box {
        padding-top: 1.75rem;
        padding-bottom: 1.75rem;
    }
}

@media (max-width: 873px) {
    .capital-box-jp .text-box {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }
}

@media (max-width: 855px) {
    .luxembourg-box-jp .text-box {
        padding-top: 6.5rem;
        padding-bottom: 6.5rem;
    }
}

/* Information Two Phone */

@media (max-width: 848px) {
    .text-two h2 {
        font-size: 24px;
    }

    .text-two p {
        font-size: 18px;
    }

    .text-boxes {
        display: grid;
        grid-template-columns: auto;
        align-items: center;
        justify-self: center;
    }
}


/* Information Three */

.info-three {
    margin-top: 6rem;
    color: white;
    background-color: #61c0bf;
    align-items: center;
    text-align: center;
    padding-bottom: 3rem;
}

.info-three h2 {
    font-size: 36px;
    padding-top: 3rem;
    margin-left: 1rem;
    margin-right: 1rem;
}

.info-three hr {
    width: 30%;
    margin-bottom: 1rem;
}

.section-info {
    margin-left: 1rem;
    margin-right: 1rem;
    height: 200px;
}

.section-info.two img {
    margin-bottom: 0.8rem;
}

.section-info.three img {
    margin-bottom: 0.5rem;
}

.section-info.four img {
    margin-bottom: 0.5rem;
}

.section-info h3 {
    margin-bottom: 1rem;
}

.starting-info {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: center;
    justify-self: center;
    width: 100%;
    height: 300px;
}

/* Information Three Mobile */

@media (max-width: 909px) {
    .starting-info {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        align-items: center;
        justify-self: center;
        width: 100%;
        height: 800px;
    }
}

@media (max-width: 848px) {
    .info-three h2 {
        font-size: 24px;
    }
}


/* Information Four */

.how-it-works {
    text-align: center;

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    justify-self: center;
    width: 100%;

    margin-top: 12rem;
    margin-bottom: 12rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.how-it-works h2 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;

    margin-left: 2rem;
    margin-right: 2rem;
}

.how-it-works img {
    border-style: double;
    border-width: 12px;
    border-color: #61c0bf;

    width: 720px;

    z-index: 1;
}

/* Information Four Image Responsive */

@media (max-width: 1026px) {
    .how-it-works img {
        width: 600px;
    }
}

/* Information Four Mobile */

@media (max-width: 848px) {
    .how-it-works h2 {
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    .how-it-works {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-self: center;
        width: 100%;
    }

    .how-it-works h2 {
        margin-bottom: 1rem;
    }

    .how-it-works img {
        width: 100%;
    }
}


/* Information Five */

.account-view-box h2 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;

    margin-left: 2rem;
    margin-right: 2rem;
    padding-top: 2rem;
}

.account-view-box hr {
    width: 30%;
    margin-bottom: 2rem;
}

.account-view-box {
    color: white;
    background-color: #61c0bf;
    align-items: center;
    text-align: center;
}

.account-view {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    justify-self: center;
    width: 100%;

    padding-bottom: 2rem;
}

.account-view-text {
    font-size: 21px;
    margin-right: 2rem;
}

/* Information Five Mobile */

@media (max-width: 848px) {
    .account-view-box h2 {
        font-size: 24px;
    }

    .account-view {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-self: center;
        width: 100%;
    }

    .account-view-text {
        grid-row: 1;
        margin-left: 2rem;
        font-size: 18px;
    }

    .account-view-box hr {
        margin-bottom: 4rem;
    }

    .account-view img {
        width: 100%;
    }
}


/* Footer */

.bottom {
    background-color: #111111;
}

.bottom-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    justify-self: center;
    text-align: center;
    width: 100%;

    height: 600px;
}

.bottom-text h1 {
    font-family: 'Playfair Display', serif;
    font-size: 45px;
    color:#fae3d9;

    margin-bottom: 2rem;
    margin-right: 2rem;
}

.bottom-text button {
    position: relative;
    background-image: linear-gradient(to top, #57adac 20%, #61c0bf 80%);
    font-size: 21px;
    padding: 15px 33px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.36s;
    outline: none;
    z-index: 2;

    margin-right: 2rem;
}

.bottom-text button a {
    position: relative;
    text-decoration: none;
    z-index: 3;
    color: #fae3d9;
    font-weight: 600;
}

.bottom-text button:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #fae3d9;
    transition: all 0.36s;
    border-radius: 6px;
}

.bottom-text button:hover a {
    color: #111111;
    transition: all 0.36s;
}

.bottom-text button:hover:after {
    width: 100%;
}

.bottom-info img {
    width: 330px;
}


/* Bottom Mobile */

@media (max-width: 768px) {
    .bottom-text h1 {
        font-size: 27px;
    }

    .bottom-text button {
        font-size: 18px;
    }

    .bottom-info {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-self: center;
        text-align: center;
        width: 100%;

        height: 100vh;
    }

    .bottom-text {
        grid-row: 1;
        margin-bottom: -3rem;
    }

    .bottom-text h1 {
        margin-right: 0;
    }

    .bottom-info img {
        margin-top: -3rem;
    }

    .bottom-text button {
        margin-right: 0;
    }
}