/* =====================================
   REDIBOR PROPERTIES
   PREMIUM REAL ESTATE WEBSITE
====================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{

--primary:#0B1F3A;
--secondary:#D4AF37;
--accent:#C89B3C;

--white:#ffffff;

--light:#f7f8fb;

--dark:#202020;

--text:#555;

--success:#2ecc71;

--danger:#e74c3c;

--shadow:0 12px 35px rgba(0,0,0,.08);

--radius:18px;

}

*{

margin:0;

padding:0;

box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;

background:#fff;

color:var(--dark);

line-height:1.6;

overflow-x:hidden;

}

.container{

width:90%;

max-width:1400px;

margin:auto;

}

img{

max-width:100%;

display:block;

}

a{

text-decoration:none;

}

ul{

list-style:none;

}

/*======================
HEADER
=======================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

background:rgba(11,31,58,.92);

backdrop-filter:blur(12px);

z-index:9999;

transition:.4s;

}

.header .container{

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 0;

}

.logo{

display:flex;

align-items:center;

gap:15px;

}

.logo img{

width:70px;

height:70px;

object-fit:contain;

}

.logo h2{

color:#fff;

font-size:24px;

}

.logo span{

font-size:13px;

color:#ddd;

}

nav ul{

display:flex;

gap:35px;

align-items:center;

}

nav a{

color:white;

font-weight:500;

transition:.3s;

}

nav a:hover{

color:var(--secondary);

}

.whatsapp-btn{

padding:12px 22px;

background:#25D366;

border-radius:30px;

color:white;

font-weight:600;

}

.whatsapp-btn:hover{

background:#1ebc59;

}

.menu-btn{

display:none;

font-size:28px;

color:white;

cursor:pointer;

}

/*======================
HERO
=======================*/

.hero{

height:100vh;

position:relative;

display:flex;

align-items:center;

justify-content:center;

overflow:hidden;

}

.hero-slider{

position:absolute;

width:100%;

height:100%;

top:0;

left:0;

}

.slide{

position:absolute;

width:100%;

height:100%;

background-size:cover;

background-position:center;

opacity:0;

transition:opacity 1.4s;

}

.slide:nth-child(1){

background-image:url(images/hero1.jpg);

opacity:1;

}

.slide:nth-child(2){

background-image:url(images/hero2.jpg);

}

.slide:nth-child(3){

background-image:url(images/hero3.jpg);

}

.overlay{

position:absolute;

width:100%;

height:100%;

background:rgba(0,0,0,.55);

}

.hero-content{

position:relative;

z-index:5;

text-align:center;

color:white;

max-width:850px;

padding:20px;

}

.hero-content h1{

font-size:60px;

font-weight:800;

margin-bottom:25px;

line-height:1.2;

}

.hero-content p{

font-size:22px;

margin-bottom:35px;

}

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn-primary{

padding:16px 40px;

background:var(--secondary);

color:#111;

font-weight:700;

border-radius:40px;

transition:.4s;

}

.btn-primary:hover{

transform:translateY(-5px);

box-shadow:0 20px 35px rgba(0,0,0,.2);

}

.btn-outline{

padding:16px 40px;

border:2px solid white;

color:white;

border-radius:40px;

font-weight:600;

transition:.4s;

}

.btn-outline:hover{

background:white;

color:#111;

}

/*======================
STATISTICS
=======================*/

.statistics{

padding:80px 0;

background:white;

}

.statistics .container{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.stat-box{

background:white;

padding:40px;

text-align:center;

border-radius:20px;

box-shadow:var(--shadow);

transition:.4s;

}

.stat-box:hover{

transform:translateY(-10px);

}

.stat-box h2{

font-size:48px;

color:var(--secondary);

margin-bottom:10px;

}

.stat-box p{

font-size:18px;

font-weight:600;

}

/*======================
SEARCH SECTION
=======================*/

.search-section{

background:var(--light);

padding:80px 0;

}

.search-section h2{

text-align:center;

margin-bottom:40px;

font-size:40px;

}

.search-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:20px;

}

.search-grid div{

display:flex;

flex-direction:column;

}

.search-grid label{

margin-bottom:8px;

font-weight:600;

}

.search-grid input,

.search-grid select{

padding:15px;

border:1px solid #ddd;

border-radius:12px;

font-size:16px;

}

.search-btn-div{

display:flex;

justify-content:center;

align-items:end;

}

.search-btn-div button{

width:100%;

padding:16px;

border:none;

background:var(--secondary);

font-size:17px;

font-weight:700;

border-radius:12px;

cursor:pointer;

transition:.4s;

}

.search-btn-div button:hover{

background:#b88c29;

}
/*=========================================
SECTION TITLES
=========================================*/

section{

padding:90px 0;

}

.section-title{

text-align:center;

margin-bottom:60px;

}

.section-title h2{

font-size:42px;

font-weight:700;

color:var(--primary);

margin-bottom:15px;

}

.section-title p{

font-size:18px;

color:var(--text);

max-width:700px;

margin:auto;

line-height:1.8;

}

/*=========================================
PROPERTY FILTER
=========================================*/

.property-filter{

display:flex;

justify-content:center;

flex-wrap:wrap;

gap:15px;

margin-bottom:50px;

}

.property-filter button{

padding:14px 28px;

border:none;

background:#eee;

border-radius:30px;

cursor:pointer;

font-size:16px;

font-weight:600;

transition:.4s;

}

.property-filter button.active{

background:var(--secondary);

color:#111;

}

.property-filter button:hover{

background:var(--primary);

color:white;

}

/*=========================================
PROPERTY GRID
=========================================*/

.property-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

gap:35px;

}

.property-card{

background:white;

border-radius:20px;

overflow:hidden;

box-shadow:var(--shadow);

transition:.4s;

position:relative;

}

.property-card:hover{

transform:translateY(-12px);

}

.property-image{

height:270px;

position:relative;

overflow:hidden;

}

.property-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.6s;

}

.property-card:hover img{

transform:scale(1.08);

}

.badge{

position:absolute;

top:20px;

left:20px;

padding:8px 18px;

border-radius:30px;

color:white;

font-size:13px;

font-weight:700;

}

.sale{

background:#27ae60;

}

.rent{

background:#2980b9;

}

.shortlet{

background:#8e44ad;

}

.joint{

background:#e67e22;

}

.property-icons{

position:absolute;

right:15px;

top:15px;

display:flex;

flex-direction:column;

gap:10px;

}

.property-icons button{

width:42px;

height:42px;

border:none;

border-radius:50%;

background:white;

cursor:pointer;

font-size:16px;

box-shadow:0 5px 20px rgba(0,0,0,.15);

transition:.3s;

}

.property-icons button:hover{

background:var(--secondary);

}

.property-body{

padding:25px;

}

.property-body h3{

font-size:24px;

margin-bottom:10px;

}

.property-body p{

color:#666;

margin-bottom:20px;

}

.price{

font-size:30px;

font-weight:700;

color:var(--secondary);

margin-bottom:20px;

}

.property-details{

display:flex;

justify-content:space-between;

margin-bottom:25px;

font-size:15px;

color:#555;

flex-wrap:wrap;

gap:10px;

}

.property-footer{

display:flex;

justify-content:space-between;

align-items:center;

}

.property-footer a{

padding:12px 24px;

border-radius:8px;

font-weight:600;

transition:.3s;

}

.property-footer a:first-child{

background:var(--primary);

color:white;

}

.property-footer a.enquire{

background:var(--secondary);

color:#111;

}

.property-footer a:hover{

opacity:.9;

transform:translateY(-2px);

}

.view-all{

text-align:center;

margin-top:60px;

}

.view-all a{

display:inline-block;

padding:18px 40px;

background:var(--primary);

color:white;

border-radius:35px;

font-weight:700;

transition:.4s;

}

.view-all a:hover{

background:var(--secondary);

color:#111;

}

/*=========================================
SOLD PROPERTIES
=========================================*/

.sold-section{

background:#fafafa;

}

.sold-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:30px;

}

.sold-card{

background:white;

border-radius:20px;

overflow:hidden;

box-shadow:var(--shadow);

transition:.4s;

}

.sold-card:hover{

transform:translateY(-8px);

}

.sold-card img{

height:220px;

width:100%;

object-fit:cover;

}

.sold-card div{

padding:20px;

}

.sold-card h3{

margin-bottom:8px;

}

.sold-card span{

display:inline-block;

margin-top:15px;

padding:8px 20px;

background:green;

color:white;

border-radius:30px;

font-size:13px;

font-weight:bold;

}

/*=========================================
WHY CHOOSE US
=========================================*/

.why-us{

background:white;

}

.why-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:35px;

}

.why-box{

padding:40px;

background:white;

border-radius:20px;

text-align:center;

box-shadow:var(--shadow);

transition:.4s;

}

.why-box:hover{

background:var(--primary);

color:white;

transform:translateY(-10px);

}

.why-box i{

font-size:55px;

color:var(--secondary);

margin-bottom:25px;

}

.why-box h3{

margin-bottom:15px;

font-size:22px;

}
/* ======================================================
   REDIBOR PROPERTIES
   PREMIUM REAL ESTATE WEBSITE
   VERSION 1.0
======================================================*/

/* GOOGLE FONTS */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

html{
font-size:16px;
}

body{

font-family:'Poppins',sans-serif;

background:#f7f8fa;

color:#222;

overflow-x:hidden;

line-height:1.7;

}

/* VARIABLES */

:root{

--primary:#003366;

--secondary:#0056b3;

--gold:#D4AF37;

--green:#0c8f47;

--danger:#d62828;

--light:#ffffff;

--dark:#222;

--grey:#666;

--border:#e5e5e5;

--shadow:0 15px 40px rgba(0,0,0,.08);

--radius:12px;

--transition:.35s ease;

}

/* CONTAINER */

.container{

width:90%;

max-width:1400px;

margin:auto;

}

/* SECTION */

section{

padding:90px 0;

}

/* TITLES */

.section-title{

text-align:center;

margin-bottom:60px;

}

.section-title span{

display:inline-block;

color:var(--gold);

font-size:15px;

font-weight:700;

letter-spacing:2px;

text-transform:uppercase;

margin-bottom:10px;

}

.section-title h2{

font-size:42px;

font-weight:700;

color:var(--primary);

margin-bottom:20px;

}

.section-title p{

max-width:700px;

margin:auto;

color:#666;

font-size:17px;

}

/* BUTTONS */

.btn-primary{

display:inline-block;

background:var(--gold);

color:white;

padding:15px 35px;

border-radius:50px;

text-decoration:none;

font-weight:600;

transition:.4s;

border:none;

cursor:pointer;

}

.btn-primary:hover{

background:var(--primary);

transform:translateY(-3px);

}

.btn-secondary{

display:inline-block;

padding:15px 35px;

border:2px solid var(--gold);

border-radius:50px;

text-decoration:none;

font-weight:600;

color:var(--gold);

transition:.4s;

}

.btn-secondary:hover{

background:var(--gold);

color:white;

}

/* NAVBAR */

header{

position:fixed;

top:0;

left:0;

width:100%;

background:rgba(255,255,255,.96);

backdrop-filter:blur(20px);

z-index:9999;

box-shadow:0 5px 25px rgba(0,0,0,.06);

}

.navbar{

display:flex;

justify-content:space-between;

align-items:center;

height:90px;

}

.logo{

display:flex;

align-items:center;

gap:12px;

text-decoration:none;

}

.logo img{

height:60px;

}

.logo h2{

font-size:28px;

color:var(--primary);

font-weight:700;

}

.nav-links{

display:flex;

gap:30px;

list-style:none;

}

.nav-links a{

text-decoration:none;

color:#333;

font-weight:600;

transition:.3s;

}

.nav-links a:hover{

color:var(--gold);

}

/* HERO */

.hero{

height:100vh;

display:flex;

align-items:center;

background:url("images/hero.jpg") center/cover;

position:relative;

}

.hero::before{

content:"";

position:absolute;

inset:0;

background:rgba(0,0,0,.55);

}

.hero-content{

position:relative;

z-index:2;

max-width:750px;

color:white;

}

.hero-content h1{

font-size:60px;

font-weight:800;

margin-bottom:25px;

line-height:1.2;

}

.hero-content p{

font-size:20px;

margin-bottom:35px;

opacity:.95;

}

/* SEARCH */

.search-box{

margin-top:-70px;

position:relative;

z-index:10;

background:white;

padding:35px;

border-radius:15px;

box-shadow:var(--shadow);

display:grid;

grid-template-columns:repeat(5,1fr);

gap:20px;

}

.search-box select,

.search-box input{

width:100%;

padding:15px;

border:1px solid #ddd;

border-radius:8px;

font-size:15px;

outline:none;

}

.search-box button{

background:var(--gold);

border:none;

color:white;

font-size:17px;

font-weight:600;

border-radius:8px;

cursor:pointer;

transition:.3s;

}

.search-box button:hover{

background:var(--primary);

}
/* ======================================================
   FEATURED PROPERTY CARDS
======================================================*/

.properties-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

gap:35px;

margin-top:50px;

}

.property-card{

background:#fff;

border-radius:15px;

overflow:hidden;

box-shadow:var(--shadow);

transition:.4s;

position:relative;

}

.property-card:hover{

transform:translateY(-10px);

}

.property-image{

height:260px;

overflow:hidden;

position:relative;

}

.property-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.property-card:hover img{

transform:scale(1.08);

}

.property-badge{

position:absolute;

top:20px;

left:20px;

background:var(--gold);

color:#fff;

padding:8px 18px;

font-size:13px;

border-radius:40px;

font-weight:600;

}

.favorite-btn{

position:absolute;

top:20px;

right:20px;

width:45px;

height:45px;

background:white;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

cursor:pointer;

font-size:18px;

box-shadow:0 5px 15px rgba(0,0,0,.15);

transition:.3s;

}

.favorite-btn:hover{

background:var(--gold);

color:white;

}

.property-info{

padding:25px;

}

.property-price{

font-size:30px;

font-weight:700;

color:var(--primary);

margin-bottom:10px;

}

.property-title{

font-size:23px;

font-weight:700;

margin-bottom:8px;

}

.property-location{

color:#777;

margin-bottom:20px;

display:flex;

align-items:center;

gap:10px;

}

.property-features{

display:flex;

justify-content:space-between;

padding-top:20px;

border-top:1px solid #eee;

}

.property-feature{

display:flex;

align-items:center;

gap:8px;

font-size:14px;

font-weight:600;

color:#666;

}

.property-feature i{

color:var(--gold);

}

/* ======================================================
WHY CHOOSE US
======================================================*/

.why-redibor{

background:white;

}

.why-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:35px;

margin-top:40px;

}

.why-box{

padding:35px;

border-radius:15px;

background:#fff;

text-align:center;

box-shadow:var(--shadow);

transition:.4s;

}

.why-box:hover{

transform:translateY(-10px);

}

.why-box i{

font-size:55px;

color:var(--gold);

margin-bottom:25px;

}

.why-box h3{

font-size:24px;

margin-bottom:15px;

color:var(--primary);

}

.why-box p{

color:#666;

line-height:1.8;

}

/* ======================================================
COMPANY STATS
======================================================*/

.company-stats{

background:linear-gradient(rgba(0,51,102,.92),rgba(0,51,102,.92)),url(images/stats.jpg);

background-size:cover;

background-position:center;

color:white;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.stat-card{

text-align:center;

padding:40px;

}

.stat-card h2{

font-size:58px;

font-weight:800;

color:var(--gold);

margin-bottom:10px;

}

.stat-card p{

font-size:18px;

}

/* ======================================================
LOCATIONS
======================================================*/

.locations{

background:#f9f9f9;

}

.location-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

gap:20px;

margin-top:40px;

}

.location-grid div{

background:white;

padding:18px;

text-align:center;

border-radius:10px;

font-weight:600;

box-shadow:0 5px 15px rgba(0,0,0,.05);

transition:.3s;

cursor:pointer;

}

.location-grid div:hover{

background:var(--gold);

color:white;

}

/* ======================================================
CALL TO ACTION
======================================================*/

.cta-section{

background:linear-gradient(135deg,var(--gold),#b68d2f);

text-align:center;

color:white;

}

.cta-section h2{

font-size:48px;

margin-bottom:20px;

}

.cta-section p{

font-size:20px;

max-width:700px;

margin:auto auto 35px;

}

.cta-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

/* ======================================================
ANIMATIONS
======================================================*/

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:translateY(0);

}

}

.fade-up{

animation:fadeUp 1s ease forwards;

}
/* ======================================================
   RECENTLY SOLD PROPERTIES
======================================================*/

.sold-properties{
background:#ffffff;
}

.sold-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
gap:30px;
margin-top:50px;
}

.sold-card{
background:#fff;
border-radius:15px;
overflow:hidden;
box-shadow:var(--shadow);
transition:.35s;
position:relative;
}

.sold-card:hover{
transform:translateY(-8px);
}

.sold-card img{
width:100%;
height:250px;
object-fit:cover;
display:block;
transition:.4s;
}

.sold-card:hover img{
transform:scale(1.05);
}

.sold-overlay{
position:absolute;
top:20px;
left:20px;
}

.sold-badge{
background:#16a34a;
color:#fff;
padding:8px 18px;
border-radius:30px;
font-size:13px;
font-weight:700;
}

.sold-content{
padding:25px;
}

.sold-content h3{
font-size:23px;
color:var(--primary);
margin-bottom:10px;
}

.sold-content p{
color:#777;
margin-bottom:15px;
}

.sold-content h4{
font-size:28px;
color:var(--gold);
}

/* ======================================================
TESTIMONIALS
======================================================*/

.testimonials{
background:#f8fafc;
}

.testimonial-slider{
max-width:900px;
margin:auto;
}

.testimonial{
display:none;
background:#fff;
padding:50px;
border-radius:15px;
box-shadow:var(--shadow);
text-align:center;
}

.testimonial.active{
display:block;
animation:fadeUp .8s;
}

.stars{
font-size:28px;
color:#fbbf24;
margin-bottom:20px;
}

.testimonial p{
font-size:18px;
color:#555;
line-height:1.9;
margin-bottom:25px;
font-style:italic;
}

.testimonial h4{
font-size:24px;
color:var(--primary);
margin-bottom:8px;
}

.testimonial span{
color:#777;
}

/* ======================================================
TRUST SECTION
======================================================*/

.trust{
background:var(--primary);
color:white;
}

.trust-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:30px;
}

.trust-grid div{
text-align:center;
padding:35px;
}

.trust-grid i{
font-size:55px;
color:var(--gold);
margin-bottom:20px;
}

.trust-grid h3{
font-size:22px;
margin-bottom:12px;
}

.trust-grid p{
color:#ddd;
line-height:1.7;
}

/* ======================================================
FAQ
======================================================*/

.faq-section{
background:white;
}

.faq-container{
max-width:900px;
margin:auto;
}

.faq-item{
margin-bottom:18px;
border-radius:12px;
overflow:hidden;
box-shadow:0 5px 15px rgba(0,0,0,.06);
}

.faq-question{
width:100%;
padding:22px;
background:white;
border:none;
font-size:18px;
font-weight:600;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
}

.faq-answer{
display:none;
padding:22px;
background:#fafafa;
color:#666;
line-height:1.8;
}

.faq-item.active .faq-answer{
display:block;
}

/* ======================================================
BLOG
======================================================*/

.blog-section{
background:#f7f8fa;
}

.blog-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
gap:35px;
}

.blog-card{
background:white;
border-radius:15px;
overflow:hidden;
box-shadow:var(--shadow);
transition:.3s;
}

.blog-card:hover{
transform:translateY(-8px);
}

.blog-card img{
width:100%;
height:230px;
object-fit:cover;
}

.blog-content{
padding:25px;
}

.blog-content h3{
font-size:23px;
margin-bottom:15px;
color:var(--primary);
}

.blog-content p{
color:#666;
margin-bottom:20px;
}

.blog-content a{
text-decoration:none;
color:var(--gold);
font-weight:700;
}

/* ======================================================
NEWSLETTER
======================================================*/

.newsletter{
background:linear-gradient(135deg,var(--primary),#01284f);
color:white;
text-align:center;
}

.newsletter h2{
font-size:42px;
margin-bottom:15px;
}

.newsletter p{
font-size:18px;
margin-bottom:30px;
}

.newsletter form{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.newsletter input{
width:420px;
max-width:100%;
padding:16px;
border:none;
border-radius:8px;
font-size:16px;
}

.newsletter button{
padding:16px 35px;
background:var(--gold);
color:white;
border:none;
border-radius:8px;
cursor:pointer;
font-weight:600;
transition:.3s;
}

.newsletter button:hover{
background:#b89220;
}
.footer{

background:#071529;

color:#fff;

padding:80px 0 20px;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1.2fr;

gap:40px;

}

.footer-logo{

width:90px;

margin-bottom:15px;

}

.footer h2{

margin-bottom:15px;

}

.footer h3{

margin-bottom:20px;

color:#f6b100;

}

.footer ul{

list-style:none;

padding:0;

}

.footer li{

margin-bottom:12px;

}

.footer a{

color:white;

text-decoration:none;

}

.footer-social{

display:flex;

gap:15px;

margin-top:25px;

}

.footer-social a{

width:45px;

height:45px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.08);

border-radius:50%;

font-size:18px;

transition:.3s;

}

.footer-social a:hover{

background:#f6b100;

color:#071529;

}

.footer-whatsapp{

display:inline-block;

margin-top:20px;

padding:12px 22px;

background:#25D366;

border-radius:8px;

font-weight:600;

}

.footer-bottom{

margin-top:60px;

text-align:center;

border-top:1px solid rgba(255,255,255,.15);

padding-top:25px;

}
/*==========================
ADMIN LOGIN
==========================*/

.admin-login{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.75);

display:none;

justify-content:center;

align-items:center;

z-index:99999;

}

.admin-login.active{

display:flex;

}

.admin-box{

width:420px;

background:white;

padding:45px;

border-radius:18px;

text-align:center;

position:relative;

box-shadow:0 30px 60px rgba(0,0,0,.2);

}

.admin-logo{

width:90px;

margin-bottom:20px;

}

.admin-box h2{

margin-bottom:10px;

}

.admin-box p{

margin-bottom:25px;

color:#777;

}

.close-admin{

position:absolute;

right:20px;

top:20px;

background:none;

border:none;

font-size:20px;

cursor:pointer;

}

.input-group{

margin-bottom:20px;

text-align:left;

}

.input-group label{

display:block;

margin-bottom:8px;

font-weight:600;

}

.input-group input{

width:100%;

padding:14px;

border:1px solid #ddd;

border-radius:8px;

font-size:16px;

}

.login-btn{

width:100%;

padding:15px;

background:#0b3d91;

color:white;

border:none;

border-radius:10px;

font-size:17px;

cursor:pointer;

transition:.3s;

}

.login-btn:hover{

background:#f4b400;

color:black;

}
body{

margin:0;

background:#f3f5f9;

font-family:Arial,sans-serif;

}

.dashboard{

display:flex;

min-height:100vh;

}

.sidebar{

width:260px;

background:#071529;

color:white;

padding:30px;

}

.dashboard-logo{

width:90px;

margin-bottom:15px;

}

.sidebar ul{

padding:0;

list-style:none;

margin-top:40px;

}

.sidebar li{

padding:18px;

margin-bottom:10px;

border-radius:8px;

cursor:pointer;

}

.sidebar li:hover,

.sidebar li.active{

background:#f4b400;

color:black;

}

.sidebar i{

width:30px;

}

.dashboard-content{

flex:1;

padding:40px;

}

.top-bar{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:40px;

}

.add-property-btn{

padding:14px 30px;

background:#0b3d91;

color:white;

border:none;

border-radius:8px;

cursor:pointer;

}

.dashboard-cards{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

margin-bottom:40px;

}

.dashboard-card{

background:white;

padding:30px;

border-radius:12px;

box-shadow:0 8px 25px rgba(0,0,0,.08);

}

.dashboard-card h3{

color:#888;

margin-bottom:15px;

}

.dashboard-card h2{

font-size:38px;

color:#0b3d91;

}

.recent-properties{

background:white;

padding:25px;

border-radius:12px;

}

.section-title{

font-size:24px;

margin-bottom:20px;

font-weight:bold;

}

table{

width:100%;

border-collapse:collapse;

}

th{

background:#0b3d91;

color:white;

padding:15px;

}

td{

padding:15px;

border-bottom:1px solid #eee;

}

td img{

width:90px;

height:60px;

object-fit:cover;

border-radius:8px;

}
.property-form-container{

max-width:1100px;

margin:auto;

padding:50px;

}

.form-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

margin-bottom:30px;

}

input,

select,

textarea{

width:100%;

padding:14px;

border:1px solid #ddd;

border-radius:8px;

margin-top:8px;

margin-bottom:15px;

font-size:15px;

}

.features{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:12px;

margin:25px 0;

}

.publish-btn{

background:#0B3D91;

color:white;

padding:16px 40px;

border:none;

border-radius:10px;

cursor:pointer;

font-size:18px;

}

.publish-btn:hover{

background:#F4B400;

color:black;

}