/* Importing Google font - Poppins */
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;700&family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,300&display=swap");


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Roboto", Arial, Helvetica, sans-serif;
}

/* Defining Custome Variables */
:root {
    /* Colors */
    --primary-color: #0069a7;
    --secondary-color: #179be7;
    --dark-color: #252525;
    --white-color: #fff;
    --light-gray-color: #f2f2f2;
    /* Site Max-Width */
    --site-max-width: 1300px;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--white-color);
}

/* Setting for the whole website */
a {
    text-decoration: none;
}

ul {
    list-style: none;
}

.section_container {
    margin: 0 auto;
    max-width: var(--site-max-width);
}
.section_container.content-box {
    background: #fff;
    padding: 2rem 3rem;
}


.section_title {
    text-align: center;
    padding: 60px 0 100px;
    font-size: 32px;
    font-family: "Righteous", sans-serif;
    text-transform: uppercase;
}

    .section_title::after {
        content: '';
        width: 80px;
        background: var(--secondary-color);
        height: 5px;
        display: block;
        margin: 7px auto 0;
        border-radius: 8px;
    }

/* Styling for the header section */
header {
    /* position: fixed; */
    /* top: 0; */
    width: 100%;
    /* z-index: 1; */
    background: var(--primary-color);
}

nav {
    display: flex;
    padding: 15px 0 15px 20px;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: var(--site-max-width);
}

    nav .nav_logo a {
        display: flex;
        gap: 15px;
        align-items: center;
    }

        nav .nav_logo a img {
            max-width: 136px;
        }

    nav .nav_logo h2 {
        color: var(--white-color);
        font-weight: 600;
        font-size: 32px;
    }

    nav ul {
        display: flex;
        gap: 10px;
    }

        nav ul li a {
            display: block;
            padding: 10px 25px;
            font-size: 18px;
            font-weight: 500;
            color: var(--white-color);
            border-radius: 30px;
            transition: all 0.2s ease;
        }

            nav ul li a:hover {
                color: var(--primary-color);
                background-color: var(--secondary-color);
            }

    nav label {
        font-size: 32px;
        color: var(--white-color);
        cursor: pointer;
    }

label .menu_btn,
label .close_btn {
    display: none;
}



.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    padding: 12px 16px;
    z-index: 1;
    border: solid #999 1px;
}

    .dropdown-content a {
        color: #000;
    }

.dropdown:hover .dropdown-content {
    display: block;
}

#click {
    display: none;
}

/* About Us Section */
.about_us {
    padding: 30px 20px 10px;
    background: var(--light-gray-color);
}

.about_container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    /* align-items: center; */
}

    .about_container .text_section {
        max-width: 95%;
        margin: auto;
    }

        .about_container .text_section p {
            font-size: 18px;
            font-weight: 500;
            letter-spacing: 1px;
            line-height: 30px;
            /* text-align: center; */
            /* padding: 20px 0; */
        }

/* Form Section */
.form_section {
    padding: 30px 20px 60px;
    background: var(--light-gray-color);
}

.section_title_with_bg {
    color: var(--primary-color);
    padding: 10px;
    font-weight: normal;
    text-align: center;
    border-bottom: 2px solid;
    margin: 2rem auto 3rem;
}

.form_container {
    display: flex;
    gap: 50px;
    justify-content: space-between;
    margin: 20px 0;
}

    .form_container .form_left {
        max-width: 45%;
        width: 100%;
    }

.form_content ul {
    margin-left: 40px;
    list-style: disc;
}

.form_content ol {
    margin-left: 40px;
}

.form_content h3 {
    margin: 20px 0;
}

.form_container .form_right {
    max-width: 55%;
    width: 100%;
}

.form_container .field {
    margin: 20px 0;
}

    .form_container .field label {
        display: block;
        font-size: 17px;
        font-weight: 500;
        margin-bottom: 8px;
    }

    .form_container .field .input_field,
    .form_container .field .select_field {
        width: 100%;
        height: 50px;
        padding: 0 12px;
        font-size: 16px;
        border-radius: 6px;
        border: 1px solid #ccc;
        background: #fff;
    }

.form_container textarea {
    width: 100%;
    height: 200px;
    padding: 12px;
    font-size: 16px;
    border-radius: 8px;
    border: 1px solid #ccc;
    resize: vertical;
}

.form_container .button {
    padding: 8px 28px;
    border: 2px solid transparent;
    outline: none;
    cursor: pointer;
    border-radius: 50px;
    background: var(--primary-color);
    color: var(--white-color);
    font-size: 17px;
    font-weight: 600;
    transition: all 0.4s ease;
}

    .form_container .button:hover {
        color: var(--primary-color);
        background: transparent;
        border-color: var(--primary-color);
    }

.form_container .note_text {
    font-size: 12px;
}

/* Contact Section */
.contact {
    background: var(--light-gray-color);
    padding: 60px 20px 100px;
}

.contact_container {
    display: flex;
    gap: 50px;
    align-items: center;
    justify-content: space-between;
}

    .contact_container .contact_form {
        max-width: 65%;
        width: 100%;
    }

        .contact_container .contact_form .field {
            margin: 20px 0;
        }

            .contact_container .contact_form .field label {
                display: block;
                font-size: 17px;
                font-weight: 500;
                margin-bottom: 8px;
            }

            .contact_container .contact_form .field input {
                width: 100%;
                height: 50px;
                padding: 0 12px;
                font-size: 16px;
                border-radius: 6px;
                border: 1px solid #ccc;
            }

        .contact_container .contact_form textarea {
            width: 100%;
            height: 200px;
            padding: 12px;
            font-size: 16px;
            border-radius: 8px;
            border: 1px solid #ccc;
            resize: vertical;
        }

        .contact_container .contact_form .button {
            padding: 8px 28px;
            border: 2px solid transparent;
            outline: none;
            cursor: pointer;
            border-radius: 50px;
            background: var(--primary-color);
            color: var(--white-color);
            font-size: 17px;
            font-weight: 600;
            transition: all 0.4s ease;
        }

            .contact_container .contact_form .button:hover {
                color: var(--primary-color);
                background: transparent;
                border-color: var(--primary-color);
            }

.contact_text .contact_items {
    display: flex;
    gap: 20px;
    margin: 80px 0;
}

    .contact_text .contact_items i {
        font-size: 32px;
        margin-top: 5px;
    }

/* Footer Section */
footer {
    background: #687682;
    color: var(--white-color);
    padding: 60px 20px;
}

.footer_section {
    display: flex;
    justify-content: space-between;
}

    .footer_section h3 {
        font-size: 22px;
        margin-bottom: 16px;
        font-weight: 600;
    }

    .footer_section .footer_logo a {
        display: flex;
        gap: 15px;
        align-items: center;
        color: var(--white-color);
    }

        .footer_section .footer_logo a img {
            max-width: 130px;
        }

        .footer_section .footer_logo a h2 {
            font-weight: 600;
        }

    .footer_section .useful_links ul li {
        margin: 20px 0;
    }

        .footer_section .useful_links ul li a {
            color: var(--white-color);
            font-size: 17px;
        }

            .footer_section .useful_links ul li a:hover {
                text-decoration: underline;
            }

    .footer_section .contact_us ul li {
        margin: 20px 0;
        display: flex;
        align-items: center;
        gap: 20px;
    }

        .footer_section .contact_us ul li i {
            font-size: 25px;
        }

        .footer_section .contact_us ul li span {
            font-size: 17px;
        }

    .footer_section .follow_us i {
        font-size: 26px;
        margin-right: 25px;
        cursor: pointer;
        transition: all 0.3s ease;
    }

        .footer_section .follow_us i:hover {
            color: var(--secondary-color);
        }
.required-star::before {
    display: inline;
    content: '*';
    color: red;
    padding-right: 5px;
    font-size: 16px;
    font-weight: bold;
}



/* Responsive Media Query code for max-width: 1024px */

@media screen and (max-width: 1024px) {
    nav {
        padding: 15px 20px;
    }

    label .menu_btn {
        display: block;
    }

    nav ul {
        display: block;
        background: var(--white-color);
        position: absolute;
        top: 75px;
        left: -100%;
        overflow-y: auto;
        width: 100%;
        height: 100vh;
        text-align: center;
        transition: all 0.15s ease;
    }

    #click:checked ~ ul {
        left: 0;
    }

    #click:checked ~ label .close_btn {
        display: block;
    }

    #click:checked ~ label .menu_btn {
        display: none;
    }

    nav ul li {
        display: block;
        padding: 8px 12px;
        width: 48%;
        margin: 24px auto;
    }

        nav ul li a {
            color: var(--dark-color);
        }

    .section_container .services_items {
        width: calc(100% / 2 - 50px);
    }

    .contact_container {
        flex-direction: column-reverse;
    }

    .contact_text .contact_items {
        margin: 25px 0;
    }

    .contact_container .contact_form {
        max-width: 100%;
    }

    .footer_section {
        flex-direction: column;
        gap: 24px;
    }

        .footer_section .useful_links {
            text-align: start;
        }

    .form_container {
        flex-direction: column;
    }

        .form_container .form_left,
        .form_container .form_right {
            max-width: 100%;
        }
}

/* Responsive Media Query code for max-width: 576px */
@media screen and (max-width: 576px) {
    .section_title {
        padding: 50px 0;
    }

    nav .nav_logo a img,
    .footer_section .footer_logo a img {
        max-width: 130px;
    }

    nav .nav_logo h2 {
        font-size: 30px;
    }

    .about_container .image_section {
        max-width: 70%;
    }

    .button {
        padding: 10px 20px !important;
        font-size: 15px !important;
    }

    .section_container .services_items,
    .why_container .why_items {
        width: 100%;
        text-align: center;
    }

    .gallery_container .gallery_items {
        flex-direction: column;
        width: 100%;
    }

    .services .service_container,
    .why_us .why_container {
        gap: 70px;
    }

    .section_container .services_items img {
        max-width: 80%;
    }

}
