@import url('https://fonts.googleapis.com/css2?family=Readex+Pro:wght@200;300;400;500;600;700&display=swap');

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    /* font-family: 'Cairo', sans-serif; */
    /* font-family: 'Readex Pro', sans-serif; */
    /* font-family: "Rubik", sans-serif; */
    font-family: "Tajawal", sans-serif;
    font-weight: 400;
    transition: padding .2s ease-in-out;
}

*.mt-2{ 
    margin-top: 1rem;
}


:root { 
    --primary-color: #1e2957; 
    --secondary-color: white; 
    --light-text-color: #f0f0f0; 
}

body {
    /* background: #e8eaec;  */
    background: #fff !important; 
    position: relative;
    min-height: 100vh;
    margin: 0 ; 
    display: flex;
    flex-direction: column;

}

.messages .error { 
    list-style: none;
    padding: 0.5rem 1rem;
    background: #dc3545;
    color: white;
}

.error_message {
    background: #dc3545;
    color: #f9f9f9;
    padding: 0.7rem;
    margin: 1rem 0;
    border-radius: 5px;
    font-size: 14px;
}

.form-fields p {
    margin-bottom: 1rem; 
}

.form-fields p label {
    display: block;
    margin-bottom: .5rem;
}

.website-content { 
    flex: 1; 
}

.container {
    margin: 0 auto;
    height: 100%;
}

.list-item {
    text-decoration: none;
    color: var(--primary-color)
}

button {
    border: none; 
    outline: none; 
    background: transparent; 
}

.btn {
    text-decoration: none;
    color: var(--primary-color); 
    padding: 0.6rem 1.5rem !important;
    border-radius: 2rem !important ;
    display: block;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap:.4rem !important;
    outline: none !important; 
    border: none ;
    width: fit-content !important;
    text-align: center !important;
}

.btn img {
    height: 20px !important;
}

.btn.btn-solid {
    color: white; 
    background: var(--primary-color)
}

.btn.btn-outline { 
    border: 1px solid var(--primary-color)
}

#burger-menu {
    display: none;
}


/* header styling */

header {
    /* min-height: 85px; */
    width: 100%; 
    position: sticky;
    position: relative !important;
    background: var(--secondary-color);  
    z-index: 7000;
    /* top: 0;  */
    left: 0; 
}

header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0 ;
}

header .container .logo-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex: .5;
}

header .container .logo-container a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex: .5;
}

header .logo-container .logo-text {
    height: 6vh;
}

header .container .logo-container img:first-child { 
    width: 50px;
}


header .container nav {
    display: flex;
    align-items: center;
}

header .container nav ul {
    display: flex;
    list-style: none; 
    column-gap: 1rem;
}

header .container nav:first-child {
    flex:2; 
}

header .container nav:last-child {
    flex:.5; 
    justify-content: flex-end;
    align-items: center !important;
}

header .container nav:last-child ul {
    display: flex;
    align-items: center;
    column-gap: 1rem; 
}


/* main style */
main {
    /* height: calc(100vh - 85px);  */
    min-height: 160px !important;
    background-size: cover;
    background-position: center center;
    position: relative;
    padding: 1rem 0 ;
}

main::before {
    content: "" ;
    width: 100%; 
    height: 100%; 
    position: absolute;
    top: 0;
    left: 0; 
    background: var(--primary-color); 
    /* opacity: .9; */
    z-index: 1;
}


main .container {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--light-text-color); 
    z-index: 2;
    position: relative;
    /* flex-direction: column; */
    column-gap: 1rem; 
    row-gap: 1rem;
    flex-wrap: wrap;
}

main .intro {
    text-align: center;
}

main .intro .intro__title { 
    font-size: 2rem; 
}

main .cta {
    display: flex; 
    column-gap: 1rem ;
}

main .cta a {
    padding: .5rem 1em; 
    background: var(--light-text-color); 
    color: var(--primary-color);
}

/* property type section */



section.property_type {
    /* margin: 0 !important; */
    height: fit-content;
}

section.property_type .btn {
    font-size: 14px;
    display: block ;
    border-radius: 2rem;
    color: var(--primary-color); 
    background: #fff; 
    /* border: 1px solid #1e2957;  */
    /* box-shadow: 2px 4px 10px #1e295730; */
    box-shadow: 2px 2px 5px #1e295730;
}


/* Property Grid Style */


section {
    margin: 1rem 0;
}


.grid {
    display: grid;
    row-gap: 2rem;
}

.grid .item {
    height: 100% !important; 
    /* height: 170px !important; */
}


form .grid { 
    height: 45px !important; 
    font-size: 16px !important;
}

input {
    border-radius: 40px;
    border: none; 
    outline: none; 
    border:1px solid #1e1e1e20;  
}

form input {
    height: 100% !important; 
}

p.sub-text { 
    opacity: .8 !important; 
}


section.property_list .grid .item {
    border: 1px solid #1e1e1e20; 
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    /* min-height: 250px !important; */
    min-height: 170px !important; 
    max-width: 900px !important;
    margin: 0 auto;
    /* background: white; */
    /* padding: 1rem 0 ; */
    background: #e8eaec; 
    border-radius: 5px;
    position: relative;
}

.item .property__info {
    padding: 1rem; 
    flex:3 ;
}

.item .property__title a {
    font-size: 14px;
    text-decoration: none; 
    /* color: var(--primary-color); */
    color: black !important;
    font-weight: 600;
}

.item .property__price {
    margin : 1rem 0;
    /* font-size: 18px; */
    font-size: 12px;
    font-weight: 600;
    /* color: var(--primary-color); */
    color: black;
}

.itme .property__price span { 
    font-weight: 600;
}

.item .property__info .property__description {
    margin-top: 2rem;
    color: gray; 
    font-size: 16px;
}


section.property_list .grid .item .property__cover_img {
    height: 100% !important;
    flex:2;
    border-radius: 5px;
}



.property__cover_img img {
    max-height: 100%;
    height: 170px !important; 
    width: 300px !important;
    border-radius: 5px;
    max-width: 100%;
    border-radius: 5px;

    object-fit: cover;
    object-position: center center;
    float: left; 
}





/* custom header styling */

.responsive-header #burger-menu {
    position: absolute;
    top: 25px ;
    left: 5px;
    width: 30px ;
    height: 30px;
    /* background: blue;  */
    z-index: 3000;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--primary-color); 
    text-decoration: none;
    font-size: 22px;
}


.responsive-header { 
    width: 100%;
    display: none;
    position: block !important;
}

.responsive-header .container {
    position: relative;   
}


.navs {
    margin: 0;
    position: fixed;
    top: 80px;
    z-index: 49000;
    width: 100%;
    background-color: white;
    border-bottom: 1px solid var(--primary-color);
    padding-bottom: 1rem;
    left: -100%;
    transition: left .3s ease-in-out;

}

.navs.show {
    left:0; 
}

body { 
    overflow-x: hidden;
}

.navs nav {
    padding: .5rem; 
}

.navs nav:nth-child(1) ul { 
    line-height: 2.6;
    list-style: none;
}

.navs nav:nth-child(2) ul { 
    display: flex;
    justify-content: flex-start;
    align-items: center;
    list-style: none;
    column-gap: 1rem;
}

.navs ul a {
    font-weight: 500;
}


/* footer style */


footer {
    background: var(--primary-color); 
    padding: 1rem 0 ;
    font-size: 14px;
    color: var(--secondary-color); 
    width: 100%; 
    flex-shrink: 0;

}

.footer-content {
    height: 50px; 
}

.footer-logo-container img {
    height: 8vh;
}

footer .container .footer-content {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /* background: red;  */
    height: 100%;
}

footer h4 { 
    font-size: 20px;
    font-weight: 500;
}

footer ul {
    margin-top: 1rem;
    list-style: none ;
}

footer .list-item {
    color: var(--secondary-color); 
}

footer .quick-links ul {
    line-height: 2;
}

footer .social-media ul {
    display: flex;
    gap: 1rem; 
}

footer .social-media li a {
    color: var(--primary-color);
    background: var(--secondary-color); 
    padding: .5rem ; 
    display: block;
    width: 30px;
    height: 30px;
}


footer .copyrights {
    text-align: center;
    color: var(--secondary-color) ;
    margin-top: 2.5rem;
}





@media (max-width: 767px) {
    .container { 
        width: 90%;
    }
    .search-container input {
        max-width: 90%;
        /* background: red; */
    }

    
    .item {
        /* height: 150px !important; */
        /* height: fit-content !important; */
        height: 120px !important;
        /* min-height: 100px !important; */
    }

    section.property_list .grid .item {
        width: 100% !important;
        height: 120px !important;
    }


    .item .property__cover_img {
        width: 150px !important;
        display: flex;
        justify-content: center;
        align-items: center;
    }





    .item .property__description {
        display: none ;
    }



    .property__cover_img img {
        /* max-height: 100%; */
        height: 150px; 
        width:  150px;
        object-fit: cover;
        object-position: center center;
    }


    .grid {
        row-gap: 1rem;
    }


    main .intro h1 { 
        font-size: 24px !important;
    }

    main .intro p {
        font-size: 14px ;
    }

    main .cta {
        font-size: 14px ;
    }




}

@media (min-width: 768px) {
    .container {
        width: 767px; 
    }

}

@media (min-width: 992px) {
    .container {
        width: 992px;
    }
    .property__cover_img img {
        /* max-height: 100%; */
        height: 300px; 
        width: 350px;
        object-fit: cover;
        object-position: center center;
    }
    
    
}



 
@media (max-width:992px) {


    #main_header {
        display: none;
    }

    .responsive-header {
        display: block !important;
    }

    header {
        overflow: hidden !important;
        height: 80px;
    }

    header.expand { 
        height: 300px !important; 
    }


    
    header.visible {
        overflow: visible !important;
    }



    header .container {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start !important;
        position: relative;
        width: 100%;
        background: white;
    }

    header .logo-container {
        position: absolute;
        top: 10px; 
        right: 10px; 
    }


    header .container nav {
        width: 100%;
        /* background: var(--light-text-color);  */
        /* margin-top: 1rem; */
        /* display: none; */
        position: absolute;
        top: 80px;
        left: -100%;
        z-index: 50000; 
        background: #fff;
        padding: .4rem 1rem; 
        transition: left 0.25s ease-in-out;
    }

    header .container nav:nth-child(2) {
        border-bottom: 1px solid var(--primary-color) !important;
    }
    
    .header-overlay-layer { 
        width: 100%; 
        height: 100%; 
        position: absolute;
        top: 0; 
        left: 0; 
        background: #21212130; 
        z-index: 6000;
        display: none;
    }

    header .container nav.show {
        display: block;
        left: 0 !important; 
    }

    header .container nav li {
        margin: .2rem ; 
    }

    header .container nav:nth-child(2) li:hover {
        /* background: var(--primary-color); */
        padding: 0 1rem;

    }


    header .container nav:nth-child(2) ul {
        display: block; 
        line-height: 3;
        flex: 1;
    }
    
    #burger-menu {
        position: absolute;
        top: 25px ;
        left: 5px;
        width: 30px ;
        height: 30px;
        /* background: blue;  */
        z-index: 3000;
        display: flex;
        justify-content: center;
        align-items: center;
        color: var(--primary-color); 
        text-decoration: none;
        font-size: 22px;
    }


}

@media (min-width: 1200px) {
    .container {
        width: 1100px;
    }
    header .container {
        width: 1200px;
        max-width: none; /* Override the max-width for the header container */
    }
    .property_list .item {
        width: 800px;
    }
}

/* @media (min-width: 1400px) {
    .container {
        width: 1400px;
    }
} */


.pagination .container {
    display: flex;
    column-gap: 1rem;
    justify-content: center;
}


.pagination .container a {
    display: inline-block;
    color: var(--primary-color);
    width: fit-content;
    padding: .2rem 0.5rem;
    border: 1px solid var(--primary-color); 
    border-radius: 5px;
    text-decoration: none;
}

.pagination .current_page {
    color: var(--secondary-color) !important; 
    background: var(--primary-color); 
    border: none; 
}


