@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@100;200;300;400;500;600;700;800;900&family=Roboto:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&display=swap');

/* ========== SET BASIS ========== */
*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

:active,
:hover,
:focus {
    outline: 0 !important;
    outline-offset: 0;
}

body {
    font-family: 'Archivo', sans-serif;
    background-color: var(--third-color) !important;
}

a,
a:hover {
    text-decoration: none;
}

ul {
    padding: 0;
    margin: 0;
}

:root {
    --primary-color: #ffffff;
    --secondary-color: #000000;
    --third-color: #fafeff;
    --forth-color: #1e6192;
    --fifth-color: #eeeeee;
    --sixth-color: #dddddd;

}

/* ========== PRELOADER ========== */
#preloader {
    background: var(--primary-color) url("../images/icons/loader.gif") no-repeat center;
    color: var(--forth-color);
    width: 100%;
    height: 100vh;
    position: fixed;
    z-index: 100;
}

/* ========== HEADER ========== */

/* ========== Navbar ========== */
.navbar-align {
    padding: 0;
    background-color: var(--primary-color) !important;
    box-shadow: 0 8px 15px 5px rgb(0 0 0 / 5%);
}
.nav-container-align {
    font-size: 22px;
    font-weight: 700;
    padding: 20px 90px 20px 100px;
}

.navbar-toggler-align {
    border-radius: 0;
}

.nav-item-align {
    padding-left: 20px;
}

.nav-item-align a {
    color: var(--secondary-color) !important;
}

.nav-item-align a:hover {
    color: var(--forth-color) !important;
}

.nav-item-align a:active {
    color: var(--forth-color) !important;
}

.dropdown-menu-align {
    left: 20px !important;
    margin-top: 1.45rem !important;
    border: none;
    border-radius: 0;
    font-size: 22px;
    padding: 0;
}

.dropdown-item-align {
    padding: 20px;
}

.dropdown-item-align:hover {
    background-color: var(--fifth-color);
}

/* ========== MAIN ========== */

/* ========== Parallax ========== */
.parallax {
    width: 90%;
    height: 850px;
    padding: 0 100px;
    margin-bottom: 100px;
    color: var(--primary-color);
    background: url("../images/parallax-img.jpg") no-repeat center;
    background-size: cover;
    background-attachment: fixed;
    text-transform: capitalize;
}

.parallax h1 {
    font-size: 72px;
    font-family: 'Archivo Black', sans-serif;
}

/* ========== Cards ========== */
.our-services-title {
    font-size: 48px;
    font-family: 'Archivo Black', sans-serif;
    margin-bottom: 40px;
}

.cards {
    width: 90%;
    padding: 0;
    margin-bottom: 90px;
}

.card-container {
    width: 350px !important;
    margin: 20px;
    border: none;
    border-radius: 0;
    box-shadow: 5px 15px 15px 4px rgb(0 0 0 / 5%);
}

.card-container img {
    border-radius: 0;
}

.card-container h5 {
    font-weight: 700;
    color: var(--secondary-color);
}

.card-container:hover {
    transform: translateY(-15px);
    transition: 0.5s;
}

/* ========== Contact Us Details ========== */

.contact-us-detail h1 {
    font-size: 48px;
    font-family: 'Archivo Black', sans-serif;
    font-weight: 500;
    padding-bottom: 50px;
    margin: 0;
}

.contact-us-detail h3 {
    font-size: 36px;
    font-family: 'Archivo Black', sans-serif;
    font-weight: 500;
    padding-bottom: 50px;
    
}
.contact-us-detail p {
    font-size: 20px;
    padding-bottom: 100px;
    
}

.contact-us-main-container {
    margin: 0;
}

.contact-us-main-container h3{
    margin: 0;
}

.contact-us-main-container p{
    margin: 0;
}

/* ========== Line ========== */
.line {
    border-top: 0.5px solid var(--sixth-color);
    margin-bottom: 80px;
    width: 80%;
}

/* ========== FOOTER ========== */

.footer-text {
    background-color: var(--primary-color) !important;
    padding: 25px 0;
    box-shadow: 0 -2px 10px 0 rgb(0 0 0 / 5%);
}

.footer-text h6 {
    font-size: 20px;
}

/* ========== PRELOADER ========== */
.jump-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 15px;
    color: var(--primary-color);
    background-color: var(--forth-color);
}

/* ========== Media Query ========== */
@media (min-width: 360px) and (max-width: 575.98px) {
    .nav-container-align {
        font-size: 16px;
        padding: 10px;
    }
    .logo {
        width: 150px;
    }
    .nav-item-align {
        padding-left: 0;
    }
    .dropdown-menu-align {
        margin-top: 0 !important;
        border: none;
        border-radius: 0;
        font-size: 16px;
        padding: 0;
    }
    .dropdown-item-align {
        padding: 10px;
    }
    .parallax {
        height: 450px;
        padding: 0 50px;
        margin-bottom: 50px;
    }
    .parallax h1 {
        font-size: 36px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 36px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 36px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container {
        flex-wrap: wrap;
        padding: 0;
        margin: 0;
    }
    .contact-us-main-container h3{
        font-size: 30px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 50px;
    }
    .footer-text {
        padding: 17.5px 0;
    }
    
    .footer-text h6 {
        font-size: 16px;
        margin: 0;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .nav-container-align {
        font-size: 16px;
        padding: 15px;
    }
    .logo {
        width: 150px;
    }
    .dropdown-menu-align {
        margin-top: 0 !important;
        border: none;
        border-radius: 0;
        font-size: 16px;
        padding: 0;
    }
    .dropdown-item-align {
        padding: 7.5px;
    }
    .parallax {
        height: 500px;
        padding: 0 50px;
        margin-bottom: 50px;
    }
    .parallax h1 {
        font-size: 42px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 42px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 42px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container {
        flex-wrap: wrap;
        padding: 0;
        margin: 0;
    }
    .contact-us-main-container h3{
        font-size: 30px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 50px;
    }
    .footer-text {
        padding: 17.5px 0;
    }
    .footer-text h6 {
        font-size: 16px;
        margin: 0;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .nav-container-align {
        font-size: 16px;
        padding: 15px 30px;
    }
    .logo {
        width: 175px;
    }
    .dropdown-menu-align {
        margin-top: 0 !important;
        border: none;
        border-radius: 0;
        font-size: 16px;
        padding: 0;
    }
    .dropdown-item-align {
        padding: 7.5px;
    }
    .parallax {
        height: 600px;
        padding: 0 50px;
        margin-bottom: 50px;
    }
    .parallax h1 {
        font-size: 48px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 48px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 48px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container {
        flex-wrap: wrap;
        padding: 0;
        margin: 0;
    }
    .contact-us-main-container h3{
        font-size: 30px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 50px;
    }
    .footer-text {
        padding: 20px 0;
    }
    
    .footer-text h6 {
        font-size: 16px;
        margin: 0;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .nav-container-align {
        font-size: 18px;
        padding: 15px 30px;
    }
    .logo {
        width: 200px;
    }
    .dropdown-menu-align {
        margin-top: 27.5px !important;
        border: none;
        border-radius: 0;
        font-size: 18px;
        padding: 0;
    }
    .dropdown-item-align {
        padding: 12.5px;
    }
    .parallax {
        height: 700px;
        padding: 0 50px;
        margin-bottom: 50px;
    }
    .parallax h1 {
        font-size: 60px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 48px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 48px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container h3{
        font-size: 36px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 50px;
    }
    .footer-text {
        padding: 20px 0;
    }
    .footer-text h6 {
        font-size: 18px;
        margin: 0;
    }
}
@media (min-width: 1200px) and (max-width: 1367.98px) {
    .nav-container-align {
        font-size: 20px;
        padding: 15px 30px;
    }
    .logo {
        width: 225px;
    }
    .dropdown-menu-align {
        margin-top: 30px !important;
        border: none;
        border-radius: 0;
        font-size: 20px;
        padding: 0;
    }
    .dropdown-item-align {
        padding: 15px;
    }
    .parallax {
        height: 700px;
        padding: 0 50px;
        margin-bottom: 50px;
    }
    .parallax h1 {
        font-size: 60px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 60px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 60px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container h3{
        font-size: 36px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 50px;
    }
    .footer-text {
        padding: 20px 0;
    }
    .footer-text h6 {
        font-size: 22.5px;
        margin: 0;
    }
}
@media (min-width: 1368px) and (max-width: 1400px) {
    .nav-container-align {
        font-size: 22px;
        padding: 15px 50px;
    }
    .dropdown-menu-align {
        margin-top: 32.5px !important;
        border: none;
        border-radius: 0;
        font-size: 22px;
        padding: 0;
    }
    .parallax {
        height: 850px;
        padding: 0 50px;
        margin-bottom: 75px;
    }
    .parallax h1 {
        font-size: 60px;
        font-family: 'Archivo Black', sans-serif;
    }
    .cards {
        width: 100%;
        margin-bottom: 40px;
    }
    .our-services-title {
        font-size: 60px;
        margin-bottom: 40px;
    }
    .contact-us-detail h1 {
        font-size: 60px;
        margin-bottom: 0;
        padding-bottom: 50px;
    }
    .contact-us-main-container h3{
        font-size: 42px;
        padding-bottom: 25px;
        margin: 0;
    }
    .contact-us-main-container p{
        margin: 0;
        padding-bottom: 75px;
    }
    .footer-text {
        padding: 25px 0;
    }
    .footer-text h6 {
        font-size: 22px;
        margin: 0;
    }
}
@media (min-width: 1400.98px) and (max-width: 1920px) {
    .dropdown-menu-align {
        margin-top: 37.5px !important;
    }
}