@font-face {
    font-family: Circular;
    src: url(circular.ttf);
}

::-webkit-scrollbar {
    background-color: #333;
    /* change the background color of the scrollbar */
    width: 10px;
    scroll-behavior: smooth;
    overflow-y: auto;
}

::-webkit-scrollbar-thumb {
    background-color: #474747;
    /* change the color of the handle to white */
    border-radius: 10px;
}


html {
    scroll-behavior: smooth;
    font-family: Circular;
}

body {
    margin: 0;
    padding: 0;
    background-color: #291f48;
}

header {
    color: #fff;
    display: flex;
    align-items: center;
    padding: 2vh 2vw 1vh 2vw;
    justify-items: center;
    font-family: Circular;
    gap: 4vw;
}

.logo {
    font-size: 150%;
    margin: 0;
    color: #fff;
    font-weight: 100;
    text-decoration: none;
    font-weight: 500;
}

a {
    text-decoration: none;
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 18px;
}

#hero {
    height: 100%;
    width: 90%;
    display: flex;
    flex-wrap: nowrap;
    padding: 30px;
    padding-left: 50px;
    padding-right: 50px;
    justify-content: left;
}

#headings {
    display: flex;
    flex-direction: column;
}

#headings p {
    line-height: 1.5;
}

.branch {
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    padding: 5%;
    padding-top: 10%;
    padding-bottom: 10%;
}

.branch p {
    width: 50%;
}

#problems {
    margin-top: 10vh;
    color: gainsboro;
    background-color: #0f0f0f;
}

#solution {
    color: gainsboro;
    background-color: #0f0f0f;
}

#solution h3 {
    width: 60%;
}

#frustration {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 50px;
    align-items: center;
    margin-top: 5vh;
    width: 70vw;
}

#frustration p {
    width: 50%;
    font-family: Circular;
}

#pricing {
    margin-top: 10vh;
    background-color: #0f0f0f;
    color: gainsboro;
}

#pricing h3 {
    width: 100%;
}

#features {
    padding-top: 10px;
    padding-bottom: 10px;
}

.features-items {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
}
.feature-item {
    text-align: center;
    max-width: 30%;
}
.feature-item img {
    width: 70%;
    height: auto;
    border-radius: 10px;
    margin-top: -10%;
}

h2 {
    margin-top: 5vh;
    font-size: 65px;
    font-family: Circular;
    margin-bottom: 10px;
    color: gainsboro;
}

h3 {
    font-size: 40px;
    font-family: Circular;
    color: gainsboro;
    letter-spacing: 1px;
}

p {
    color: gainsboro;
    opacity: 0.8;
    font-size: 18px;
    word-wrap: break-word;
    width: 75%;
    font-weight: 500;
    font-family: Tahoma, sans-serif;
}

#highlight {
    position: relative;
    color: #18122B;
    padding: 5px;
}

#highlight::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #8f6ff6;
    transform: rotate(-2deg);
    z-index: -1;
}

#highlight-red {
    position: relative;
    color: rgb(37, 18, 18);
    padding: 5px;
    background-color: rgb(177, 69, 69);
}

#highlight-green {
    position: relative;
    color: rgb(18, 37, 31);
    padding: 5px;
}

#highlight-green::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgb(83, 172, 83);
    transform: rotate(-2deg);
    z-index: -1;
}

.pricing-table {
    display: flex;
}
.plan {
    background-color: #e6e6e6;
    border: 1px solid #444;
    border-radius: 10px;
    padding: 20px 20px 20px 25px;
    margin: 10px;
    width: 30vw;
    text-align: center;
    position: relative;
    color: #000;
}
.plan.popular {
    border: 2px solid #ffd700;
}
.plan .title {
    font-size: 20px;
    margin-bottom: 10px;
    text-align: left;
    display: flex;
}
.plan .price {
    font-size: 38px;
    margin: 10px 0;
    text-align: left;
}

.plan .currency {
    font-size: 13px;
    margin-left: 1px;
    color: #888;
    font-weight: 400;
    margin-top: 5px;
}

.plan .period {
    color: #888;
    font-size: 22px;
}
.plan ul {
    list-style: none;
    padding: 0;
    text-align: left;
    margin-bottom: auto;
}
.plan ul li {
    margin: 10px 0;
}
.btn {
    display: block;
    position: absolute;
    margin-top: 20px;
    padding: 10px 20px;
    background-color: #000000;
    color: #fff;
    width: 25vw;
    text-decoration: none;
    border-radius: 20px;
    text-align: center;
    transition: 0.2s ease-in-out, color 0.2s ease-in-out;
    margin-top: auto;
    bottom: 10%;
    user-select: none;
    left: 50%;
    transform: translateX(-50%);
    border: #000 2px;
}

.btn:hover {
    bottom: 11%;
    left: 48%;
    box-shadow: 4px 4px 0px 1px #000;
    background-color: #0ad90a;
    color: #000;
}

.btn div {
    display: flex;
    align-items: center;
    justify-content: center;
}

.popular .popular-badge {
    background-color: #ffd700;
    color: #000;
    padding: 2px 10px;
    font-size: 12px;
    position: absolute;
    border-radius: 50px;
    top: -10px;
    right: 41%;
    user-select: none;
}

.plan .percent-off {
    background-color: #00ff00;
    color: #000;
    padding: 2px 10px;
    font-size: 20px;
    border-radius: 50px;
    align-self: center;
    margin-left: 1vw;
    user-select: none;
}

.plan .updated {
    color: #00ff00;
    font-size: 12px;
}
.plan .crossed {
    color: #888;
}

#tool {
    width: 600px;
    height: 430px;
    margin-left: 26%;
}

footer {
    background-color: #0f0f0f;
    padding: 10px;
}

/* If on mobile */
@media (max-width: 800px) {
    #solution h3 {
        width: 98vw;
    }
    .btn {
        width: 50vw;
    }
    #tool {
        width: 95vw;
        height: 430px;
        margin: 0;
    }

    #problems h3 {
        width: 99vw;
    }

    .logo svg {
        width: 15vw;
    }

    #hero {
        flex-direction: column;
        padding: 0 0 0 20px;
        width: 90vw;
        text-align: center;
        margin-bottom: 50px;
    }

    #hero p {
        align-self: center;
    }

    #hero video {
        width: 90vw;
    }

    #frustration {
        flex-direction: column;
        gap: 1px;
        width: 100vw;
    }

    #frustration p {
        width: 60vw;
    }

    .branch p {
        width: 90vw;
    }

    .branch h3 {
        width: 90vw;
        font-size: 35px;
    }

    .pricing-table {
        flex-direction: column;
    }

    .plan {
        width: 80vw;
    }

    .plan .btn {
        width: 70vw;
        padding: 0;
        left: 10vw;
    }
}