/* ============= GODREJ SAMARIES - ULTRA LUXURY CSS ============= */
:root{
  --primary:#0B1F3A;
  --gold:#C8A96B;
  --dark-gold:#8B6A2B;
  --ivory:#F5F1EA;
  --black:#111111;
  --white:#FFFFFF;
  --grad-gold:linear-gradient(135deg,#C8A96B,#8B6A2B);
  --grad-gold-soft:linear-gradient(135deg,#E5CFA0,#C8A96B);
  --shadow-lux:0 25px 60px rgba(11,31,58,.15);
  --shadow-gold:0 15px 40px rgba(200,169,107,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Poppins',sans-serif;
  color:#222;
  background:var(--white);
  overflow-x:hidden;
  line-height:1.6;
}
h1,h2,h3,h4,h5,h6,.serif{font-family:'Playfair Display',serif;font-weight:700;letter-spacing:.3px}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit;transition:.3s}
section{position:relative}
/* ===== Loader ===== */
#pageLoader{position:fixed;inset:0;background:#5f6864;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .6s,visibility .6s}
#pageLoader.hide{opacity:0;visibility:hidden}
.loader-ring{width:60px;height:60px;border:3px solid rgba(200,169,107,.2);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}
.loader-brand{color:var(--gold);margin-top:20px;font-family:'Playfair Display',serif;font-size:1.4rem;letter-spacing:6px}
.loader-brand span{color:#fff}
@keyframes spin{to{transform:rotate(360deg)}}
/* ===== Utilities ===== */
.section-pad{padding:100px 0}
@media(max-width:768px){.section-pad{padding:70px 0}}
.bg-dark-luxury{background:#5f6864;position:relative;overflow:hidden}
.bg-dark-luxury::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(200,169,107,.15),transparent 50%),radial-gradient(circle at 80% 70%,rgba(200,169,107,.1),transparent 50%);pointer-events:none}
.bg-dark-luxury > *{position:relative;z-index:1}
.bg-ivory{background:var(--ivory)}
.gold{color:var(--gold)}
.eyebrow{display:inline-block;font-family:'Poppins',sans-serif;font-size:.78rem;letter-spacing:5px;text-transform:uppercase;color:var(--dark-gold);font-weight:600;margin-bottom:14px;position:relative;padding-left:40px}
.eyebrow::before{content:"";position:absolute;left:0;top:50%;width:30px;height:1px;background:var(--gold)}
.eyebrow.light{color:var(--gold)}
.section-title{font-size:clamp(2rem,4vw,3.2rem);line-height:1.2;margin-bottom:20px;color:var(--primary)}
.text-white .section-title,.section-title.text-white{color:#fff}
.lead-text{color:#555;font-size:1.02rem;margin-bottom:24px ; }
/* ===== Buttons ===== */
.btn-luxury{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--grad-gold);color:#fff!important;border:none;
  padding:14px 32px;border-radius:50px;font-weight:600;font-size:.92rem;
  letter-spacing:1px;text-transform:uppercase;cursor:pointer;
  box-shadow:var(--shadow-gold);position:relative;overflow:hidden;
  transition:all .4s cubic-bezier(.4,0,.2,1);
  position: relative;
    overflow: hidden;
    z-index: 1;
}
.btn-luxury::before{
    z-index: -1; /* important */
}

.btn-luxury:hover{
    color: #fff !important;
}
.glass-form .btn-luxury{
    padding: 10px 24px;
    /* max-width: 300px; */
    
}

.btn-luxury::before{content:"";position:absolute;inset:0;background:#c6a15b;opacity:0;transition:.4s}
.btn-luxury:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(200,169,107,.5)}
.btn-luxury:hover::before{opacity:1}
.btn-luxury > *{position:relative;z-index:1}
.btn-lg-luxury{padding:12px 24px;font-size:0.9rem}
.btn-loader{display:none;width:18px;height:18px;border:2px solid #fff;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}
.btn-luxury.loading .btn-text{display:none}
.btn-luxury.loading .btn-loader{display:inline-block}
.btn-outline-luxury{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--dark-gold);border:1.5px solid var(--gold);padding:10px 22px;border-radius:50px;font-weight:600;font-size:.85rem;cursor:pointer;transition:.3s}
.btn-outline-luxury:hover{background:var(--grad-gold);color:#fff;border-color:transparent}
/* ===== Navbar ===== */
.luxury-navbar{padding:0px 0;background:transparent;transition:all .4s ease;z-index:1050}
.luxury-navbar.scrolled{background:#123c32;backdrop-filter:blur(20px);padding:0px 0;box-shadow:0 5px 30px rgba(0,0,0,.2)}
.brand-mark{display:flex;flex-direction:column;line-height:1}
.brand-top{font-family:'Poppins',sans-serif;font-size:.7rem;letter-spacing:6px;color:var(--gold);font-weight:500}
.brand-bot{font-family:'Playfair Display',serif;font-size:1.4rem;color:#fff;letter-spacing:3px;font-weight:700;margin-top:2px}
.luxury-navbar:not(.scrolled) .brand-bot{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.luxury-navbar .nav-link{    color: #ffffff !important;
    font-size: .68rem;
    font-weight: 400;
    letter-spacing: 1px;
    position: relative;
    padding: 8px 8px !important;
    text-transform: uppercase;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .5);
}
@media (min-width:992px){

    .glass-form{
        max-width: 520px;
        margin-left: auto;
    }

}
.luxury-navbar .nav-link::after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--gold);transition:.3s;transform:translateX(-50%)}
.luxury-navbar .nav-link:hover::after{width:60%}
.nav-icon-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.1);color:#fff!important;border:1px solid rgba(200,169,107,.4);transition:.3s}
.nav-icon-btn:hover{background:var(--grad-gold);border-color:transparent;transform:translateY(-2px)}
.nav-icon-btn.whatsapp:hover{background:#25D366}
.navbar-toggler{border:none;padding:6px;background:transparent!important;box-shadow:none!important}
.navbar-toggler span{display:block;width:26px;height:2px;background:var(--gold);margin:6px 0;transition:.3s}
.navbar-brand{
    padding:0;
}

.navbar-logo{
    max-height:80px;
    width:auto;
    object-fit:contain;
}

@media(max-width:991px){
  .luxury-navbar{background:rgba(11,31,58,.97);backdrop-filter:blur(20px)}
  .navbar-collapse{padding:20px 0}
  .navbar-nav{gap:6px!important}
  .navbar-nav .btn-luxury{margin-top:10px}
}


/* Desktop Only */
@media (min-width: 992px){

    .luxury-navbar .btn-luxury{
        min-width:160px;
        white-space:nowrap;
        padding:14px 24px;
        text-align:center;
        flex-shrink:0;
    }

    .navbar-nav{
        flex-wrap:nowrap;
    }
}


@media (max-width: 768px){

    .hero-content .row{
        margin-left:0 !important;
        margin-right:0 !important;
    }

    .project-card{
        width:100% !important;
        max-width:100% !important;
    }

    .container{
        overflow:hidden;
    }

    .hero-section{
        overflow:hidden;
    }
}



/* ===== Hero ===== */
.hero-section{min-height:100vh;position:relative;display:flex;align-items:center;padding:120px 0 80px;overflow:hidden}
.hero-swiper{position:absolute;inset:0;z-index:0}
.hero-swiper .swiper-slide{
    background-size:cover;
    background-position:center;
    transform:scale(1);
    transition:transform 6s linear;
}

.hero-swiper .swiper-slide-active{
    transform:scale(1.02);
}
@keyframes zoomBg{from{transform:scale(1)}to{transform:scale(1.1)}}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(95,104,100,.85) 0%,rgba(95,104,100,.55) 50%,rgba(95,104,100,.85) 100%);z-index:1}
.hero-content{position:relative;z-index:2}
.scroll-down{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);width:24px;height:40px;border:2px solid var(--gold);border-radius:14px;z-index:3}
.scroll-down span{position:absolute;top:6px;left:50%;width:3px;height:8px;background:var(--gold);border-radius:2px;transform:translateX(-50%);animation:scroll 2s infinite}
@keyframes scroll{0%{opacity:1;top:6px}100%{opacity:0;top:22px}}
/* Project Card */
.project-card{
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));
  backdrop-filter:blur(20px);
  border:1px solid rgba(200,169,107,.3);
  border-radius:24px;padding:10px 40px;color:#fff;
  box-shadow:0 30px 80px rgba(0,0,0,.4);
  position:relative;overflow:hidden;
  max-width: 420px;
    margin-right: auto;
}
.project-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-gold)}
.prelaunch-tag{display:inline-block;background:var(--grad-gold);color:#fff;padding:6px 16px;border-radius:50px;font-size:.72rem;font-weight:600;letter-spacing:2px;margin-bottom:18px}
.project-title{font-size:clamp(2.2rem,0vw,3.4rem);background:linear-gradient(135deg,#fff,#E5CFA0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:8px}
.project-loc{color:var(--gold);font-size:.95rem;margin-bottom:4px}
.project-builder{color:rgba(255,255,255,.8);margin-bottom:10px;font-size:.9rem}
.project-builder strong{color:var(--gold)}
.project-highlights{list-style:none;padding:0;margin:0 0 24px}
.project-highlights li{padding:6px 0;color:rgba(255,255,255,.9);font-size:.92rem}
.project-highlights i{color:var(--gold);margin-right:10px}
.price-row{display:flex;align-items:baseline;gap:14px;padding:0px 0;border-top:1px solid rgba(200,169,107,.2);border-bottom:1px solid rgba(200,169,107,.2);margin-bottom:24px}
.price-label{color:rgba(255,255,255,.7);font-size:.78rem;letter-spacing:2px;text-transform:uppercase}
.price-value{font-family:'Playfair Display',serif;font-size:2.2rem;color:var(--gold);font-weight:700}
.price-value span{font-size:1rem}
/* Glass Form */
.glass-form{
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(20px);
  border-radius:24px;padding:8px 17px;
  box-shadow:0 30px 80px rgba(0,0,0,.3);
  border:1px solid rgba(200,169,107,.3);
}
.glass-form.dark{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));backdrop-filter:blur(20px);border:1px solid rgba(200,169,107,.3);color:#fff}
.form-title{font-size:1.6rem;color:var(--primary);margin-bottom:4px}
.glass-form.dark .form-title{color:#fff}
.form-sub{font-size:11px;color:#777;margin-bottom:20px}
.glass-form.dark .form-sub{color:rgba(255,255,255,.7)}
.form-floating-lux{position:relative;margin-bottom:14px}
.form-floating-lux input,.form-floating-lux textarea{
  width:100%;padding:16px 16px 8px;border:1.5px solid #e5e5e5;border-radius:12px;background:#fafafa;font-size:.92rem;font-family:inherit;transition:.3s;outline:none;color:#222;
}
.form-floating-lux.dark input,.form-floating-lux.dark textarea{background:rgba(255,255,255,.06);border-color:rgba(200,169,107,.25);color:#fff}
.form-floating-lux label{position:absolute;top:16px;left:18px;color:#999;font-size:.88rem;pointer-events:none;transition:.25s;background:transparent;padding:0 4px}
.form-floating-lux.dark label{color:rgba(255,255,255,.6)}
.form-floating-lux input:focus,.form-floating-lux textarea:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 4px rgba(200,169,107,.1)}
.form-floating-lux.dark input:focus,.form-floating-lux.dark textarea:focus{background:rgba(255,255,255,.1)}
.form-floating-lux input:focus + label,
.form-floating-lux input:not(:placeholder-shown) + label,
.form-floating-lux textarea:focus + label,
.form-floating-lux textarea:not(:placeholder-shown) + label{top:-8px;font-size:.7rem;color:var(--dark-gold);background:#fff;letter-spacing:1px}
.form-floating-lux.dark input:focus + label,
.form-floating-lux.dark input:not(:placeholder-shown) + label,
.form-floating-lux.dark textarea:focus + label,
.form-floating-lux.dark textarea:not(:placeholder-shown) + label{color:var(--gold);background:#0B1F3A}
.consent{display:flex;gap:8px;align-items:flex-start;font-size:.78rem;color:#666;margin:5px 0 10px}
.glass-form.dark .consent{color:rgba(255,255,255,.7)}
.consent input{margin-top:3px;accent-color:var(--gold)}
.form-note{text-align:center;font-size:.75rem;color:#999;margin-top:12px}
.glass-form.dark .form-note{color:rgba(255,255,255,.5)}
/* intl-tel-input fix */
/* Country Dropdown Text Fix */
.iti__country-list{
    background:#fff !important;
}

.iti__country{
    color:#222 !important;
    font-size:15px !important;
}

.iti__country-name{
    color:#222 !important;
}

.iti__dial-code{
    color:#666 !important;
}

.iti__country.iti__highlight{
    background:#f5f5f5 !important;
    color:#000 !important;
}

.iti__search-input{
    color:#222 !important;
    background:#fff !important;
}
.iti{
    width:100% !important;
}

.iti input{
    width:100% !important;
}

.form-floating-lux.dark .iti{
    width:100% !important;
}
.glass-form,
.form-floating-lux{
    overflow:visible !important;
}
/* ===== Image Frame ===== */
.img-frame{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lux)}
.img-frame img{transition:transform .8s ease;width:100%;height:100%;object-fit:cover}
.img-frame:hover img{transform:scale(1.05)}
.img-frame.gold-border{border:2px solid var(--gold);padding:8px;background:#fff}
.img-frame.gold-border img{border-radius:12px}
/* ===== Highlight Cards ===== */
.highlight-card{
  background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.01));
  border:1px solid rgba(200,169,107,.2);
  border-radius:18px;padding:30px 18px;text-align:center;color:#fff;
  position:relative;overflow:hidden;transition:.4s;height:100%;
}
.highlight-card::before{content:"";position:absolute;inset:0;background:var(--grad-gold);opacity:0;transition:.4s;z-index:0}
.highlight-card > *{position:relative;z-index:1}
.highlight-card:hover{transform:translateY(-8px);border-color:var(--gold);box-shadow:0 20px 50px rgba(200,169,107,.25)}
.highlight-card i{font-size:2.4rem;color:var(--gold);margin-bottom:14px;transition:.4s}
.highlight-card:hover i{color:#fff;transform:scale(1.1)}
.highlight-card h4{font-size:1.2rem;margin-bottom:4px;color:#fff}
.highlight-card p{font-size:.82rem;color:rgba(255,255,255,.7);margin:0;letter-spacing:1px;text-transform:uppercase}
/* ===== Pricing Cards ===== */
.pricing-card{
  background:#fff;border-radius:22px;padding:38px 30px;text-align:center;
  border:1px solid #eee;transition:.4s;position:relative;height:auto;
  box-shadow:0 10px 30px rgba(0,0,0,.04);overflow:hidden;
}
.pricing-card::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(200,169,107,.08),transparent);transition:.6s}
.pricing-card:hover::before{left:100%}
.pricing-card:hover{transform:translateY(-10px);border-color:var(--gold);box-shadow:0 30px 60px rgba(200,169,107,.2)}
.pricing-card.featured{background:#5f6864;color:#fff;transform:scale(1.04);border:none}
.pricing-card.featured:hover{transform:scale(1.04) translateY(-10px)}
.featured-tag{position:absolute;top:18px;right:-52px;background:var(--grad-gold);color:#fff;padding:6px 40px;font-size:.4rem;letter-spacing:2px;transform:rotate(45deg)}
.pricing-card h4{color:var(--primary);margin-bottom:6px}
.pricing-card.featured h4{color:#fff}
.pricing-card .area{color:#888;font-size:.85rem;margin-bottom:18px;letter-spacing:1px;text-transform:uppercase}
.pricing-card.featured .area{color:rgba(255,255,255,.7)}
.pricing-card .price{color:var(--gold);margin:14px 0 18px;font-weight:700}
.pricing-card .price span{font-size:1rem}
.pricing-card ul{list-style:none;padding:0;margin:0 0 24px;text-align:left}
.pricing-card ul li{padding:8px 0;font-size:.9rem;color:#555;border-bottom:1px dashed #eee}
.pricing-card.featured ul li{color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.1)}
.pricing-card ul i{color:var(--gold);margin-right:10px}
/* ===== Floor Cards ===== */
.floor-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lux);transition:.4s;height:100%}
.floor-card:hover{transform:translateY(-6px)}
.floor-card img{height:240px;object-fit:cover;transition:transform .6s;width:100%}
.floor-card:hover img{transform:scale(1.08)}
.floor-body{padding:22px;text-align:center}
.floor-body h5{color:var(--primary);margin-bottom:14px;font-family:'Playfair Display',serif}
/* ===== Amenity Cards ===== */
.amenity-card{
  background:var(--ivory);border-radius:16px;padding:30px 14px;text-align:center;
  transition:.4s;border:1px solid transparent;height:100%;
}
.amenity-card:hover{background:#fff;border-color:var(--gold);transform:translateY(-6px);box-shadow:0 20px 40px rgba(200,169,107,.15)}
.amenity-card i{font-size:2.2rem;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:14px;transition:.4s}
.amenity-card:hover i{transform:scale(1.15) rotate(-5deg)}
.amenity-card h5{font-size:.92rem;color:var(--primary);margin:0;font-family:'Poppins',sans-serif;font-weight:600;letter-spacing:.5px}
/* ===== Masonry Gallery ===== */
.masonry-gallery{column-count:3;column-gap:16px}
@media(max-width:768px){.masonry-gallery{column-count:2}}
@media(max-width:480px){.masonry-gallery{column-count:1}}
.masonry-gallery a{display:block;margin-bottom:16px;border-radius:14px;overflow:hidden;break-inside:avoid;position:relative;cursor:zoom-in}
.masonry-gallery img{transition:transform .6s;width:100%}
.masonry-gallery a:hover img{transform:scale(1.08)}
.masonry-gallery a::after{content:"\f00e";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(11,31,58,.6);color:var(--gold);font-size:2rem;opacity:0;transition:.4s}
.masonry-gallery a:hover::after{opacity:1}
/* ===== Location ===== */
.map-frame{border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lux);border:2px solid var(--gold);padding:6px;background:#fff}
.map-frame iframe{width:100%;height:450px;border:0;border-radius:12px;display:block}
.loc-list{list-style:none;padding:0;margin:0 0 24px}
.loc-list li{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px dashed #e5e5e5}
.loc-list li:last-child{border:none}
.loc-list i{width:46px;height:46px;background:var(--grad-gold);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;box-shadow:var(--shadow-gold)}
.loc-list h5{margin:0 0 2px;color:var(--primary);font-size:1rem;font-family:'Poppins',sans-serif;font-weight:600}
.loc-list p{margin:0;color:#777;font-size:.85rem}
/* ===== Site Visit ===== */
.site-visit-section{background:linear-gradient(135deg,#0B1F3A,#0a1830);position:relative;overflow:hidden}
.site-visit-section::before{content:"";position:absolute;inset:0;background:#123c32}
/* ===== Stats ===== */
.stat-box{padding:30px 10px}
.stat-box .counter{font-size:3rem;color:var(--gold);margin-bottom:6px;font-weight:800}
.stat-box p{color:rgba(255,255,255,.8);letter-spacing:2px;font-size:.78rem;text-transform:uppercase;margin:0}
/* ===== Footer ===== */
.luxury-footer{background:#123c32;color:#fff;padding:0px 0 0px}
.luxury-footer h6{color:var(--gold);font-family:'Playfair Display',serif;margin-bottom:18px;letter-spacing:2px;font-size:1rem}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:8px}
.footer-links a{color:rgba(255,255,255,.7);font-size:.88rem;transition:.3s}
.footer-links a:hover{color:var(--gold);padding-left:5px}
.luxury-footer hr{border-color:rgba(255,255,255,.1);margin:20px 0 20px}
.disclaimer{color:rgba(255,255,255,.5);font-size:.72rem;margin-bottom:15px;line-height:1.6}
/* ===== Mobile Sticky Bar ===== */
.mobile-bar{position:fixed;bottom:0;left:0;right:0;background:rgba(11,31,58,.98);backdrop-filter:blur(20px);display:flex;z-index:1040;border-top:1px solid rgba(200,169,107,.3);box-shadow:0 -5px 30px rgba(0,0,0,.3)}
.mobile-bar a{flex:1;padding:12px 4px;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.7rem;letter-spacing:1px;border-right:1px solid rgba(255,255,255,.05);transition:.3s}
.mobile-bar a:last-child{border:none}
.mobile-bar a i{font-size:1.2rem;color:var(--gold)}
.mobile-bar a.wa i{color:#25D366}
.mobile-bar a.enq{background:var(--grad-gold)}
.mobile-bar a.enq i{color:#fff}
@media(max-width:991px){body{padding-bottom:60px}}
/* ===== Modal ===== */
.lux-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}
.lux-modal.show{display:flex;animation:fadeIn .4s}
.lux-modal-overlay{position:absolute;inset:0;background:rgba(11,31,58,.85);backdrop-filter:blur(8px)}
.lux-modal-box{position:relative;background:#fff;border-radius:22px;max-width:880px;width:100%;max-height:92vh;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);animation:slideUp .5s;border:1px solid rgba(200,169,107,.3)}
.lux-close{position:absolute;top:12px;right:14px;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;border:none;font-size:1.5rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:.3s}
.lux-close:hover{background:var(--gold);transform:rotate(90deg)}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}
/* ===== Success Toast ===== */
.success-toast{position:fixed;top:30px;right:30px;background:#fff;border-radius:14px;padding:18px 22px;box-shadow:0 20px 50px rgba(0,0,0,.2);display:none;align-items:center;gap:14px;z-index:9999;max-width:360px;border-left:4px solid #28a745;animation:slideInRight .5s}
.success-toast.show{display:flex}
.success-toast i{font-size:2rem;color:#28a745}
.success-toast h5{margin:0 0 2px;color:var(--primary);font-size:1rem}
.success-toast p{margin:0;font-size:.82rem;color:#666}
@keyframes slideInRight{from{transform:translateX(120%);opacity:0}to{transform:translateX(0);opacity:1}}
@media(max-width:576px){.success-toast{top:20px;right:10px;left:10px;max-width:none}}
/* ===== Responsive Tweaks ===== */
@media(max-width:768px){
  .project-card{padding:28px 22px}
  .glass-form{padding:10px 22px}
  .price-value{font-size:1.2rem}
  .hero-section{padding:100px 0 60px}
  .pricing-card.featured{transform:none}
  .pricing-card.featured:hover{transform:translateY(-10px)}
}






/* ===========================
   PROJECT HIGHLIGHTS LIST
=========================== */

.highlight-list-item{
    display:flex;
    align-items:flex-start;
    gap:18px;
    margin-bottom:35px;
    padding:14px 18px;
    border-radius:14px;
    transition:all .35s ease;
    cursor:pointer;
}

.highlight-list-item i{
    color:var(--gold);
    font-size:22px;
    margin-top:6px;
    flex-shrink:0;
    transition:all .35s ease;
}

.highlight-list-item span{
    font-family:'Montserrat',sans-serif;
    font-size:17px;
    font-weight:600;
    color:#fff;
    line-height:1.6;
    transition:all .35s ease;
}

/* Hover Effect */

.highlight-list-item:hover{
    transform:translateX(12px);
    background:rgba(255,255,255,0.05);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.highlight-list-item:hover span{
    color:var(--gold);
}

.highlight-list-item:hover i{
    transform:scale(1.2) rotate(-10deg);
    color:#fff;
}

/* Active Feel */

.highlight-list-item:active{
    transform:translateX(8px) scale(.98);
}

/* Responsive */

@media(max-width:991px){

    .highlight-list-item{
        /* margin-bottom:25px; */
        padding:10px 12px;
    }

    .highlight-list-item span{
        font-size:20px;
    }

}

@media(max-width:767px){

    .highlight-list-item{
        gap:12px;
        margin-bottom:-6px;
    }

    .highlight-list-item i{
        font-size:18px;
        margin-top:4px;
    }

    .highlight-list-item span{
        font-size:11px;
        line-height:1.5;
    }

}




/* ==================== FAQ SECTION ==================== */

.faq-section {
    position: relative;
    padding: 100px 20px 110px;
    background: #ffffff;
    overflow: hidden;
}

/* Subtle luxury glow */
.faq-section::before {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    top: 50%;
    left: -280px;
    transform: translateY(-50%);
    background: rgba(198, 163, 92, 0.07);
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}

.faq-section::after {
    content: "";
    position: absolute;
    width: 400px;
    height: 400px;
    bottom: -250px;
    right: -200px;
    background: rgba(15, 39, 70, 0.06);
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}

.faq-container {
    position: relative;
    z-index: 2;
    max-width: 1000px;
    margin: 0 auto;
}

/* ==================== FAQ HEADING ==================== */

.faq-heading {
    text-align: center;
    margin-bottom: 55px;
}

.faq-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    color: #96712d;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 5px;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.faq-label span {
    display: block;
    width: 38px;
    height: 1px;
    background: #c6a35c;
}

.faq-heading h2 {
    margin: 0;
    color: #0d2747;
    font-size: 48px;
    line-height: 1.15;
    font-weight: 700;
}

.faq-heading h2 span {
    color: #c6a35c;
}

.faq-heading p {
    max-width: 650px;
    margin: 18px auto 0;
    color: #777777;
    font-size: 15px;
    line-height: 1.8;
}

/* ==================== FAQ LIST ==================== */

.faq-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.faq-item {
    position: relative;
    background: #ffffff;
    border: 1px solid #e7e1d5;
    border-radius: 12px;
    overflow: hidden;
    transition:
        border-color 0.35s ease,
        box-shadow 0.35s ease,
        transform 0.35s ease;
}

.faq-item:hover {
    border-color: #c6a35c;
    box-shadow: 0 12px 35px rgba(15, 39, 70, 0.08);
    transform: translateY(-2px);
}

.faq-item.active {
    border-color: #c6a35c;
    box-shadow: 0 15px 40px rgba(15, 39, 70, 0.09);
}

/* ==================== QUESTION ==================== */

.faq-question {
    width: 100%;
    min-height: 72px;
    padding: 20px 25px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    border: none;
    outline: none;
    background: transparent;

    color: #102b4d;
    font-family: inherit;
    font-size: 16px;
    font-weight: 700;
    text-align: left;

    cursor: pointer;
}

.faq-question span:first-child {
    transition: color 0.3s ease;
}

.faq-item.active .faq-question span:first-child {
    color: #a57d35;
}

/* ==================== PLUS ICON ==================== */

.faq-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    border: 1px solid #c6a35c;

    color: #a17a32;
    font-size: 23px;
    font-weight: 400;
    line-height: 1;

    transition:
        transform 0.35s ease,
        background 0.35s ease,
        color 0.35s ease;
}

.faq-item.active .faq-icon {
    background: #c6a35c;
    color: #ffffff;
    transform: rotate(45deg);
}

/* ==================== ANSWER ==================== */

.faq-answer {
    display: grid;
    grid-template-rows: 0fr;

    transition: grid-template-rows 0.4s ease;
}

.faq-answer p {
    min-height: 0;
    overflow: hidden;

    margin: 0;
    padding: 0 25px;

    color: #6d6d6d;
    font-size: 14px;
    line-height: 1.8;

    opacity: 0;

    transition:
        opacity 0.3s ease,
        padding 0.4s ease;
}

.faq-item.active .faq-answer {
    grid-template-rows: 1fr;
}

.faq-item.active .faq-answer p {
    padding: 0 25px 24px;
    opacity: 1;
}

/* ==================== TABLET ==================== */

@media (max-width: 991px) {

    .faq-section {
        padding: 80px 20px 90px;
    }

    .faq-heading {
        margin-bottom: 45px;
    }

    .faq-heading h2 {
        font-size: 40px;
    }

    .faq-container {
        max-width: 850px;
    }
}

/* ==================== MOBILE ==================== */

@media (max-width: 767px) {

    .faq-section {
        padding: 65px 15px 75px;
    }

    .faq-heading {
        margin-bottom: 35px;
    }

    .faq-label {
        font-size: 11px;
        letter-spacing: 4px;
        gap: 10px;
    }

    .faq-label span {
        width: 28px;
    }

    .faq-heading h2 {
        font-size: 32px;
        line-height: 1.2;
    }

    .faq-heading p {
        margin-top: 14px;
        font-size: 13px;
        line-height: 1.7;
    }

    .faq-list {
        gap: 10px;
    }

    .faq-item {
        border-radius: 9px;
    }

    .faq-question {
        min-height: 64px;
        padding: 17px 15px;
        gap: 12px;
        font-size: 14px;
        line-height: 1.45;
    }

    .faq-icon {
        flex: 0 0 30px;
        width: 30px;
        height: 30px;
        font-size: 20px;
    }

    .faq-item.active .faq-answer p {
        padding: 0 15px 20px;
        font-size: 13px;
        line-height: 1.75;
    }
}

/* ==================== SMALL MOBILE ==================== */

@media (max-width: 380px) {

    .faq-section {
        padding: 55px 12px 65px;
    }

    .faq-heading h2 {
        font-size: 28px;
    }

    .faq-question {
        padding: 15px 13px;
        font-size: 13px;
    }

    .faq-icon {
        flex: 0 0 28px;
        width: 28px;
        height: 28px;
        font-size: 18px;
    }

    .faq-item.active .faq-answer p {
        padding-left: 13px;
        padding-right: 13px;
        font-size: 12.5px;
    }
}




/* =========================================
   SITE PLAN SECTION
========================================= */

.site-plan-section {
    width: 100%;
    background: #f7f4ee;
    padding: 10px 20px 100px;
    overflow: hidden;
}

.site-plan-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================
   HEADING
========================================= */

.site-plan-heading {
    text-align: center;
    margin-bottom: 20px;
}

.site-plan-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 5px;
    color: #8c6b2d;

    margin-bottom: 25px;
}

.site-plan-eyebrow span {
    width: 36px;
    height: 1px;
    background: #b8954b;
    display: inline-block;
}

.site-plan-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(42px, 5vw, 50px);
    line-height: 1.05;
    font-weight: 500;

    color: #071c38;
}

.site-plan-heading h2 strong {
    color: #c6a15a;
    font-weight: 500;
}

.site-plan-heading p {
    max-width: 650px;
    margin: 22px auto 0;

    font-size: 15px;
    line-height: 1.7;
    color: #77736b;
}


/* =========================================
   IMAGE CARD
========================================= */

.site-plan-card {
    width: 100%;
}

.site-plan-image-wrap {
    position: relative;

    width: 100%;
    height: 400px;

    overflow: hidden;

    border-radius: 26px;

    background: #ddd;

    box-shadow:
        0 20px 60px rgba(27, 30, 35, 0.14);

    cursor: pointer;
}


/* =========================================
   BLURRED IMAGE
========================================= */

.site-plan-image {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    filter: blur(7px);

    transform: scale(1.06);

    transition:
        transform 0.8s ease,
        filter 0.8s ease;
}


/* =========================================
   OVERLAY
========================================= */

.site-plan-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(8, 25, 45, 0.08),
            rgba(8, 25, 45, 0.22)
        );

    z-index: 2;

    pointer-events: none;
}


/* =========================================
   HOVER
========================================= */

.site-plan-image-wrap:hover .site-plan-image {
    transform: scale(1.1);
}

.site-plan-image-wrap:hover .site-plan-btn {
    transform: translate(-50%, -50%) translateY(-4px);
}


/* =========================================
   VIEW SITE PLAN BUTTON
========================================= */

.site-plan-btn {
    position: absolute;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    z-index: 5;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 20px;

    min-width: 210px;
    height: 60px;

    padding: 0 25px;

    border: 1px solid rgba(255,255,255,0.45);
    border-radius: 12px;

    background: #d8a928;

    color: #111;

    font-size: 15px;
    font-weight: 700;

    cursor: pointer;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.18);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        background 0.4s ease;
}

.site-plan-btn:hover {
    background: #e2b638;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.25);
}

.site-plan-arrow {
    font-size: 22px;
    line-height: 1;

    transition:
        transform 0.3s ease;
}

.site-plan-btn:hover .site-plan-arrow {
    transform: translateX(6px);
}


/* =========================================
   POPUP
========================================= */

.site-plan-modal {
    position: fixed;

    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 30px;

    background: rgba(5, 12, 22, 0.92);

    opacity: 0;
    visibility: hidden;

    z-index: 99999;

    transition:
        opacity 0.35s ease,
        visibility 0.35s ease;
}

.site-plan-modal.active {
    opacity: 1;
    visibility: visible;
}


/* =========================================
   POPUP CONTENT
========================================= */

.site-plan-modal-content {
    position: relative;

    width: min(1200px, 95vw);
    max-height: 90vh;

    display: flex;
    align-items: center;
    justify-content: center;

    transform: scale(0.92);

    transition:
        transform 0.4s ease;
}

.site-plan-modal.active .site-plan-modal-content {
    transform: scale(1);
}


/* =========================================
   FULL IMAGE
========================================= */

.site-plan-full-image {
    display: block;

    max-width: 100%;
    max-height: 88vh;

    width: auto;
    height: auto;

    object-fit: contain;

    border-radius: 12px;

    box-shadow:
        0 20px 80px rgba(0,0,0,0.4);
}


/* =========================================
   CLOSE BUTTON
========================================= */

.site-plan-close {
    position: absolute;

    top: -18px;
    right: -18px;

    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,0.35);
    border-radius: 50%;

    background: #111c2c;

    color: #fff;

    font-size: 28px;
    font-weight: 300;

    line-height: 1;

    cursor: pointer;

    z-index: 10;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.site-plan-close:hover {
    background: #c6a15a;
    color: #111;

    transform: rotate(90deg);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .site-plan-section {
        padding: 75px 20px 80px;
    }

    .site-plan-heading {
        margin-bottom: 45px;
    }

    .site-plan-image-wrap {
        height: 480px;
        border-radius: 22px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .site-plan-section {
        padding: 60px 15px 65px;
    }


    .site-plan-heading {
        margin-bottom: 32px;
    }


    .site-plan-eyebrow {
        gap: 10px;

        font-size: 10px;
        letter-spacing: 3.5px;

        margin-bottom: 17px;
    }

    .site-plan-eyebrow span {
        width: 25px;
    }


    .site-plan-heading h2 {
        font-size: 38px;
        line-height: 1.08;
    }


    .site-plan-heading p {
        font-size: 13px;
        line-height: 1.6;

        max-width: 330px;

        margin-top: 16px;
    }


    /* Image */

    .site-plan-image-wrap {
        height: 360px;

        border-radius: 18px;
    }


    .site-plan-image {
        filter: blur(6px);

        transform: scale(1.08);
    }


    /* Button */

    .site-plan-btn {
        min-width: 175px;
        height: 52px;

        padding: 0 18px;

        gap: 13px;

        border-radius: 9px;

        font-size: 13px;
    }

    .site-plan-arrow {
        font-size: 19px;
    }


    /* Popup */

    .site-plan-modal {
        padding: 15px;
    }

    .site-plan-modal-content {
        width: 100%;
        max-height: 88vh;
    }

    .site-plan-full-image {
        max-width: 100%;
        max-height: 82vh;

        border-radius: 8px;
    }


    .site-plan-close {
        top: -12px;
        right: -5px;

        width: 40px;
        height: 40px;

        font-size: 24px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 400px) {

    .site-plan-section {
        padding: 10px 12px 55px;
    }

    .site-plan-heading h2 {
        font-size: 33px;
    }

    .site-plan-heading p {
        font-size: 12px;
    }

    .site-plan-image-wrap {
        height: 320px;
        border-radius: 16px;
    }

    .site-plan-btn {
        min-width: 165px;
        height: 49px;

        font-size: 12px;
    }

}



/* =========================
   MOBILE RESPONSIVE
========================= */

@media (max-width: 767px) {

  .hero-section {
    min-height: auto;
  }

  .hero-content {
    padding: 20px 15px 10px;
  }

  .project-card {
    width: 100%;
    max-width: 100%;
    margin: 20px auto;
    padding: 24px 20px;
  }

  .project-title {
    font-size: 2rem;
    line-height: 1.15;
  }

  .project-builder {
    font-size: 14px;
  }

  .project-card ul {
    padding-left: 0;
  }

  .project-card li {
    font-size: 14px;
  }

  .price-box {
    padding: 15px 0;
  }

  .price {
    font-size: 32px;
  }

  .hero-form,
  .register-form {
    width: 100%;
    margin-top: 20px;
  }

}

/* EXTRA SMALL MOBILE */
@media (max-width: 360px) {

  .project-card {
    padding: 10px 16px;
    margin-top: 0px;
    margin-bottom: 0px;
  }

  .project-title {
    font-size: 20px;
  }

  .project-card li {
    font-size: 13px;
  }

  .price {
    font-size: 28px;
  }

}



@media (max-width: 767px){
  .btn-luxury{
    font-size: 0.6rem;
  }
}


@media (max-width:767px){
  .form-title{
    font-size:1.3rem;
  }
}




@media (max-width:767px){
  .glass-form input,
  .glass-form textarea{
    height:32px;
    padding:10px 14px;
    font-size:0.82rem;
    text-align:left;
}

.glass-form textarea{
    height:38px;
    padding-top:14px;
    resize:none;
}

  .glass-form input::placeholder,
  .glass-form textarea::placeholder{
      font-size:0.82rem;
      /* font-size: 10px; */
  }
}

@media (max-width:767px){
  .form-floating-lux label{
    top:6px;
    left:14px;
    font-size:.75rem;
  }
}


@media (max-width:767px){
  .consent{
    font-size:.58rem;
    gap:6px;
    margin:5px 0 10px;
    align-items:flex-start;
    line-height:1.3;
  }

  .consent input[type="checkbox"]{
    width:12px;
    height:12px;
    margin-top:2px;
    flex-shrink:0;
  }
}


@media (max-width:767px){
  .section-pad{
    padding:30px 15px;
  }

  .section-title{
    font-size:20px;
    margin-bottom:12px;
    line-height:1.15;
  }
}


@media (max-width: 767px) {
    .lead-text {
        color: #555;
        font-size: 13px;
        line-height: 1.6;
        margin-bottom: 18px;
        text-align: justify;
    }
}

@media (max-width: 767px) {
    #highlights .text-center {
        margin-bottom: -28px !important;
    }

    #highlights .text-center h2 {
        margin-bottom: 10px !important;
    }
}


@media (max-width: 767px) {
    .eyebrow.light {
        font-size: 0.6rem;
        letter-spacing: 2.5px;
        margin-bottom: 20px;
        padding-left: 45px;
    }
}







/* ================================
   AMENITIES - MOBILE RESPONSIVE
================================ */

@media (max-width: 767px) {

    #amenities {
        width: 100% !important;
        padding: 30px 15px 10px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    #amenities .container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    /* Heading area */
    #amenities .text-center {
        padding: 0 !important;
        margin-bottom: 25px !important;
    }

    #amenities .text-center h2,
    #amenities .text-center h3,
    #amenities .text-center h4 {
        font-size: 25px !important;
        line-height: 1.25 !important;
        margin-bottom: 12px !important;
    }

    /* Intro paragraph */
    #amenities .text-center p {
        font-size: 10px !important;
        line-height: 1.45 !important;
        margin: 0 auto !important;
        max-width: 320px !important;
    }

    /* Amenity grid */
    #amenities .row.g-3,
    #amenities .row.g-md-4 {
        margin-left: -7px !important;
        margin-right: -7px !important;
    }

    #amenities .row > div {
        padding-left: 7px !important;
        padding-right: 7px !important;
        margin-bottom: 14px !important;
    }

    /* Amenity card */
    #amenities .amenity-card {
        width: 100% !important;
        height: 100% !important;
        min-height: 60px !important;
        padding: 4px 10px !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;

        text-align: center !important;
        box-sizing: border-box !important;
    }

    /* Icon */
    #amenities .amenity-card img,
    #amenities .amenity-card i,
    #amenities .amenity-card svg {
        margin-bottom: 10px !important;
        max-width: 42px !important;
        height: auto !important;
        font-size: 20px;
    }

    /* Card text */
    #amenities .amenity-card p,
    #amenities .amenity-card h5,
    #amenities .amenity-card h6 {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 10px !important;
        line-height: 1.25 !important;
    }
}






/* =========================
   GALLERY - MOBILE 2 COLUMN
========================= */
@media (max-width: 767px) {

    #gallery .container {
        width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    #gallery .row {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        margin: 0 !important;
    }

    #gallery .row > div {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    #gallery img {
        width: 50% !important;
        height: 98px !important;
        
        object-fit: cover !important;
        display: block !important;
        border-radius: 12px !important;
    }

}






@media (max-width: 767px) {

    #gallery .masonry-gallery {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #gallery .masonry-gallery a {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #gallery .masonry-gallery img {
        width: 100% !important;
        height: 90px !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 10px !important;
        margin: 0 !important;
    }

}

/* =========================
   LOCATION - MOBILE
========================= */
@media (max-width: 767px) {

    #location {
        padding: 30px 12px !important;
        overflow: hidden !important;
    }

    #location .container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    #location .text-center {
        margin-bottom: 15px !important;
    }

    #location .eyebrow {
        margin-bottom: 8px !important;
    }

    #location .section-title {
        font-size: 20px !important;
        line-height: 1.25 !important;
        margin-bottom: 10px !important;
    }

    #location .text-center p {
        font-size: 10px !important;
        line-height: 1.5 !important;
        margin: 0 auto 20px !important;
        max-width: 300px !important;
    }

    #location .row {
        margin: 0 !important;
    }

    #location .row > div {
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Map */
    #location iframe {
        width: 100% !important;
        height: 280px !important;
        display: block !important;
        border: 0 !important;
        border-radius: 14px !important;
    }

    /* Agar map kisi wrapper/div ke andar hai */
    #location .map-container,
    #location .location-map {
        width: 100% !important;
        height: 280px !important;
        overflow: hidden !important;
        border-radius: 14px !important;
    }

}





/* ================================
   LOCATION SECTION - MOBILE
================================ */

@media (max-width: 767px) {

    #location {
        padding-top: 35px !important;
        padding-bottom: 25px !important;
        overflow: hidden;
    }

    #location .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Location heading/content */
    #location .text-center {
        margin-bottom: 20px !important;
    }

    #location .text-center p {
        margin-bottom: 0 !important;
        line-height: 1.5 !important;
    }

    /* Row */
    #location .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Map column */
    #location .col-lg-7,
    #location .col-lg-5 {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #location iframe {
        width: 100% !important;
        height: 280px !important;
        display: block !important;
        border-radius: 16px !important;
    }

    /* Location list */
    #location .loc-list {
        padding: 0 !important;
        margin: 18px 0 0 !important;
        list-style: none !important;
    }

    #location .loc-list li {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 10px 0 !important;
        margin: 0 !important;
        min-height: 58px !important;
    }

    #location .loc-list li i {
        flex: 0 0 42px !important;
        width: 42px !important;
        height: 42px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 50% !important;
    }

    #location .loc-list li h5 {
        margin: 0 0 3px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    #location .loc-list li p {
        margin: 0 !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }

    /* Schedule button */
    #location .btn-luxury,
    #location .openModal {
        margin-top: 10px !important;
        width: auto !important;
        max-width: 100% !important;
    }
}



/* =====================================
   BUILDER SECTION - MOBILE
===================================== */

@media (max-width: 767px) {

    #builder {
        padding-top: 30px !important;
        padding-bottom: 25px !important;
        overflow: hidden !important;
    }

    #builder .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Builder description */
    #builder .text-center {
        margin-bottom: 20px !important;
    }

    #builder .text-center p {
        font-size: 14px !important;
        line-height: 1.5 !important;
        margin-bottom: 0 !important;
    }

    /* Stats row */
    #builder .row.g-4 {
        margin-left: 0 !important;
        margin-right: 0 !important;
        row-gap: 35px !important;
    }

    #builder .row.g-4 > div {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    /* Stat numbers */
    #builder .stat-box h3,
    #builder .stat-box h2 {
        font-size: 34px !important;
        line-height: 1 !important;
        margin-bottom: 8px !important;
    }

    /* Stat labels */
    #builder .stat-box p {
        font-size: 11px !important;
        line-height: 1.35 !important;
        margin: 0 !important;
        letter-spacing: 1.5px !important;
    }

    /* Make stats 2 x 2 */
    #builder .col-6 {
        width: 50% !important;
    }

}




/* =====================================
   BUILDER STATS - MOBILE RESPONSIVE
===================================== */

@media (max-width: 767px) {

    #builder .row.g-4 {
        margin-left: 0 !important;
        margin-right: 0 !important;
        row-gap: 20px !important;
    }

    #builder .row.g-4 > div {
        width: 50% !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    /* Stat Box */
    #builder .stat-box {
        padding: 10px 5px !important;
        margin: 0 !important;
        min-height: 90px !important;
        height: auto !important;
    }

    /* Number */
    #builder .stat-box h2.counter {
        font-size: 34px !important;
        line-height: 1 !important;
        margin: 0 0 6px !important;
    }

    /* Text */
    #builder .stat-box p {
        font-size: 10px !important;
        line-height: 1.3 !important;
        margin: 0 !important;
        letter-spacing: 1px !important;
    }

}




/* =====================================================
   FLOOR PLANS - COMPLETE MOBILE RESPONSIVE
   ===================================================== */

@media (max-width: 767px) {

    /* ---------- SECTION ---------- */

    #floorplans {
        padding: 35px 12px 10px !important;
        overflow: hidden !important;
    }

    #floorplans .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        overflow: hidden !important;
    }


    /* ---------- SECTION HEADING ---------- */

    #floorplans .text-center {
        margin-bottom: 20px !important;
    }

    #floorplans .eyebrow {
        font-size: 10px !important;
        letter-spacing: 3px !important;
        margin-bottom: 8px !important;
    }

    #floorplans .section-title {
        font-size: 24px !important;
        line-height: 1.15 !important;
        margin-bottom: 8px !important;
    }

    #floorplans .text-center p {
        font-size: 10px !important;
        line-height: 1.45 !important;
        margin: 0 auto !important;
        max-width: 300px !important;
    }


    /* ---------- CARDS ROW ---------- */

    #floorplans .row {
        display: flex !important;
        flex-wrap: wrap !important;

        --bs-gutter-x: 10px !important;
        --bs-gutter-y: 12px !important;

        margin-left: -5px !important;
        margin-right: -5px !important;
    }


    /* ---------- EACH COLUMN = 50% ---------- */

    #floorplans .row > [class*="col-"] {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;

        padding-left: 5px !important;
        padding-right: 5px !important;
        margin-bottom: 12px !important;
    }


    /* ---------- FLOOR CARD ---------- */

    #floorplans .floor-card {
        width: 100% !important;
        height: auto !important;

        margin: 0 !important;

        border-radius: 14px !important;
        overflow: hidden !important;

        background: #fff !important;

        box-shadow: 0 5px 18px rgba(0,0,0,0.08) !important;
    }


    /* ---------- IMAGE ---------- */

    #floorplans .floor-card img {
        width: 100% !important;
        height: 120px !important;

        object-fit: cover !important;
        display: block !important;

        border-radius: 0 !important;
    }


    /* ---------- CARD BODY ---------- */

    #floorplans .floor-body {
        width: 100% !important;

        padding: 10px 5px 12px !important;

        text-align: center !important;
    }


    /* ---------- FLOOR PLAN TITLE ---------- */

    #floorplans .floor-body h5 {
        font-size: 14px !important;
        line-height: 1.2 !important;

        margin: 0 0 9px !important;

        font-weight: 700 !important;
    }

    #floorplans .floor-body h3,
    #floorplans .floor-body h4 {
        font-size: 14px !important;
        line-height: 1.2 !important;

        margin: 0 0 9px !important;
    }


    /* ---------- DOWNLOAD BUTTON ---------- */

    #floorplans .floor-body .btn,
    #floorplans .floor-body button,
    #floorplans .floor-body a.btn {
        display: inline-flex !important;

        align-items: center !important;
        justify-content: center !important;

        gap: 5px !important;

        min-width: 0 !important;

        width: auto !important;
        max-width: 100% !important;

        padding: 7px 10px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;

        border-radius: 30px !important;
    }


    /* ---------- BUTTON ICON ---------- */

    #floorplans .floor-body .btn i,
    #floorplans .floor-body button i {
        font-size: 10px !important;
    }

}


/* =====================================================
   SMALL MOBILE - 320px / 360px
   ===================================================== */

@media (max-width: 360px) {

    #floorplans {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    #floorplans .container {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    #floorplans .floor-card img {
        height: 105px !important;
    }

    #floorplans .floor-body {
        padding: 9px 4px 10px !important;
    }

    #floorplans .floor-body h5,
    #floorplans .floor-body h3,
    #floorplans .floor-body h4 {
        font-size: 13px !important;
    }

    #floorplans .floor-body .btn,
    #floorplans .floor-body button {
        font-size: 9px !important;
        padding: 6px 8px !important;
    }

}
@media (max-width: 767px) {

    /* 3rd Floor Plan Card - Center */
    #floorplans .row > [class*="col-"]:nth-child(3) {
        margin-left: auto !important;
        margin-right: auto !important;
    }

}




@media (max-width: 767px) {

    #pricing .text-center {
        text-align: center !important;
    }

    #pricing .text-center h2,
    #pricing .text-center .section-title {
        text-align: center !important;
    }

    #pricing .text-center p {
        text-align: center !important;
        max-width: 310px;
        margin-left: auto !important;
        margin-right: auto !important;
                font-size: 10px;
    }

}
@media (max-width: 767px) {
    .loader-brand {
        width: 100% !important;
        text-align: center !important;
        margin: 20px 0 0 !important;
        padding: 0 20px !important;
        box-sizing: border-box;
    }
}