﻿body {
    margin: 0;
    padding: 0;
    font-family: 'Roboto', sans-serif;
    overflow-x: hidden;
    width: 100vw;
}

label, .form-group {
    margin: 0;
}

.topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
}

.topbar-left img {
    aspect-ratio: 2/1;
}

.topbar-right, .topbar-left {
    width: 50%;
}

.topbar-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
}

    .topbar-right button {
        padding: 16px 28px;
        border: none;
        color: white;
        font-size: 16px;
        cursor: pointer;
        border-radius: 10px;
        font-weight: 600;
    }

        .topbar-right button:first-child {
            background-color: #AB0634;
        }

        .topbar-right button:last-child {
            background-color: #403E3B;
        }

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    background-color: #403E3B;
}

    .navbar ul {
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 40px;
    }

        .navbar ul li {
            list-style: none;
            margin: 0;
        }

            .navbar ul li a {
                color: white;
                font-size: 18px;
                font-weight: 600;
                text-decoration: none;
            }

main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.section-hero {
    width: 100%;
    background-image: url('/Images/helmet-tracker-bg-1.png');
    background-color: #3067BB;
    padding: 50px 0;
}

    .section-hero h1 {
        color: white;
        font-weight: 100;
        width: 75%;
        margin: 0 auto;
        text-align: center;
    }

.section-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 75%;
    margin: 0 auto;
}

.sub-section {
    width: 45%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 5px;
}

    .sub-section img {
        width: 100%;
        height: auto;
        align-self: center;
    }

    .sub-section ul li {
        list-style-type: "▶";
        padding: 0 10px;
    }

        .sub-section ul li span {
            font-weight: 700
        }

    .sub-section .title {
        font-size: clamp(36px, 5vw, 48px);
        white-space: nowrap;
        color: #403E3B;
        font-weight: 900;
        line-height: 1;
        letter-spacing: 0;
    }

    .sub-section .title-md {
        font-size: clamp(28px, 4vw, 36px);
    }

.section-bold {
    font-weight: 700;
    font-size: 30px;
}

    .section-bold div {
        padding: 10px;
    }

        .section-bold div:last-child {
            color: white;
            background-color: #3067BB;
        }

.section-content-wrapper {
    width: 100%;
}

.section-content-sub-wrapper {
    width: 100%;
    height: 100%;
    background-color: rgba(181, 181, 181,0.75);
    padding: 20px;
}

.section-content-centered {
    width: 100%;
}

.section-sub-content-centered {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    margin: 0 auto;
    -webkit-align-items: center;
    align-items: center;
    padding: clamp(50px, 10vw, 80px);
    background-color: rgba(181, 181, 181,0.5);
    text-align: center;
}

    .section-sub-content-centered > .title {
        font-size: clamp(36px, 5vw, 48px);
        color: #3E66B5;
        font-weight: 800;
        line-height: 1,5;
    }

    .section-sub-content-centered > .sub-title {
        font-size: 30px;
        color: #403E3B;
        font-weight: 800;
        line-height: 1.5;
    }

    .section-sub-content-centered > .content {
        font-size: clamp(22px, 2vw, 30px);
        color: #403E3B;
        font-weight: 400;
        text-align: center;
        line-height: 1.5;
    }

.banner-arrow {
    color: white;
    background-color: #403E3B;
    font-weight: 400;
    font-size: 28px;
    position: relative;
    height: 80px;
    padding: 0 10px;
    box-sizing: border-box;
    line-height: 1;
    display: flex;
    align-items: center;
}

    .banner-arrow::after {
        content: "";
        position: absolute;
        top: 11px;
        right: -29px;
        display: block;
        height: 57px;
        width: 57px;
        background-color: #403E3B;
        transform: rotate(45deg);
        z-index: -1;
    }

.font-blue {
    color: #3067BB !important;
}

.bg-blue {
    background-color: #3067BB;
}

.contact-us-header {
    width: 100%;
    text-align: center;
    padding: 40px 0;
    background-color: #403E3B;
    color: white;
    font-size: clamp(22px, 4vw, 36px);
}

    .contact-us-header span {
        font-weight: 700;
    }

.contact-us-content {
    width: 100%;
    padding: 10px;
}

    .contact-us-content form {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5px;
        margin: 0 auto;
        width: 450px;
    }

.form-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    gap: 5px;
}

    .form-group label {
        font-size: 20px;
        font-weight: 400
    }

    .form-group input, .form-group textarea {
        width: 100%;
        padding: 5px;
        border-radius: 5px;
        border: 1px solid #B5B5B5;
        font-size: 16px;
    }

        .form-group input[type=button] {
            border: none;
            color: white;
            font-size: 18px;
            cursor: pointer;
            border-radius: 10px;
            background-color: #45C05F;
            width: fit-content;
            padding: 0px 50px;
            margin-bottom: 10px;
        }

.hero-bg {
    background-image: url('/Images/helmet-tracker-section-bg-1.png');
}

.section-bg-1 {
    background-image: url('/Images/helmet-tracker-section-img-2.png');
    background-repeat: no-repeat;
    background-size: cover;
}

.section-bg-2 {
    background-image: url('/Images/helmet-tracker-section-bg-2.png');
}

.section-bg-3 {
    background-image: url('/Images/helmet-tracker-section-bg-3.png');
}

.emptyElement {
    border: 1px solid red;
}

.hidden {
    display: none !important;
}

.hide {
    display: none !important;
}

@media (max-width : 765px) {
    .topbar {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }

    .topbar-left, .topbar-right {
        width: 100%;
    }

    .topbar-right {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }


    .navbar {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px;
        width: 100%;
    }

        .navbar ul {
            margin: 0 auto;
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 10px;
        }

    .section-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 96%;
        margin: 0 auto;
        padding: 4px;
    }

    .sub-section {
        width: 100%;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 10px;
        padding: 5px;
    }

        .sub-section img {
            width: 100%;
            height: auto;
        }

    .section-content-centered {
        width: 100%;
        height: fit-content;
    }

    .section-sub-content-centered {
        padding: 20px 10px;
    }

    .section-content-sub-wrapper {
        padding: 4px;
    }

    .contact-us-header {
        padding: 20px 0;
    }

    .contact-us-content form {
        width: 90%;
    }
}
