/* Loader Style Starts */
/* HTML: <div class="loader"></div> */
.loader {
    display: none;
    align-self: flex-start;
  width: 60px;
  aspect-ratio: 4;
  --_g: no-repeat radial-gradient(circle closest-side,var(--primary-color) 90%,#0000);
  background: 
    var(--_g) 0%   50%,
    var(--_g) 50%  50%,
    var(--_g) 100% 50%;
  background-size: calc(100%/3) 100%;
  animation: l7 1s infinite linear;
}
@keyframes l7 {
    33%{background-size:calc(100%/3) 0%  ,calc(100%/3) 100%,calc(100%/3) 100%}
    50%{background-size:calc(100%/3) 100%,calc(100%/3) 0%  ,calc(100%/3) 100%}
    66%{background-size:calc(100%/3) 100%,calc(100%/3) 100%,calc(100%/3) 0%  }
}
/* Loader Style Starts */

/* Top Container Style Starts */
.top_container {
    width: 100%;
    height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(1, 38, 83, 4.9);
    background: linear-gradient(180deg, rgba(1, 38, 83, 0.75) 0%, rgba(1, 38, 83, 0.75) 10%, rgba(1, 38, 83, 1) 70%);

    clip-path: polygon(0 0,
            100% 0,
            100% 82%,
            85% 88%,
            50% 95%,
            15% 88%,
            0 82%);
    -webkit-clip-path: polygon(0 0,
            100% 0,
            100% 82%,
            85% 88%,
            50% 95%,
            15% 88%,
            0 82%);
}

.top_container .heading {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.top_container .heading h2 {
    width: 100%;
    font-family: var(--font-family-bold);
    font-size: var(--heading-font-size);
    color: white;
    text-wrap: wrap;
    text-align: center;
}

.top_container .heading p {
    width: 100%;
    font-family: var(--font-family-light);
    font-size: 20px;
    color: white;
    text-wrap: wrap;
    text-align: center;
}

/* Top Container Style Ends */

/* Contact Us Section Style Starts ---------------------------------------- */
section.contact_section {
    width: 100%;
    height: 575px;
    padding-inline: calc(var(--paddingHorizontal) + 85px);
    padding-block: 30px;
    margin-block: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    position: relative;
}

section.contact_section .background {
    width: 65%;
    height: 100%;
    position: absolute;
    z-index: -1;
    right: calc(var(--paddingHorizontal) + 85px);
    background-color: white;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.150);
}

section.contact_section .contactus_left {
    width: 40%;
    height: 100%;
    padding: 25px 40px;
    background-color: var(--secondary-color);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 30px;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.250);
}

section.contact_section .contactus_left h2 {
    width: 100%;
    font-family: var(--font-family-bold);
    font-size: var(--heading-font-size);
    color: white;
    text-wrap: wrap;
}

section.contact_section .contactus_left .contact_info {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
}

section.contact_section .contactus_left .contact_info .info {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 25px;
}

section.contact_section .contactus_left .contact_info .info img {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

section.contact_section .contactus_left .contact_info .info p {
    flex: 1 0;
    color: white;
    font-family: var(--font-family-sbold);
    font-size: 16px;
    text-wrap: wrap;
    text-transform: uppercase;
}

section.contact_section .contactus_left .social_links {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
}

section.contact_section .contactus_left .social_links .link {
    text-decoration: none;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: white;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
}

section.contact_section .contactus_left .social_links .link img {
    width: 50%;
    height: 50%;
    object-fit: contain;
}

section.contact_section .contactus_left .social_links .link.facebook:hover {
    background-color: #1877F2;
}

section.contact_section .contactus_left .social_links .link.whatsapp:hover {
    background-color: #25D366;
}

section.contact_section .contactus_left .social_links .link.linkedin:hover {
    background-color: #0077B5;
}

section.contact_section .contactus_right {
    width: 60%;
    height: 100%;
    padding: 25px 40px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
}

section.contact_section .contactus_right .heading {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

section.contact_section .contactus_right .heading h2 {
    width: 100%;
    font-family: var(--font-family-bold);
    font-size: var(--heading-font-size);
    color: var(--primary-color);
    text-wrap: wrap;
}

section.contact_section .contactus_right .heading p {
    width: 100%;
    font-family: var(--font-family-sbold);
    font-size: var(--subheading-font-size);
    color: var(--text-color);
    text-wrap: wrap;
}

section.contact_section .contactus_right .contact_form {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

section.contact_section .contactus_right .contact_form .row {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

section.contact_section .contactus_right .contact_form .row input {
    flex: 1 0 calc((100% / 2) - 10px);

}

section.contact_section .contactus_right .contact_form input,
section.contact_section .contactus_right .contact_form textarea {
    width: 100%;
    outline: none;
    font-family: var(--font-family-light);
    font-size: 16px;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #7c99c938;
    background-color: #7c99c938;
    border-radius: 3px;
    padding: 10px 18px;
    resize: none;
}

section.contact_section .contactus_right .contact_form button {
    padding: 10px 40px;
    border-radius: 25px;
    background-color: var(--primary-color);
    color: white;
    font-family: var(--font-family-sbold);
    text-transform: uppercase;
    font-size: 16px;
    text-align: center;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.30);
    border: none;
    outline: none;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
    align-self: flex-start;
}

section.contact_section .contactus_right .contact_form button:hover {
    background-color: var(--secondary-color);
}

/* Contact Us Section Style End ---------------------------------------- */

/* Responsive Styles Starts ----------------------------------------------- */
/* Mobile (max 767px) */
@media (max-width: 767px) {

    /* Top Container Style Starts */
    .top_container {
        width: 100%;
        height: 250px;
        padding-inline: var(--paddingHorizontal);
    }

    .top_container .heading p {
        font-size: 14px;
    }

    /* Top Container Style Ends */


    /* Contact Us Section Style Starts ---------------------------------------- */
    section.contact_section {
        height: auto;
        padding-inline: calc(var(--paddingHorizontal));
        gap: 5px;
        flex-direction: column;
        align-items: center;
        margin-block: 30px;
        margin-bottom: 0px;
    }

    section.contact_section .background {
        display: none;
    }

    section.contact_section .contactus_left {
        width: 100%;
        padding: 15px 20px;
        gap: 15px;
    }

    section.contact_section .contactus_left h2 {
        font-size: 30px;
    }

    section.contact_section .contactus_left .contact_info {
        gap: 18px;
    }

    section.contact_section .contactus_left .contact_info .info {
        gap: 14px;
    }

    section.contact_section .contactus_left .contact_info .info img {
        width: 20px;
        height: 20px;
    }

    section.contact_section .contactus_left .contact_info .info p {
        font-size: 10px;
    }

    section.contact_section .contactus_left .social_links {
        gap: 15px;
        margin-top: 20px;
    }

    section.contact_section .contactus_left .social_links .link {
        width: 40px;
        height: 40px;
    }

    section.contact_section .contactus_right {
        width: 100%;
        padding: 15px 0px;
        gap: 15px;
    }

    section.contact_section .contactus_right .heading h2 {
        font-size: 30px;
    }

    section.contact_section .contactus_right .contact_form {
        gap: 10px;
    }

    section.contact_section .contactus_right .contact_form .row {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }

    section.contact_section .contactus_right .contact_form .row input {
        flex: 1 0 calc((100% / 2) - 10px);

    }

    section.contact_section .contactus_right .contact_form input,
    section.contact_section .contactus_right .contact_form textarea {
        font-size: 12px;
        padding: 8px 15px;
    }

    section.contact_section .contactus_right .contact_form button {
        padding: 8px 22px;
        border-radius: 25px;
        ;
        font-size: 10px;
    }

    /* Contact Us Section Style End ---------------------------------------- */
}

/* Tablet (768px–1023px) */
@media (min-width: 768px) and (max-width: 1023px) {

    /* Top Container Style Starts */
    .top_container {
        width: 100%;
        height: 275px;
        padding-inline: var(--paddingHorizontal);
    }

    .top_container .heading p {
        font-size: 19px;
    }

    /* Top Container Style Ends */
    /* Contact Us Section Style Starts ---------------------------------------- */
    section.contact_section {
        height: 485px;
        padding-inline: calc(var(--paddingHorizontal) + 35px);
        gap: 5px;
    }

    section.contact_section .background {
        right: calc(var(--paddingHorizontal) + 35px);
    }

    section.contact_section .contactus_left {
        padding: 20px 15px;
        gap: 20px;
    }

    section.contact_section .contactus_left h2 {
        font-size: 35px;
    }

    section.contact_section .contactus_left .contact_info {
        gap: 18px;
    }

    section.contact_section .contactus_left .contact_info .info {
        gap: 14px;
    }

    section.contact_section .contactus_left .contact_info .info img {
        width: 25px;
        height: 25px;
    }

    section.contact_section .contactus_left .contact_info .info p {
        font-size: 10px;
    }

    section.contact_section .contactus_left .social_links {
        gap: 15px;
        margin-top: 20px;
    }

    section.contact_section .contactus_left .social_links .link {
        width: 40px;
        height: 40px;
    }

    section.contact_section .contactus_right {
        padding: 20px 25px;
        gap: 20px;
    }

    section.contact_section .contactus_right .heading h2 {
        font-size: 35px;
    }

    section.contact_section .contactus_right .contact_form {
        gap: 10px;
    }

    section.contact_section .contactus_right .contact_form .row {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }

    section.contact_section .contactus_right .contact_form .row input {
        flex: 1 0 calc((100% / 2) - 10px);

    }

    section.contact_section .contactus_right .contact_form input,
    section.contact_section .contactus_right .contact_form textarea {
        font-size: 12px;
        padding: 8px 15px;
    }

    section.contact_section .contactus_right .contact_form button {
        padding: 8px 25px;
        border-radius: 25px;
        ;
        font-size: 12px;
    }

    /* Contact Us Section Style End ---------------------------------------- */

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {

    /* Contact Us Section Style Starts ---------------------------------------- */
    section.contact_section {
        width: 100%;
        height: 575px;
        padding-inline: calc(var(--paddingHorizontal) + 45px);
        padding-block: 25px;
        gap: 10px;
    }

    section.contact_section .background {
        right: calc(var(--paddingHorizontal) + 45px);
    }

    section.contact_section .contactus_left {
        width: 45%;
        height: 100%;
        padding: 20px 30px;
        background-color: var(--secondary-color);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 30px;
        box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.250);
    }

    section.contact_section .contactus_left h2 {
        width: 100%;
        font-family: var(--font-family-bold);
        font-size: var(--heading-font-size);
        color: white;
        text-wrap: wrap;
    }

    section.contact_section .contactus_left .contact_info {
        gap: 22px;
    }

    section.contact_section .contactus_left .contact_info .info {
        gap: 18px;
    }

    section.contact_section .contactus_left .contact_info .info img {
        width: 40px;
        height: 40px;
    }

    section.contact_section .contactus_left .contact_info .info p {
        font-size: 14px;
    }

    section.contact_section .contactus_left .social_links {
        gap: 17px;
        margin-top: 20px;
    }

    section.contact_section .contactus_left .social_links .link {
        width: 45px;
        height: 45px;
    }

    /* Contact Us Section Style End ---------------------------------------- */
}