/*==================================================
    REAL ESTATE WEBSITE
    CSS PART 1
===================================================*/

/* Google Font */

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

/*==============================
    RESET
==============================*/

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
    font-size:16px;
}

body{

    font-family:'Rubik',sans-serif;

    background:#ffffff;

    color:#222;

    overflow-x:hidden;

    line-height:1.5;

    -webkit-font-smoothing:antialiased;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

button{

    border:none;

    outline:none;

    cursor:pointer;

    font-family:inherit;

    background:none;

}

input,
select{

    outline:none;

    border:none;

    font-family:inherit;

}

/*==============================
    CONTAINER
==============================*/

.container{

    width:100%;

    max-width:1280px;

    margin:auto;

    padding:0 20px;

}

/*==============================
    HEADER
==============================*/

.main-header{

    width:100%;

    background:#ffffff;

    position:fixed;

    top:0;

    left:0;

    z-index:999;

    box-shadow:0 2px 15px rgba(0,0,0,.05);

}

.navbar{

    height:80px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

/*==============================
    LOGO
==============================*/

.logo{

    display:flex;

    align-items:center;

}

.logo img{

    height:42px;

}

/*==============================
    MENU
==============================*/

.nav-menu{

    display:flex;

    align-items:center;

}

.nav-menu ul{

    display:flex;

    gap:34px;

}

.nav-menu ul li{

    position:relative;

}

.nav-menu ul li a{

    font-size:15px;

    font-weight:500;

    color:#222;

    transition:.3s;

}

.nav-menu ul li a:hover{

    color:#5b3df5;

}

.nav-menu ul li::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:#5b3df5;

    transition:.3s;

}

.nav-menu ul li:hover::after{

    width:100%;

}

/*==============================
    RIGHT SIDE
==============================*/

.header-right{

    display:flex;

    align-items:center;

    gap:16px;

}

.post-property{

    background:#5b3df5;

    color:#fff;

    padding:12px 24px;

    border-radius:8px;

    font-size:14px;

    font-weight:500;

    transition:.3s;

}

.post-property:hover{

    background:#4726ef;

}

.login-btn{

    border:1px solid #ddd;

    padding:12px 24px;

    border-radius:8px;

    font-size:14px;

    font-weight:500;

    transition:.3s;

}

.login-btn:hover{

    background:#f7f7f7;

}

/*==============================
    MOBILE TOGGLE
==============================*/

.menu-toggle{

    width:42px;

    height:42px;

    display:none;

    justify-content:center;

    align-items:center;

    flex-direction:column;

    gap:5px;

}

.menu-toggle span{

    width:24px;

    height:2px;

    background:#222;

    transition:.3s;

}

/*==============================
    MOBILE MENU
==============================*/

.mobile-menu{

    position:fixed;

    left:-100%;

    top:80px;

    width:280px;

    height:100vh;

    background:#fff;

    transition:.35s;

    z-index:999;

    box-shadow:10px 0 20px rgba(0,0,0,.1);

}

.mobile-menu.active{

    left:0;

}

.mobile-menu ul{

    padding:25px;

}

.mobile-menu ul li{

    border-bottom:1px solid #eee;

}

.mobile-menu ul li a{

    display:block;

    padding:18px 0;

    font-size:15px;

    font-weight:500;

}

/*==============================
    HERO SPACE
==============================*/

.hero-section{

    margin-top:80px;

}

/*==============================
    RESPONSIVE
==============================*/

@media(max-width:991px){

.nav-menu{

display:none;

}

.menu-toggle{

display:flex;

}

.post-property{

display:none;

}

}

@media(max-width:768px){

.container{

padding:0 15px;

}

.navbar{

height:70px;

}

.logo img{

height:36px;

}

.login-btn{

padding:10px 18px;

}

.hero-section{

margin-top:70px;

}

}

@media(max-width:576px){

.login-btn{

display:none;

}

.container{

padding:0 12px;

}

}