
body{
    font-family: 'Segoe UI', sans-serif;
}

/* Navbar */
.navbar{
    background:#0d1b2a;
}

.navbar-brand{
    font-size:28px;
    font-weight:bold;
    color:#fff !important;
}

/* Hero */
.hero{
    background: linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5)),
    url('../img/Ghugli/banner.jpg');
    background-size:cover;
    background-position:center;
    height:105vh;
    display:flex;
    align-items:center;
    color:white;
    
}

.hero h1{
    font-size:4rem;
    font-weight:700;
}

.hero p{
    font-size:1.2rem;
}

/* Search Box */
.search-box{
    margin-top:-70px;
    position:relative;
    z-index:99;
}

/* Property Card */
.property-card{
    transition:.3s;
    border:none;
    overflow:hidden;
}

.property-card:hover{
    transform:translateY(-10px);
}

.property-card img{
    height:250px;
    object-fit:cover;
}

/* Stats */
.stats{
    background:#0d1b2a;
    color:white;
}

.counter{
    font-size:40px;
    font-weight:bold;
}

/* CTA */
.cta{
    background:#f8f9fa;
}

/* Footer */
footer{
    background:#0d1b2a;
    color:white;
}


.amenity-card{
    transition:all 0.3s ease;
    border-radius:15px;
    height:100%;
}

.amenity-card:hover{
    transform:translateY(-10px);
    box-shadow:0 15px 30px rgba(0,0,0,.12) !important;
}

.amenity-icon{
    font-size:50px;
    margin-bottom:15px;
}

.amenity-card h5{
    font-weight:600;
}



/* Video Section */
.video-container{
    border-radius:20px;
    overflow:hidden;
}

.video-container iframe{
    display:block;
}

.video-feature{
    background:#f8f9fa;
    padding:12px 15px;
    border-radius:10px;
    font-weight:500;
    transition:0.3s;
}

.video-feature:hover{
    background:#0d6efd;
    color:#fff;
}

.hero-video{
    position:relative;
    height:50vh;
    overflow:hidden;
}

.hero-video video{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.hero-content{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    color:#fff;
    text-align:center;
    z-index:2;
}

.hero-video::before{
    content:'';
    position:absolute;
    inset:0;
    background:#ffc107;
    z-index:1;
}





.luxury-card{
    width:420px;
    border-radius:30px;
    overflow:hidden;
    background:#fff;
    box-shadow:
    0 30px 80px rgba(0,0,0,.35);
    transition:.5s;
    position:relative;
}

.luxury-card:hover{
    transform:translateY(-15px);
}

.card-image{
    position:relative;
    height:320px;
    overflow:hidden;
}

.card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.7s;
}

.luxury-card:hover img{
    transform:scale(1.12);
}

.card-image::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.85),
        rgba(0,0,0,.1)
    );
}

.price-tag{
    position:absolute;
    top:20px;
    left:20px;
    z-index:2;
    background:#fff;
    color:#111;
    font-weight:700;
    padding:10px 18px;
    border-radius:50px;
    box-shadow:0 10px 25px rgba(0,0,0,.2);
}

.property-status{
    position:absolute;
    top:20px;
    right:20px;
    z-index:2;
    background:#10b981;
    color:#fff;
    padding:10px 15px;
    border-radius:50px;
    font-size:12px;
    font-weight:700;
}

.overlay-content{
    position:absolute;
    left:25px;
    bottom:25px;
    z-index:2;
    color:#fff;
}

.overlay-content h3{
    font-size:28px;
    margin-bottom:5px;
}

.card-body-custom{
    padding:25px;
}

.features{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-top:-60px;
    position:relative;
    z-index:10;
}

.feature{
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(10px);
    border-radius:18px;
    text-align:center;
    padding:15px 10px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.feature span{
    font-size:24px;
}

.feature h5{
    margin:8px 0 3px;
}

.description{
    margin-top:25px;
    color:#64748b;
    line-height:1.8;
}

.card-footer-custom{
    display:flex;
    gap:12px;
    margin-top:25px;
}

.btn-view{
    flex:1;
    border:none;
    background:linear-gradient(
        135deg,
        #2563eb,
        #7c3aed
    );
    color:#fff;
    padding:14px;
    border-radius:14px;
    font-weight:600;
    cursor:pointer;
}

.btn-contact{
    width:120px;
    border:none;
    background:#f1f5f9;
    color:#111;
    padding:14px;
    border-radius:14px;
    font-weight:600;
    cursor:pointer;
}
/* ==========================================================================
   Property Details Table Section Styling (Full Width & Responsive)
   ========================================================================== */
.property-details-section {
    background-color: #f8f9fa;
}

/* Table container ko screen ke mutabik full stretch karne ke liye */
.property-custom-table {
    width: 100% !important;
    background: #ffffff;
    border-collapse: separate;
    table-layout: fixed; /* Isse columns ki width fix rehti hai aur overflow nahi hota */
}

/* Table Header styling */
.property-custom-table thead th {
    background-color: #0d1b2a !important;
    color: #FFD700 !important;
    padding: 18px 24px;
    font-size: 1.15rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    border: none;
    width: 50%; /* Dono columns ko pure screen par 50-50% width dega */
}

/* Row Hover Effect */
.property-custom-table tbody tr {
    transition: background-color 0.2s ease;
}

.property-custom-table tbody tr:hover {
    background-color: #f1f5f9;
}

/* Table Cells Data */
.property-custom-table tbody td {
    padding: 16px 24px;
    vertical-align: middle;
    color: #334155;
    font-size: 1rem;
    border-color: #e2e8f0 !important;
    word-wrap: break-word; /* Lamba text hone par automatic break ho jayega */
}

/* First Column (Fields Title) Specific Styling */
.property-custom-table tbody td.field-title {
    font-weight: 600;
    color: #0d1b2a;
    background-color: #fcfcfd;
}

/* Mobile Responsive Adjustments */
@media (max-width: 768px) {
    .property-custom-table thead th {
        padding: 14px 16px;
        font-size: 1rem;
    }
    
    .property-custom-table tbody td {
        padding: 12px 16px;
        font-size: 0.92rem;
    }
}

@media (max-width: 480px) {
    /* Chhoti mobile screens par padding thodi aur kam ho jayegi taaki content clean dikhe */
    .property-custom-table thead th, 
    .property-custom-table tbody td {
        padding: 10px 12px;
    }
}
/* ==========================================================================
   Professional Footer Section Styling
   ========================================================================== */
.main-footer {
    background-color: #0d1b2a; /* Aapka brand dark color */
    color: #ffffff;
    font-size: 0.95rem;
}

/* Headings Styling */
.footer-heading {
    font-weight: 700;
    letter-spacing: 1px;
}

.footer-subheading {
    color: #FFD700; /* Gold color subheadings ke liye */
    font-weight: 600;
    font-size: 1.1rem;
    position: relative;
    padding-bottom: 8px;
}

/* Subheading ke niche ek choti elegant line */
.footer-subheading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background-color: #FFD700;
}

/* About Text */
.footer-about-text {
    color: #94a3b8; /* Soft readable grayish-white */
    line-height: 1.7;
    text-align: justify;
}

/* Navigation & Service Links */
.footer-links li a {
    transition: transform 0.2s ease, color 0.2s ease;
}

.footer-links li a:hover {
    color: #FFD700 !important;
    transform: translateX(4px);
}

.footer-contact-info li .info-icon {
    font-size: 1.1rem;
    line-height: 1;
}

/* Contact Info Section */
.footer-contact-info li {
    display: flex;
    align-items: flex-start;
    color: #94a3b8;
}

.info-icon {
    margin-right: 12px;
    font-size: 1.1rem;
}

/* Footer Divider line */
.footer-divider {
    border-color: rgba(255, 255, 255, 0.1);
}

/* Bottom Copyright Text */
.copyright-text {
    color: #64748b;
    font-size: 0.88rem;
}

/* Responsive adjustment */
@media (max-width: 767px) {
    .footer-subheading::after {
        left: 50%;
        transform: translateX(-50%); /* Mobile par line center me ho jayegi */
    }
    .main-footer .col-md-6, .main-footer .col-lg-2, .main-footer .col-lg-3 {
        text-align: center; /* Mobile par responsive center alignment */
    }
    .footer-contact-info li {
        justify-content: center;
    }
}