/*==================================================================
TONINO LAMBORGHINI RESIDENCES — MAIN STYLESHEET
File: assets/css/style.css
--------------------------------------------------------------------
Load order on the page: style.css -> responsive.css -> popup.css
This file holds base/global rules and the desktop-first design for
every section. Breakpoint-specific overrides live in responsive.css
so each file has one clear job (organized for SEO/AEO/GEO work and
easy maintenance).

TABLE OF CONTENTS
  1.  Header / Navbar
  2.  Hero Section (title, stats, lead form, trust bar)
  3.  Project Overview
  4.  The Project (wellness & amenities intro)
  5.  Clubhouse Amenities (slider cards)
  6.  Price List
  7.  Floor Plan Cards
  8.  Gallery
  9.  Luxury Ecosystem Banner
  10. Location Advantages
  11. About the Brand (editorial section)
  12. Footer + Contact Form
  13. Micro-animations (pulse, hover, shine)
  14. Base / Global Styles (body, links, buttons, footer basics)
==================================================================*/


/*==================================================
            PREMIUM LUXURY HEADER
==================================================*/

.navbar{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:78px;

    background:#050505;

    border-bottom:1px solid rgba(255,255,255,.08);

    z-index:9999;

    transition:.4s;

}

.nav-container{

    max-width:1450px;

    height:78px;

    margin:auto;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 25px;

}

/* Logo */

.navbar-brand{

    display:flex;

    align-items:center;

    padding:0;

    margin:0;

}

.logo{

    height:52px;

    width:auto;

}

/* Menu */

.navbar-nav{

    display:flex;

    align-items:center;

    gap:26px;

    margin-left:auto;

    margin-right:30px;

}

.navbar-nav li{

    list-style:none;

}

.navbar-nav a{

    color:#fff;

    font-size:15px;

    font-weight:500;

    letter-spacing:.3px;

    text-decoration:none;

    position:relative;

    transition:.3s;

}

.navbar-nav a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:#dc251c;

    transition:.3s;

}

.navbar-nav a:hover{

    color:#dc251c;

}

.navbar-nav a:hover::after{

    width:100%;

}

/* Button */

.btn-gold{

    height:46px;

    padding:0 26px;

    border-radius:50px;

    background:#dc251c;

    color:#fff;

    font-size:15px;

    font-weight:600;

    border:none;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.3s;

    white-space:nowrap;

}

.btn-gold:hover{

    background:#b91f17;

    transform:translateY(-2px);

}


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

/************** Large Desktop **************/
@media (max-width:1400px){

.hero-title{
    font-size:68px;
}

.hero-residence{
    font-size:40px;
}

.hero-subtitle{
    font-size:24px;
}

.hero-price span{
    font-size:34px;
}

.hero-content{
    padding-right:40px;
}

}


/************** Laptop **************/
@media (max-width:1200px){

.hero{
    padding-top:120px;
}

.hero-title{
    font-size:58px;
}

.hero-residence{
    font-size:34px;
    letter-spacing:7px;
}

.hero-subtitle{
    font-size:22px;
}

.project-item h4{
    font-size:24px;
}

.lead-form{
    padding:30px;
}

}


/************** Tablet **************/
@media (max-width:991px){

.hero{

    min-height:auto;

    padding:120px 0 40px;

    text-align:center;

}

.hero-content{

    padding-right:0;

    margin-bottom:50px;

}

.hero-title{

    font-size:52px;

}

.hero-residence{

    font-size:30px;

    letter-spacing:5px;

}

.hero-subtitle{

    font-size:22px;

}

.hero-price{

    font-size:20px;

}

.hero-price span{

    display:block;

    font-size:34px;

    margin-top:5px;

}

.hero-divider{

    margin:25px auto;

}

.project-box{

    display:grid;

    grid-template-columns:repeat(2,1fr);

}

.project-item{

    border-right:none;

    border-bottom:1px solid rgba(255,255,255,.08);

}

.project-item:nth-child(2n){

    border-left:1px solid rgba(255,255,255,.08);

}

.project-item:nth-last-child(-n+2){

    border-bottom:none;

}

.hero-buttons{

    justify-content:center;

}

.hero-buttons .btn{

    width:100%;

    max-width:320px;

}

.lead-form{

    max-width:520px;

    margin:auto;

}

}


/************** Mobile **************/
@media (max-width:767px){

.hero{

    padding:105px 0 45px;

}

.hero-title{

    font-size:42px;

}

.hero-residence{

    font-size:24px;

    letter-spacing:4px;

}

.hero-subtitle{

    font-size:19px;

}

.hero-price{

    font-size:18px;

}

.hero-price span{

    font-size:28px;

}

.project-box{

    grid-template-columns:1fr 1fr;

}

.project-item{

    padding:18px 10px;

}

.project-item h4{

    font-size:22px;

}

.project-item p{

    font-size:13px;

}

.hero-buttons{

    gap:12px;

}

.hero-buttons .btn{

    width:100%;

    padding:14px;

}

.lead-form{

    padding:24px;

}

.form-top h3{

    font-size:28px;

}

.input-box input,

.input-box textarea{

    padding:14px 15px 14px 45px;

}

.hero-submit{

    height:50px;

}

}


/************** Small Mobile **************/
@media (max-width:480px){

.hero-title{

    font-size:34px;

    line-height:1.05;

}

.hero-residence{

    font-size:20px;

    letter-spacing:3px;

}

.hero-location{

    font-size:13px;

}

.hero-subtitle{

    font-size:17px;

}

.hero-price span{

    font-size:24px;

}

.project-item{

    padding:15px 8px;

}

.project-item i{

    font-size:20px;

}

.project-item h4{

    font-size:20px;

}

.project-item p{

    font-size:12px;

}

.form-top h3{

    font-size:24px;

}

.form-top p{

    font-size:13px;

}

.hero-check{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin:18px 0 25px;
}

.hero-check input[type="checkbox"]{
    width:18px;
    height:18px;
    margin:4px 0 0;
    flex:0 0 18px;
    accent-color:#dc251c;
}

.hero-check span{
    flex:1;
    color:#e5e5e5;
    font-size:15px;
    line-height:1.6;
}
}
/*==================================================
            PREMIUM HERO SECTION V3
==================================================*/

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:url("../images/banner.jpg") center center/cover no-repeat;
    padding:80px 0 30px;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    linear-gradient(90deg,
    rgba(8,8,8,.88) 0%,
    rgba(8,8,8,.72) 35%,
    rgba(8,8,8,.45) 65%,
    rgba(8,8,8,.25) 100%);
    z-index:1;
}

.hero::after{
    content:"";
    position:absolute;
    inset:0;
    background:
    radial-gradient(circle at left,
    rgba(220,37,28,.18),
    transparent 60%);
    z-index:1;
}

.hero .container{
    position:relative;
    z-index:2;
    max-width:1450px;
}

.hero-content{
    padding-right:60px;
}

.hero-location{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#dc251c;

    font-size:14px;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:2px;

    margin-bottom:18px;

}

.hero-location i{

    font-size:16px;

}

.hero-title{

    font-family:'Cormorant Garamond',serif;

    font-size:86px;

    font-weight:700;

    line-height:.88;

    color:#fff;

    text-transform:uppercase;

    margin:0;

}

.hero-title span{

    display:block;

    color:#fff;

}

.hero-residence{

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

    color:#dc251c;

    font-size:32px;

    font-weight:300;

    letter-spacing:14px;

    margin-top:20px;

    margin-bottom:30px;

}

.hero-subtitle{

    color:#ececec;

    font-size:28px;

    font-weight:300;

    margin-bottom:18px;

}

.hero-price{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:22px;

    color:#ddd;

    margin-bottom:35px;

}

.hero-price span{

    color:#dc251c;

    font-size:42px;

    font-weight:700;

}

.hero-divider{

    width:120px;

    height:3px;

    background:#dc251c;

    border-radius:30px;

    margin-bottom:35px;

}
/*==================================================
PROJECT STATS
==================================================*/

.project-box{

    display:flex;

    align-items:center;

   
    backdrop-filter:blur(18px);

   
    border-radius:18px;

    overflow:hidden;

    margin-bottom:40px;

}

.project-item{

    flex:1;

    text-align:center;

    padding:26px 12px;

    transition:.35s;

    position:relative;

}

.project-item:not(:last-child)::after{

    content:"";

    position:absolute;

    top:25%;

    right:0;

    width:1px;

    height:50%;

    background:rgba(255,255,255,.12);

}

.project-item:hover{

    background:rgba(220,37,28,.10);

}

.project-item i{

    color:#dc251c;

    font-size:24px;

    margin-bottom:12px;

}

.project-item h4{

    color:#fff;

    font-size:34px;

    font-weight:700;

    margin-bottom:6px;

}

.project-item p{

    color:#bbb;

    font-size:14px;

    letter-spacing:.5px;

}
.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.hero-buttons .btn{

    height:54px;

    padding:0 34px;

    border-radius:8px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    font-size:14px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:1px;

}

.hero-buttons i{

    margin-right:8px;

}

.hero-buttons .btn-gold{

    box-shadow:0 15px 35px rgba(220,37,28,.30);

}

.hero-buttons .btn-outline-light{

    border:1px solid rgba(255,255,255,.40);

}

.hero-buttons .btn-outline-light:hover{

    background:#fff;

    color:#111!important;

}
/*=========================================
        PREMIUM LUXURY FORM
==========================================*/

.lead-form{

    position:relative;

    width:100%;

    max-width:460px;

    margin-left:auto;

    padding:40px;

    border-radius:24px;

    background:rgba(12,12,12,.82);

    backdrop-filter:blur(25px);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 25px 60px rgba(0,0,0,.45);

}

.form-top{

    text-align:center;

    margin-bottom:35px;

}

.form-top h3{

    font-size:48px;

    font-weight:700;

    color:#ffffff;

    margin-bottom:8px;

    font-family:'Cormorant Garamond',serif;

    line-height:1;

}

.form-top span{

    display:block;

    color:#dc251c;

    font-size:18px;

    letter-spacing:8px;

    text-transform:uppercase;

    margin-top:12px;

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

}

.form-top p{

    color:#bdbdbd;

    font-size:15px;

    margin-top:18px;

    line-height:28px;

}
/*=========================================
INPUTS
==========================================*/

.input-box{

    position:relative;

    margin-bottom:22px;

}

.input-box i{

    position:absolute;

    left:20px;

    top:50%;

    transform:translateY(-50%);

    color:#dc251c;

    font-size:18px;

    z-index:10;

    pointer-events:none;

}

.input-box textarea+i{

    top:26px;

    transform:none;

}

.input-box input,

.input-box textarea{

    width:100%;

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.10);

    border-radius:12px;

    color:#ffffff;

    padding:18px 20px 18px 58px;

    font-size:15px;

    transition:.35s;

}

.input-box input{

    height:58px;

}

.input-box textarea{

    height:130px;

    resize:none;

}

.input-box input::placeholder,

.input-box textarea::placeholder{

    color:#bcbcbc;

}

.input-box input:focus,

.input-box textarea:focus{

    outline:none;

    border-color:#dc251c;

    box-shadow:0 0 0 4px rgba(220,37,28,.12);

    background:rgba(255,255,255,.08);

}
/*==================================================
        LUXURY HERO TYPOGRAPHY
==================================================*/

.hero-content{

    position:relative;

    z-index:5;

    animation:fadeHero 1.2s ease;

}

@keyframes fadeHero{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* Location */

.hero-location{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:8px 18px;

    border-radius:50px;

    background:rgba(220,37,28,.10);

    border:1px solid rgba(220,37,28,.30);

    color:#dc251c;

    letter-spacing:2px;

    text-transform:uppercase;

    font-size:13px;

    font-weight:700;

    margin-bottom:28px;

}
/*==================================================
TITLE
==================================================*/

.hero-title{

    font-family:'Cormorant Garamond',serif;

    font-size:95px;

    line-height:.85;

    font-weight:700;

    color:#fff;

    text-transform:uppercase;

    margin:0;

    letter-spacing:2px;

}

.hero-title span{

    display:block;

    margin-top:6px;

}

.hero-residence{

    display:block;

    margin-top:22px;

    color:#dc251c;

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

    font-size:26px;

    font-weight:300;

    letter-spacing:18px;

    text-transform:uppercase;

}

.hero-subtitle{

    margin-top:32px;

    font-size:30px;

    color:#efefef;

    font-weight:300;

    max-width:700px;

}

.hero-price{

    margin-top:30px;

    display:flex;

    align-items:center;

    gap:15px;

    color:#bdbdbd;

    font-size:22px;

}

.hero-price span{

    color:#fff;

    font-size:54px;

    font-weight:700;

    font-family:'Cormorant Garamond',serif;

}

.hero-price span::after{

    content:"*";

    color:#dc251c;

}
.hero-divider{

    width:140px;

    height:3px;

    margin:35px 0;

    background:linear-gradient(

        to right,

        #dc251c,

        transparent

    );

    border-radius:30px;

}
/*==================================================
BACKGROUND EFFECT
==================================================*/

.hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        90deg,

        rgba(0,0,0,.88),

        rgba(0,0,0,.68),

        rgba(0,0,0,.35)

    );

}

.hero::after{

    content:"";

    position:absolute;

    width:850px;

    height:850px;

    right:-250px;

    top:-220px;

    border-radius:50%;

    background:

    radial-gradient(

        rgba(220,37,28,.18),

        transparent 70%

    );

}
.project-box{

    margin-top:35px;

    margin-bottom:45px;

}

.project-item{

    transition:.35s;

}

.project-item:hover{

    transform:translateY(-8px);

}

.project-item h4{

    font-size:36px;

    color:#fff;

    margin-top:12px;

}

.project-item p{

    margin-top:5px;

    color:#cfcfcf;

    letter-spacing:.5px;

}
.hero-buttons{

    margin-top:10px;

}

.hero-buttons .btn{

    min-width:220px;

}

.hero-buttons .btn i{

    margin-right:10px;

}

.hero-buttons .btn-gold{

    box-shadow:

    0 15px 35px

    rgba(220,37,28,.28);

}

.hero-buttons .btn-gold:hover{

    transform:translateY(-4px);

}

.hero-buttons .btn-outline-light{

    backdrop-filter:blur(12px);

    background:rgba(255,255,255,.04);

}
.hero-glow{

    position:absolute;

    width:500px;

    height:500px;

    background:

    radial-gradient(

        rgba(220,37,28,.18),

        transparent

    );

    filter:blur(70px);

    left:-180px;

    bottom:-180px;

    z-index:0;

}
/*=========================================================
        HERO PREMIUM V4
=========================================================*/

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding:80px 0 60px;
    isolation:isolate;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    linear-gradient(90deg,
    rgba(6,6,6,.90) 0%,
    rgba(6,6,6,.75) 35%,
    rgba(6,6,6,.35) 65%,
    rgba(6,6,6,.15) 100%);
    z-index:-2;
}

.hero::after{

    content:"";

    position:absolute;

    width:850px;

    height:850px;

    border-radius:50%;

    background:

    radial-gradient(

        rgba(220,37,28,.18),

        transparent 70%

    );

    right:-250px;

    top:-180px;

    filter:blur(50px);

    z-index:-1;

}

.hero-content{

    max-width:760px;

}

/*----------------------
Location
----------------------*/

.hero-location{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    border-radius:50px;

    padding:10px 20px;

    color:#dc251c;

    font-size:13px;

    letter-spacing:2px;

    text-transform:uppercase;

    font-weight:700;

    margin-bottom:30px;

}

.hero-location i{

    font-size:15px;

}
/*=========================================================
TITLE
=========================================================*/

.hero-title{

    font-family:'Cormorant Garamond',serif;

    font-size:96px;

    line-height:.85;

    font-weight:700;

    color:#fff;

    letter-spacing:1px;

    margin:0;

}

.hero-title span{

    display:block;

    margin-top:8px;

}

.hero-residence{

    margin-top:25px;

    color:#dc251c;

    font-size:28px;

    font-weight:300;

    letter-spacing:18px;

    text-transform:uppercase;

}

.hero-subtitle{

    margin-top:35px;

    color:#ececec;

    font-size:28px;

    font-weight:300;

    max-width:650px;

    line-height:1.5;

}

.hero-price{

    display:flex;

    align-items:center;

    gap:15px;

    margin-top:35px;

    color:#bdbdbd;

    font-size:22px;

}

.hero-price span{

    color:#fff;

    font-family:'Cormorant Garamond',serif;

    font-size:54px;

    font-weight:700;

}
.hero-divider{

    width:150px;

    height:3px;

    margin:38px 0;

    background:

    linear-gradient(

        to right,

        #dc251c,

        transparent

    );

}
.project-box{

    display:flex;

    align-items:center;

   

    backdrop-filter:blur(15px);

    border-radius:20px;

   

    overflow:hidden;

    margin-bottom:45px;

}

.project-item{

    flex:1;

    padding:30px 15px;

    text-align:center;

    transition:.35s;

    position:relative;

}

.project-item::after{

    content:"";

    position:absolute;

    right:0;

    top:22%;

    width:1px;

    height:56%;

    background:rgba(255,255,255,.10);

}

.project-item:last-child::after{

    display:none;

}

.project-item:hover{

    background:rgba(220,37,28,.08);

    transform:translateY(-5px);

}

.project-item i{

    color:#dc251c;

    font-size:24px;

    margin-bottom:14px;

}

.project-item h4{

    color:#fff;

    font-size:34px;

    margin-bottom:6px;

}

.project-item p{

    color:#d0d0d0;

    font-size:13px;

    letter-spacing:1px;

}
.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.hero-buttons .btn{

    min-width:230px;

    height:58px;

    border-radius:10px;

    font-size:14px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

}

.hero-buttons .btn-gold{

    box-shadow:

    0 18px 35px

    rgba(220,37,28,.28);

}

.hero-buttons .btn-outline-light{

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.35);

}

.hero-buttons .btn-outline-light:hover{

    background:#fff;

    color:#111;

}
.hero-glow{

    position:absolute;

    width:550px;

    height:550px;

    left:-220px;

    bottom:-220px;

    background:

    radial-gradient(

        rgba(220,37,28,.18),

        transparent

    );

    filter:blur(90px);

    z-index:-1;

}

/*==================================================
    FINAL DESIGN OVERRIDE (matches reference screenshot)
==================================================*/

/* Bold sans-serif headline instead of unloaded serif font */
.hero-title{
    font-family:'Poppins',sans-serif !important;
    font-weight:800 !important;
    letter-spacing:0.5px;
}

.hero-residence{
    font-family:'Poppins',sans-serif !important;
    font-weight:500 !important;
    color:#ffffff !important;
}

.form-top h3{
    font-family:'Poppins',sans-serif !important;
    font-weight:700 !important;
}

.form-top span{
    font-family:'Poppins',sans-serif !important;
    font-weight:600 !important;
}

/*==================================================
    HERO TRUST BAR (bottom strip of the hero section)
==================================================*/

.hero-trust-bar{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:24px;
    margin-top:55px;
    padding-top:35px;
    border-top:1px solid rgba(255,255,255,.12);
    position:relative;
    z-index:2;
}

.trust-item{
    display:flex;
    align-items:center;
    gap:14px;
    flex:1 1 220px;
}

.trust-item .trust-icon{
    width:46px;
    height:46px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #dc251c;
    border-radius:10px;
    color:#dc251c;
    font-size:18px;
}

.trust-item h6{
    color:#fff;
    font-size:14px;
    font-weight:600;
    margin:0 0 3px;
    font-family:'Poppins',sans-serif;
}

.trust-item p{
    color:#bbb;
    font-size:13px;
    margin:0;
}

@media (max-width:991px){
    .hero-trust-bar{
        justify-content:center;
        text-align:left;
    }
}

@media (max-width:576px){
    .trust-item{
        flex:1 1 100%;
    }
}

/*==================================================
        HERO PREMIUM RESPONSIVE & ANIMATIONS
==================================================*/

/* -----------------------------
Floating Animation
------------------------------*/

@keyframes floatCard{
    0%{
        transform:translateY(0px);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0px);
    }
}

.lead-form{
    animation:floatCard 5s ease-in-out infinite;
}

/* -----------------------------
Fade Animation
------------------------------*/

.hero-content{
    animation:heroContent 1s ease;
}

@keyframes heroContent{

    from{

        opacity:0;

        transform:translateX(-40px);

    }

    to{

        opacity:1;

        transform:translateX(0);

    }

}

/* -----------------------------
Button Hover
------------------------------*/

.hero-buttons .btn{

    transition:.35s;

}

.hero-buttons .btn:hover{

    transform:translateY(-5px);

}

/* -----------------------------
Project Card Hover
------------------------------*/

.project-item{

    cursor:pointer;

}

.project-item:hover{

    box-shadow:

    0 20px 45px rgba(220,37,28,.15);

}

/* -----------------------------
Glass Form Hover
------------------------------*/

.lead-form:hover{

    border-color:rgba(220,37,28,.35);

    box-shadow:

    0 35px 80px rgba(0,0,0,.45),

    0 10px 40px rgba(220,37,28,.10);

}

/* -----------------------------
Input Hover
------------------------------*/

.input-box input:hover,
.input-box textarea:hover{

    background:rgba(255,255,255,.10);

}

/*=========================================
        SUBMIT BUTTON
=========================================*/

.hero-submit{

    width:100%;

    height:60px;

    border:none;

    border-radius:50px;

    background:linear-gradient(135deg,#dc251c,#b71d16);

    color:#fff;

    font-size:16px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    cursor:pointer;

    transition:.35s;

    box-shadow:

    0 15px 35px rgba(220,37,28,.28);

}

.hero-submit:hover{

    transform:translateY(-4px);

    box-shadow:

    0 20px 40px rgba(220,37,28,.40);

}

.hero-submit:active{

    transform:scale(.98);

}

/*=========================================
        CONSENT CHECKBOX
=========================================*/

.hero-check{
    display:flex;
    align-items:flex-start;
    gap:12px;
    width:100%;
    margin:20px 0 25px;
    cursor:pointer;
}

.hero-check input[type="checkbox"]{
    width:18px;
    height:18px;
    margin-top:3px;
    flex-shrink:0;
    accent-color:#dc251c;
}

.hero-check span{
    flex:1;
    color:#e5e5e5;
    font-size:15px;
    line-height:28px;
    font-weight:400;
}

/*=========================================
        BUTTON
=========================================*/

.hero-submit{
    width:100%;
    height:56px;
    border:none;
    border-radius:12px;
    background:#dc251c;
    color:#fff;
    font-size:20px;
    font-weight:700;
    cursor:pointer;
    transition:.35s;
}

.hero-submit:hover{
    background:#b81e16;
    transform:translateY(-2px);
}

/* -----------------------------
Laptop
------------------------------*/

@media(max-width:1200px){

.hero{

padding-top:120px;

}

.hero-title{

font-size:68px;

}

.hero-subtitle{

font-size:22px;

}

.hero-buttons .btn{

min-width:210px;

}

.project-item h4{

font-size:28px;

}

}

/* -----------------------------
Tablet
------------------------------*/

@media(max-width:991px){

.hero{

padding:120px 0 60px;

text-align:center;

}

.hero-content{

padding-right:0;

margin-bottom:50px;

}

.hero-location{

margin:auto;

margin-bottom:25px;

}

.hero-title{

font-size:56px;

}

.hero-residence{

font-size:22px;

letter-spacing:8px;

}

.hero-divider{

margin:30px auto;

}

.hero-subtitle{

margin:auto;

margin-bottom:20px;

}

.hero-price{

justify-content:center;

}

.project-box{

display:grid;

grid-template-columns:repeat(2,1fr);

}

.project-item::after{

display:none;

}

.hero-buttons{

justify-content:center;

}

.hero-buttons .btn{

width:100%;

max-width:320px;

}

.lead-form{

margin:auto;

margin-top:40px;

}

}

/* -----------------------------
Mobile
------------------------------*/

@media(max-width:767px){

.hero{

padding:105px 0 45px;

}

.hero-title{

font-size:42px;

}

.hero-residence{

font-size:18px;

letter-spacing:5px;

}

.hero-subtitle{

font-size:18px;

}

.hero-price{

flex-direction:column;

gap:8px;

}

.hero-price span{

font-size:34px;

}

.project-box{

grid-template-columns:1fr;

}

.hero-buttons{

flex-direction:column;

}

.hero-buttons .btn{

width:100%;

}

.lead-form{

padding:28px;

}

.form-top h3{

font-size:30px;

}

}

/* -----------------------------
Small Mobile
------------------------------*/

@media(max-width:480px){

.hero-title{

font-size:34px;

line-height:1;

}

.hero-residence{

font-size:16px;

letter-spacing:3px;

}

.hero-location{

font-size:12px;

padding:8px 14px;

}

.hero-subtitle{

font-size:16px;

}

.hero-price{

font-size:16px;

}

.hero-price span{

font-size:28px;

}

.project-item{

padding:20px 10px;

}

.project-item h4{

font-size:24px;

}

.project-item p{

font-size:12px;

}

.lead-form{

padding:22px;

border-radius:18px;

}

.form-top h3{

font-size:26px;

}

.hero-submit{

height:52px;

font-size:14px;

}

}
/*==================================================
        PROJECT OVERVIEW - PREMIUM UI
==================================================*/

.overview-section{
    position:relative;
    padding:20px 0;
    background:#080808;
    overflow:hidden;
}

/* Background Glow */

.overview-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    background:rgba(220,37,28,.05);
    filter:blur(120px);
    top:-150px;
    left:-150px;
    border-radius:50%;
}

.overview-section::after{
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    background:rgba(220,37,28,.04);
    filter:blur(120px);
    bottom:-150px;
    right:-100px;
    border-radius:50%;
}

/*==========================
Heading
==========================*/

.overview-header{

    width:100%;

    max-width:none;

    margin:0 auto 70px;

    padding:0 50px;

    text-align:center;

}

.section-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 24px;

    border-radius:50px;

    background:rgba(220,37,28,.10);

    color:#dc251c;

    font-size:13px;

    font-weight:600;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:20px;

}

.overview-header h2{

    font-family:'Cormorant Garamond',serif;

    font-size:64px;

    color:#fff;

    line-height:1.1;

    margin-bottom:25px;

    font-weight:700;

}

.divider{

    width:100px;

    height:3px;

    background:#dc251c;

    margin:0 auto 30px;

    border-radius:20px;

}

.overview-header p{

    max-width:1200px;

    margin:0 auto;

    font-size:19px;

    line-height:38px;

    color:#c8c8c8;

}

/*==========================
Banner
==========================*/

.overview-banner{

    position:relative;

    overflow:hidden;

    border-radius:30px;

    box-shadow:0 30px 80px rgba(0,0,0,.45);

}

.overview-banner img{

    width:100%;

    display:block;

    transition:.8s;

}

.overview-banner:hover img{

    transform:scale(1.05);

}

.banner-badge{

    position:absolute;

    left:35px;

    bottom:35px;

    padding:14px 26px;

    background:rgba(0,0,0,.70);

    backdrop-filter:blur(10px);

    border-radius:50px;

    color:#fff;

    font-size:14px;

    font-weight:600;

    border:1px solid rgba(255,255,255,.15);

}

.banner-badge i{

    color:#dc251c;

    margin-right:10px;

}

/*==========================
Cards
==========================*/

.feature-box{

    position:relative;

    height:100%;

    padding:32px;

    border-radius:24px;

    background:linear-gradient(180deg,#171717,#101010);

    border:1px solid rgba(255,255,255,.08);

    transition:.4s;

    overflow:hidden;

}

.feature-box::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:4px;

    background:#dc251c;

    transform:scaleX(0);

    transform-origin:left;

    transition:.45s;

}

.feature-box:hover{

    transform:translateY(-10px);

    border-color:#dc251c;

    box-shadow:0 25px 45px rgba(220,37,28,.18);

}

.feature-box:hover::before{

    transform:scaleX(1);

}

.feature-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;

}

.feature-number{

    width:58px;

    height:58px;

    border-radius:18px;

    background:rgba(220,37,28,.10);

    color:#dc251c;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:24px;

    font-weight:700;

    font-family:'Cormorant Garamond',serif;

}

.feature-icon{

    width:58px;

    height:58px;

    border-radius:18px;

    background:rgba(255,255,255,.04);

    display:flex;

    justify-content:center;

    align-items:center;

}

.feature-icon i{

    color:#dc251c;

    font-size:24px;

}

.feature-box h4{

    color:#fff;

    font-size:24px;

    line-height:1.35;

    margin-bottom:18px;

    min-height:64px;

}

.feature-box p{

    color:#bfbfbf;

    font-size:15px;

    line-height:29px;

    margin-bottom:25px;

}

.feature-box a{

    color:#dc251c;

    font-size:15px;

    font-weight:600;

    text-decoration:none;

    transition:.35s;

}

.feature-box a:hover{

    letter-spacing:1px;

}

/*==========================
CTA
==========================*/

.overview-cta{

    text-align:center;

    margin-top:60px;

}

.overview-cta .btn{

    min-width:260px;

    height:58px;

    border-radius:50px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    font-size:15px;

    font-weight:600;

    letter-spacing:.5px;

}

.overview-cta .btn i{

    margin-right:10px;

}
.container{

    max-width:1450px !important;

    padding-left:40px;

    padding-right:40px;

    padding-top:40px;

}

/*==================================================
        LUXURY PREMIUM FINISH
==================================================*/

/* Animated Divider */

.divider{
    position:relative;
    overflow:hidden;
}

.divider::after{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.9),
        transparent
    );
    animation:dividerShine 4s infinite;
}

@keyframes dividerShine{
    0%{left:-100%;}
    100%{left:120%;}
}

/* Floating Image */

.overview-banner{
    position:relative;
    transition:.5s ease;
}

.overview-banner:hover{
    transform:translateY(-8px);
}

.overview-banner::before{

    content:"";

    position:absolute;

    inset:0;

    border-radius:30px;

    background:linear-gradient(
        180deg,
        rgba(255,255,255,.04),
        transparent
    );

    pointer-events:none;

}

/* Luxury Glow */

.overview-banner::after{

    content:"";

    position:absolute;

    width:250px;

    height:250px;

    background:rgba(220,37,28,.18);

    filter:blur(90px);

    right:-80px;

    bottom:-80px;

    border-radius:50%;

    z-index:-1;

}

/*==============================
Cards
==============================*/

.feature-box{

    backdrop-filter:blur(16px);

    overflow:hidden;

}

.feature-box::after{

    content:"";

    position:absolute;

    left:-120%;

    top:0;

    width:80%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.08),

        transparent

    );

    transform:skewX(-25deg);

    transition:.8s;

}

.feature-box:hover::after{

    left:150%;

}

/* Icon Animation */

.feature-icon{

    transition:.35s;

}

.feature-box:hover .feature-icon{

    transform:rotate(12deg) scale(1.12);

    background:#dc251c;

}

.feature-box:hover .feature-icon i{

    color:#fff;

}

/* Number Animation */

.feature-number{

    transition:.35s;

}

.feature-box:hover .feature-number{

    transform:scale(1.08);

    background:#dc251c;

    color:#fff;

}

/* Title Animation */

.feature-box h4{

    transition:.35s;

}

.feature-box:hover h4{

    color:#dc251c;

}

/* Link */

.feature-box a{

    position:relative;

    display:inline-block;

}

.feature-box a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-4px;

    width:0;

    height:2px;

    background:#dc251c;

    transition:.35s;

}

.feature-box:hover a::after{

    width:100%;

}

/* CTA */

.overview-cta .btn{

    background:linear-gradient(

        135deg,

        #dc251c,

        #b41b16

    );

    box-shadow:

        0 18px 40px rgba(220,37,28,.28);

    transition:.35s;

}

.overview-cta .btn:hover{

    transform:translateY(-5px);

    box-shadow:

        0 25px 55px rgba(220,37,28,.45);

}

/*==============================
Background Decoration
==============================*/

.overview-section{

    position:relative;

}

.overview-section .circle-one{

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(220,37,28,.04);

    filter:blur(120px);

    top:-150px;

    left:-100px;

}

.overview-section .circle-two{

    position:absolute;

    width:300px;

    height:300px;

    border-radius:50%;

    background:rgba(220,37,28,.05);

    filter:blur(120px);

    right:-80px;

    bottom:-100px;

}

/* Text Selection */

.overview-section ::selection{

    background:#dc251c;

    color:#fff;

}

/* Smooth */

.overview-section *{

    transition:

        background .35s,

        color .35s,

        border .35s,

        transform .35s;

}
/*=================================
THE PROJECT
=================================*/

.project-section{

    background:#0a0a0a;

    padding:20px 0;

}

.project-content h2{

    color:#fff;

    font-size:56px;

    margin-bottom:20px;

    font-family:'Cormorant Garamond',serif;

}

.project-content p{

    color:#bfbfbf;

    line-height:32px;

    margin-bottom:25px;

}

/* Feature Card */

.project-feature{

    display:flex;

    align-items:flex-start;

    gap:25px;

    padding:28px;

    margin-bottom:25px;

    background:#141414;

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    transition:.4s;

}

.project-feature:hover{

    transform:translateY(-8px);

    border-color:#dc251c;

    box-shadow:0 20px 40px rgba(220,37,28,.15);

}

.feature-icon{

    width:75px;

    height:75px;

    min-width:75px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:20px;

    background:rgba(220,37,28,.12);

    transition:.35s;

}

.feature-icon i{

    font-size:30px;

    color:#dc251c;

}

.project-feature:hover .feature-icon{

    background:#dc251c;

}

.project-feature:hover .feature-icon i{

    color:#fff;

}

.feature-content h4{

    color:#fff;

    font-size:24px;

    margin-bottom:10px;

}

.feature-content p{

    color:#bfbfbf;

    line-height:28px;

    margin:0;

}

/* Responsive */

@media(max-width:991px){

.project-content{

    margin-bottom:50px;

}

.project-content h2{

    font-size:42px;

}

}

@media(max-width:576px){

.project-feature{

    flex-direction:column;

    text-align:center;

}

.feature-icon{

    margin:0 auto;

}

.project-content h2{

    font-size:34px;

}

}
/*==================================================
      CLUBHOUSE AMENITIES
==================================================*/

.clubhouse-section{
    position:relative;
    padding:20px 0;
    background:#080808;
    overflow:hidden;
}

/* Background Glow */

.clubhouse-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    left:-150px;
    top:-150px;
    background:rgba(220,37,28,.08);
    border-radius:50%;
    filter:blur(130px);
}

.clubhouse-section::after{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
    right:-120px;
    bottom:-120px;
    background:rgba(220,37,28,.06);
    border-radius:50%;
    filter:blur(120px);
}

/*------------------------------------
Slider
------------------------------------*/

.clubhouse-slider{

    margin-top:70px;

    padding-bottom:70px;

}

/*------------------------------------
Card
------------------------------------*/

.club-card{

    position:relative;

    background:linear-gradient(180deg,#191919,#111111);

    border:1px solid rgba(255,255,255,.08);

    border-radius:28px;

    padding:45px 35px;

    height:100%;

    overflow:hidden;

    transition:.45s;

}

/* Top Border */

.club-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:4px;

    background:#dc251c;

    transform:scaleX(0);

    transform-origin:left;

    transition:.45s;

}

.club-card:hover::before{

    transform:scaleX(1);

}

.club-card:hover{

    transform:translateY(-12px);

    border-color:#dc251c;

    box-shadow:

    0 20px 50px rgba(220,37,28,.20);

}

/*------------------------------------
Number
------------------------------------*/

.club-number{

    display:inline-flex;

    width:55px;

    height:55px;

    border-radius:50%;

    background:rgba(220,37,28,.12);

    align-items:center;

    justify-content:center;

    color:#dc251c;

    font-size:18px;

    font-weight:700;

    margin-bottom:25px;

}

/*------------------------------------
Icon
------------------------------------*/

.club-icon{

    width:90px;

    height:90px;

    border-radius:24px;

    background:rgba(220,37,28,.08);

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:30px;

    transition:.4s;

}

.club-icon i{

    font-size:38px;

    color:#dc251c;

}

.club-card:hover .club-icon{

    background:#dc251c;

    transform:rotate(8deg);

}

.club-card:hover .club-icon i{

    color:#fff;

}

/*------------------------------------
Title
------------------------------------*/

.club-card h4{

    color:#fff;

    font-size:28px;

    margin-bottom:18px;

    font-family:'Cormorant Garamond',serif;

}

/*------------------------------------
Description
------------------------------------*/

.club-card p{

    color:#bfbfbf;

    font-size:15px;

    line-height:30px;

    margin-bottom:0;

}

/*------------------------------------
Glass Shine
------------------------------------*/

.club-card::after{

    content:"";

    position:absolute;

    top:0;

    left:-150%;

    width:70%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.08),

        transparent

    );

    transform:skewX(-25deg);

    transition:.8s;

}

.club-card:hover::after{

    left:160%;

}

/*------------------------------------
Navigation
------------------------------------*/

.clubhouse-slider .swiper-button-next,
.clubhouse-slider .swiper-button-prev{

    width:58px;

    height:58px;

    border-radius:50%;

    background:#151515;

    border:1px solid rgba(255,255,255,.08);

    transition:.35s;

}

.clubhouse-slider .swiper-button-next:hover,
.clubhouse-slider .swiper-button-prev:hover{

    background:#dc251c;

    border-color:#dc251c;

}

.clubhouse-slider .swiper-button-next::after,
.clubhouse-slider .swiper-button-prev::after{

    color:#fff;

    font-size:20px;

    font-weight:700;

}

/*------------------------------------
Pagination
------------------------------------*/

.clubhouse-slider .swiper-pagination{

    bottom:0;

}

.clubhouse-slider .swiper-pagination-bullet{

    width:12px;

    height:12px;

    background:#666;

    opacity:1;

}

.clubhouse-slider .swiper-pagination-bullet-active{

    width:34px;

    border-radius:30px;

    background:#dc251c;

}

/*------------------------------------
Section Heading
------------------------------------*/

.clubhouse-section .section-title{

    max-width:900px;

    margin:auto;

}

.clubhouse-section .section-title h2{

    font-size:58px;

    color:#fff;

    margin-bottom:20px;

}

.clubhouse-section .section-title p{

    color:#c5c5c5;

    font-size:18px;

    line-height:34px;

}
/*==================================================
      CLUBHOUSE RESPONSIVE
==================================================*/

/*==============================
Large Desktop
==============================*/

@media (min-width:1400px){

.clubhouse-section{

padding:20px 0;

}

.club-card{

min-height:430px;

}

}

/*==============================
Laptop
==============================*/

@media (max-width:1399px){

.clubhouse-section{

padding:20px 0;

}

.clubhouse-section .section-title h2{

font-size:50px;

}

.club-card{

padding:35px 30px;

min-height:400px;

}

.club-card h4{

font-size:24px;

}

.club-card p{

font-size:15px;

line-height:28px;

}

}

/*==============================
Tablet Landscape
==============================*/

@media (max-width:1199px){

.clubhouse-section{

padding:75px 0;

}

.club-card{

padding:32px 28px;

min-height:380px;

}

.club-icon{

width:75px;

height:75px;

}

.club-icon i{

font-size:30px;

}

.club-card h4{

font-size:22px;

}

}

/*==============================
Tablet
==============================*/

@media (max-width:991px){

.clubhouse-section{

padding:70px 0;

}

.clubhouse-slider{

margin-top:50px;

}

.clubhouse-section .section-title{

margin-bottom:20px;

}

.clubhouse-section .section-title h2{

font-size:42px;

}

.clubhouse-section .section-title p{

font-size:16px;

line-height:30px;

}

.club-card{

padding:30px;

min-height:340px;

}

.club-number{

width:50px;

height:50px;

font-size:17px;

}

.club-icon{

width:70px;

height:70px;

margin-bottom:25px;

}

.club-icon i{

font-size:28px;

}

.club-card h4{

font-size:21px;

margin-bottom:12px;

}

.club-card p{

font-size:15px;

line-height:28px;

}

.clubhouse-slider .swiper-button-next,

.clubhouse-slider .swiper-button-prev{

display:none;

}

}

/*==============================
Mobile
==============================*/

@media (max-width:767px){

.clubhouse-section{

padding:70px 0;

}

.clubhouse-section .section-title h2{

font-size:34px;

line-height:1.25;

}

.clubhouse-section .section-title p{

font-size:15px;

line-height:28px;

padding:0 15px;

}

.clubhouse-slider{

margin-top:35px;

padding-bottom:55px;

}

.club-card{

padding:28px 24px;

border-radius:20px;

min-height:auto;

text-align:center;

}

.club-number{

margin:0 auto 20px;

}

.club-icon{

margin:0 auto 25px;

width:70px;

height:70px;

}

.club-card h4{

font-size:22px;

}

.club-card p{

font-size:14px;

line-height:26px;

}

}

/*==============================
Small Mobile
==============================*/

@media (max-width:480px){

.clubhouse-section{

padding:60px 0;

}

.clubhouse-section .section-title h2{

font-size:30px;

}

.clubhouse-section .section-title p{

font-size:14px;

line-height:26px;

}

.club-card{

padding:24px 20px;

}

.club-icon{

width:65px;

height:65px;

}

.club-icon i{

font-size:26px;

}

.club-card h4{

font-size:20px;

}

.club-card p{

font-size:13px;

line-height:24px;

}

.club-number{

width:45px;

height:45px;

font-size:16px;

}

}

/*==============================
Hover Effects (Desktop Only)
==============================*/

@media (min-width:992px){

.club-card:hover{

transform:translateY(-12px) scale(1.02);

}

.club-card:hover .club-number{

background:#dc251c;

color:#fff;

transition:.35s;

}

.club-card:hover h4{

color:#dc251c;

transition:.35s;

}

.club-card:hover p{

color:#f1f1f1;

transition:.35s;

}

}
/*=============================
Entrance Animation
=============================*/

.club-card{

opacity:0;

transform:translateY(60px);

transition:all .8s ease;

}

.club-card.active{

opacity:1;

transform:translateY(0);

}
.club-card{

cursor:pointer;

}

.club-card:hover{

background:linear-gradient(180deg,#1c1c1c,#111111);

}

.club-card:hover h4{

color:#dc251c;

}

.club-card:hover .club-number{

background:#dc251c;

color:#fff;

}

.club-card:hover{

box-shadow:

0 25px 70px rgba(220,37,28,.18);

}
/*=============================
PRICE LIST
=============================*/

.price-section{

padding:20px 0;

background:#080808;

}

.price-card{

position:relative;

background:linear-gradient(180deg,#181818,#111);

border:1px solid rgba(255,255,255,.08);

border-radius:26px;

padding:40px;

height:100%;

transition:.4s;

overflow:hidden;

}

.price-card:hover{

transform:translateY(-10px);

border-color:#dc251c;

box-shadow:0 20px 50px rgba(220,37,28,.18);

}

.price-top{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:25px;

}

.unit-type{

font-size:32px;

font-family:'Cormorant Garamond',serif;

color:#fff;

font-weight:700;

}

.unit-size{

background:rgba(220,37,28,.12);

padding:8px 16px;

border-radius:30px;

color:#dc251c;

font-size:14px;

}

.price-value{

font-size:56px;

font-weight:700;

color:#dc251c;

margin-bottom:30px;

}

.price-value small{

font-size:22px;

color:#fff;

}

.price-card ul{

list-style:none;

padding:0;

margin:0 0 35px;

}

.price-card li{

margin-bottom:16px;

color:#ddd;

font-size:15px;

}

.price-card li i{

color:#dc251c;

margin-right:10px;

}

.featured-card{

border:2px solid #dc251c;

transform:scale(1.04);

}

.featured-tag{

position:absolute;

top:18px;

right:-42px;

background:#dc251c;

color:#fff;

padding:8px 45px;

font-size:12px;

font-weight:600;

transform:rotate(45deg);

}

.price-card .btn{

width:100%;

height:52px;

border-radius:50px;

font-weight:600;

}
/*==================================================
        FLOOR PLAN SECTION
==================================================*/

.floorplan-section{

    position:relative;

    padding:20px 0;

    background:#090909;

    overflow:hidden;

}

/* Background Glow */

.floorplan-section::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    left:-150px;

    top:-150px;

    background:rgba(220,37,28,.05);

    border-radius:50%;

    filter:blur(130px);

}

.floorplan-section::after{

    content:"";

    position:absolute;

    width:400px;

    height:400px;

    right:-120px;

    bottom:-120px;

    background:rgba(220,37,28,.05);

    border-radius:50%;

    filter:blur(130px);

}

/*=================================
Card
=================================*/

.floor-card{

    position:relative;

    background:linear-gradient(180deg,#191919,#111);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    overflow:hidden;

    transition:.45s;

    height:100%;

}

/* Hover */

.floor-card:hover{

    transform:translateY(-12px);

    border-color:#dc251c;

    box-shadow:0 30px 70px rgba(220,37,28,.20);

}

/*=================================
Image
=================================*/

.floor-image{

    position:relative;

    overflow:hidden;

    background:#fff;

}

.floor-image img{

    width:100%;

    transition:.7s;

}

.floor-card:hover img{

    transform:scale(1.08);

}

/*=================================
Tag
=================================*/

.plan-tag{

    position:absolute;

    top:20px;

    left:20px;

    background:#dc251c;

    color:#fff;

    padding:8px 20px;

    border-radius:30px;

    font-size:13px;

    font-weight:600;

    letter-spacing:1px;

}

/*=================================
Content
=================================*/

.floor-content{

    padding:35px;

}

.floor-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:18px;

}

.floor-top h3{

    color:#fff;

    font-size:30px;

    margin:0;

    font-family:'Cormorant Garamond',serif;

}

.floor-top span{

    background:rgba(220,37,28,.10);

    color:#dc251c;

    padding:8px 16px;

    border-radius:25px;

    font-size:13px;

    font-weight:600;

}

.floor-content p{

    color:#bfbfbf;

    font-size:15px;

    line-height:30px;

    margin-bottom:30px;

}

/*=================================
Buttons
=================================*/

.floor-buttons{

    display:flex;

    gap:12px;

}

.floor-buttons .btn{

    flex:1;

    height:50px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:40px;

    font-size:14px;

    font-weight:600;

}

.floor-buttons .btn i{

    margin-right:8px;

}

/*=================================
Featured Card
=================================*/

.featured-floor{

    border:2px solid #dc251c;

    transform:scale(1.03);

}

.featured-floor:hover{

    transform:scale(1.05);

}

/* Ribbon */

.featured-label{

    position:absolute;

    top:22px;

    right:-48px;

    width:180px;

    background:#dc251c;

    color:#fff;

    text-align:center;

    padding:8px 0;

    font-size:12px;

    font-weight:600;

    transform:rotate(45deg);

    z-index:5;

}

/*=================================
Shine
=================================*/

.floor-card::before{

    content:"";

    position:absolute;

    left:-120%;

    top:0;

    width:80%;

    height:100%;

    background:linear-gradient(

    90deg,

    transparent,

    rgba(255,255,255,.10),

    transparent);

    transform:skewX(-25deg);

    transition:.8s;

    z-index:2;

}

.floor-card:hover::before{

    left:150%;

}
/*==================================
Gallery
==================================*/

.gallery-section{

padding:20px 0;

background:#080808;

}

.gallery-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr;

grid-auto-rows:300px;

gap:25px;

}

.gallery-item{

position:relative;

overflow:hidden;

border-radius:28px;

}

.gallery-item.large{

grid-row:span 2;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.7s;

}

.gallery-overlay{

position:absolute;

left:0;

top:0;

width:100%;

height:100%;

background:linear-gradient(

180deg,

transparent,

rgba(0,0,0,.8)

);

display:flex;

flex-direction:column;

justify-content:flex-end;

padding:35px;

opacity:0;

transition:.4s;

}

.gallery-overlay i{

width:65px;

height:65px;

border-radius:50%;

background:#dc251c;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:22px;

margin-bottom:20px;

}

.gallery-overlay h4{

color:#fff;

font-size:28px;

margin:0;

}

.gallery-item:hover img{

transform:scale(1.1);

}

.gallery-item:hover .gallery-overlay{

opacity:1;

}

/*==================================
Luxury Ecosystem Banner
==================================*/


.luxury-ecosystem{

    position:relative;

    background:url("../images/skyline2.jpg") center center;

    background-size:cover;

    background-attachment:fixed;

    min-height:620px;

    display:flex;

    align-items:center;

    overflow:hidden;

}

/* Overlay */

.luxury-ecosystem .overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        90deg,
        rgba(0,0,0,.82) 18%,
        rgba(0,0,0,.35) 55%,
        rgba(0,0,0,.15) 100%
    );

}

/* Content */

.eco-content{

    position:relative;

    z-index:2;

    max-width:480px;

}

.eco-tag{

    display:inline-block;

    color:#fff;

    background:rgba(220,37,28,.18);

    border:1px solid rgba(220,37,28,.35);

    padding:10px 20px;

    border-radius:40px;

    font-size:12px;

    letter-spacing:2px;

    margin-bottom:25px;

    text-transform:uppercase;

}

.eco-content h3{

    color:#fff;

    font-size:54px;

    font-weight:700;

    line-height:1.15;

    margin-bottom:15px;

}

.eco-content h3 span{

    display:block;

    font-size:34px;

    color:#ffffff;

    font-weight:400;

    margin-top:10px;

}

.eco-line{

    width:90px;

    height:4px;

    background:#dc251c;

    margin:25px 0;

    border-radius:5px;

}

.eco-content p{

    color:#d7d7d7;

    font-size:17px;

    line-height:32px;

    margin-bottom:35px;

    max-width:420px;

}

.eco-content .btn{

    padding:14px 34px;

    border-radius:50px;

    font-weight:600;

    letter-spacing:.5px;

}

/* Hover */

.eco-content .btn:hover{

    transform:translateY(-3px);

}

/* Responsive */

@media(max-width:991px){

.luxury-ecosystem{

    min-height:500px;

    background-attachment:scroll;

}

.eco-content{

    text-align:center;

    margin:auto;

}

.eco-line{

    margin:20px auto;

}

.eco-content h3{

    font-size:42px;

}

.eco-content h3 span{

    font-size:26px;

}

}

@media(max-width:576px){

.luxury-ecosystem{

    min-height:420px;

}

.eco-content h3{

    font-size:32px;

}

.eco-content h3 span{

    font-size:22px;

}

.eco-content p{

    font-size:15px;

    line-height:28px;

}

}


/*==================================
Luxury Ecosystem Banner
==================================*/

.luxury-ecosystem{

    position:relative;

    background:url("../images/skyline2.jpg") center center;

    background-size:cover;

    background-attachment:fixed;

    min-height:620px;

    display:flex;

    align-items:center;

    overflow:hidden;

}

/*==================================
LOCATION
==================================*/

.location-section{

padding:20px 0;

background:#0b0b0b;

}

.location-card{

background:#141414;

padding:45px;

border-radius:25px;

border:1px solid rgba(255,255,255,.08);

height:100%;

transition:.4s;

}

.location-card:hover{

transform:translateY(-8px);

border-color:#dc251c;

box-shadow:0 20px 50px rgba(220,37,28,.15);

}

.location-card h3{

color:#fff;

font-size:34px;

margin-bottom:35px;

font-family:'Cormorant Garamond',serif;

}

.location-card ul{

padding:0;

margin:0;

list-style:none;

}

.location-card li{

display:flex;

align-items:center;

justify-content:space-between;

padding:18px 0;

border-bottom:1px solid rgba(255,255,255,.08);

}

.location-card li:last-child{

border:none;

}

.location-card li i{

width:45px;

height:45px;

border-radius:50%;

background:rgba(220,37,28,.12);

display:flex;

align-items:center;

justify-content:center;

color:#dc251c;

margin-right:18px;

flex-shrink:0;

}

.location-card li span{

flex:1;

color:#ddd;

font-size:16px;

}

.location-card li strong{

color:#dc251c;

font-weight:600;

}

/*========================*/

.location-map{

position:relative;

overflow:hidden;

border-radius:25px;

border:1px solid rgba(255,255,255,.08);

}

.location-map img{

width:100%;

transition:.7s;

}

.location-map:hover img{

transform:scale(1.05);

}

.map-overlay{

position:absolute;

left:30px;

bottom:30px;

background:rgba(0,0,0,.75);

padding:18px 24px;

border-left:4px solid #dc251c;

backdrop-filter:blur(10px);

}

.map-overlay h4{

margin:0;

color:#fff;

font-size:24px;

}

.map-overlay p{

margin:5px 0 0;

color:#ccc;

}

/*========================*/

@media(max-width:991px){

.location-card{

margin-bottom:35px;

}

}

@media(max-width:767px){

.location-section{

padding:80px 0;

}

.location-card{

padding:30px;

}

.location-card h3{

font-size:28px;

}

.location-card li{

font-size:14px;

}

.map-overlay{

left:15px;

bottom:15px;

padding:15px;

}

}
/*====================================================
ABOUT BRAND - LUXURY EDITORIAL
====================================================*/

.brand-editorial{

    position:relative;

    padding:20px 0;

    background:#090909;

    overflow:hidden;

}

/* Background Glow */

.brand-editorial::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-180px;

    top:-180px;

    background:rgba(220,37,28,.05);

    filter:blur(140px);

    border-radius:50%;

}

.brand-editorial::after{

    content:"";

    position:absolute;

    width:400px;

    height:400px;

    right:-120px;

    bottom:-120px;

    background:rgba(220,37,28,.04);

    filter:blur(130px);

    border-radius:50%;

}

/*========================================
Image
========================================*/

.brand-image{

    position:relative;

    overflow:hidden;

    border-radius:30px;

    border:1px solid rgba(255,255,255,.08);

    transition:.45s;

}

.brand-image img{

    width:100%;

    display:block;

    transition:.7s;

}

.brand-image:hover img{

    transform:scale(1.06);

}

.brand-image:hover{

    border-color:#dc251c;

    box-shadow:0 30px 70px rgba(220,37,28,.18);

}

/*========================================
Badge
========================================*/

.brand-image-badge{

    position:absolute;

    left:30px;

    bottom:30px;

    background:rgba(0,0,0,.75);

    backdrop-filter:blur(14px);

    padding:16px 28px;

    border-left:4px solid #dc251c;

    border-radius:12px;

    color:#fff;

    font-size:14px;

    font-weight:500;

    letter-spacing:.4px;

}

.brand-image-badge i{

    color:#dc251c;

    margin-right:10px;

}

/*========================================
Content
========================================*/

.brand-content{

    padding-left:25px;

}

.mini-title{

    color:#dc251c;

    letter-spacing:3px;

    font-size:13px;

    text-transform:uppercase;

    display:block;

    margin-bottom:16px;

}

.brand-content h3{

    color:#fff;

    font-size:52px;

    line-height:1.15;

    margin-bottom:25px;

    font-family:'Cormorant Garamond',serif;

    font-weight:600;

}

.brand-content p{

    color:#c5c5c5;

    line-height:32px;

    font-size:16px;

    margin-bottom:22px;

}

/*========================================
Ribbon
========================================*/

.brand-ribbon{

    margin:45px 0;

    display:flex;

    align-items:center;

    justify-content:space-between;

    background:linear-gradient(180deg,#171717,#101010);

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    overflow:hidden;

    position:relative;

}

.brand-ribbon::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:3px;

    background:#dc251c;

}

/*========================================
Ribbon Item
========================================*/

.brand-item{

    flex:1;

    display:flex;

    align-items:center;

    gap:18px;

    padding:30px;

    transition:.4s;

}

.brand-item:hover{

    background:rgba(220,37,28,.05);

}

/*========================================
Icon
========================================*/

.brand-icon{

    width:70px;

    height:70px;

    border-radius:50%;

    background:rgba(220,37,28,.08);

    border:1px solid rgba(220,37,28,.18);

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.35s;

}

.brand-icon i{

    color:#dc251c;

    font-size:28px;

}

.brand-item:hover .brand-icon{

    background:#dc251c;

    transform:rotate(10deg);

}

.brand-item:hover .brand-icon i{

    color:#fff;

}

/*========================================
Ribbon Text
========================================*/

.brand-item h4{

    color:#fff;

    margin:0;

    font-size:34px;

    font-family:'Cormorant Garamond',serif;

    transition:.35s;

}

.brand-item span{

    display:block;

    margin-top:5px;

    color:#cfcfcf;

    font-size:14px;

    line-height:24px;

}

.brand-item:hover h4{

    color:#dc251c;

}

/* Divider */

.ribbon-divider{

    width:1px;

    height:90px;

    background:rgba(255,255,255,.08);

}

/*========================================
Button
========================================*/

.brand-content .btn{

    padding:16px 40px;

    border-radius:50px;

    font-weight:600;

    letter-spacing:.5px;

    transition:.35s;

}

.brand-content .btn:hover{

    transform:translateY(-3px);

}
/*==================================================
ABOUT BRAND RESPONSIVE
==================================================*/

/*==============================
Large Desktop (1600px+)
==============================*/

@media (min-width:1600px){

.brand-editorial{

padding:95px 0;

}

.brand-content{

padding-left:50px;

}

.brand-content h3{

font-size:60px;

}

.brand-content p{

font-size:17px;

line-height:34px;

}

.brand-ribbon{

margin-top:50px;

}

}


/*==============================
Laptop
==============================*/

@media (max-width:1399px){

.brand-content h3{

font-size:46px;

}

.brand-content{

padding-left:25px;

}

.brand-item{

padding:26px;

}

.brand-item h4{

font-size:30px;

}

}


/*==============================
Tablet Landscape
==============================*/

@media (max-width:1199px){

.brand-editorial{

padding:75px 0;

}

.brand-content{

padding-left:10px;

}

.brand-content h3{

font-size:40px;

}

.brand-content p{

font-size:15px;

line-height:30px;

}

.brand-image-badge{

left:20px;

bottom:20px;

padding:14px 22px;

}

.brand-item{

padding:22px;

gap:15px;

}

.brand-icon{

width:62px;

height:62px;

}

.brand-icon i{

font-size:24px;

}

}


/*==============================
Tablet
==============================*/

@media (max-width:991px){

.brand-editorial{

padding:70px 0;

}

.brand-image{

margin-bottom:45px;

}

.brand-content{

padding-left:0;

text-align:center;

}

.brand-content h3{

font-size:36px;

}

.brand-content p{

font-size:15px;

line-height:30px;

}

.brand-ribbon{

flex-direction:column;

margin:35px 0;

}

.ribbon-divider{

width:100%;

height:1px;

}

.brand-item{

width:100%;

justify-content:center;

padding:28px;

}

.brand-image-badge{

left:25px;

bottom:25px;

}

.brand-content .btn{

width:260px;

height:54px;

display:inline-flex;

align-items:center;

justify-content:center;

}

}


/*==============================
Mobile
==============================*/

@media (max-width:767px){

.brand-editorial{

padding:70px 0;

}

.brand-content{

text-align:center;

}

.brand-content h3{

font-size:30px;

line-height:1.25;

margin-bottom:20px;

}

.brand-content p{

font-size:15px;

line-height:28px;

}

.brand-image{

border-radius:20px;

}

.brand-image-badge{

left:15px;

right:15px;

bottom:15px;

padding:14px;

text-align:center;

font-size:13px;

border-left:none;

border-top:3px solid #dc251c;

}

.brand-ribbon{

border-radius:18px;

}

.brand-item{

flex-direction:column;

text-align:center;

padding:24px;

gap:18px;

}

.brand-icon{

width:65px;

height:65px;

}

.brand-item h4{

font-size:28px;

}

.brand-item span{

font-size:14px;

line-height:24px;

}

.brand-content .btn{

width:100%;

}

}


/*==============================
Small Mobile
==============================*/

@media (max-width:480px){

.brand-editorial{

padding:60px 0;

}

.brand-content h3{

font-size:26px;

}

.brand-content p{

font-size:14px;

line-height:26px;

}

.brand-item{

padding:22px;

}

.brand-item h4{

font-size:24px;

}

.brand-item span{

font-size:13px;

}

.brand-icon{

width:58px;

height:58px;

}

.brand-icon i{

font-size:22px;

}

.brand-image{

border-radius:18px;

}

.brand-image-badge{

font-size:12px;

}

}


/*==============================
Desktop Hover
==============================*/

@media (min-width:992px){

.brand-item:hover{

transform:translateY(-4px);

}

.brand-item:hover .brand-icon{

box-shadow:0 12px 30px rgba(220,37,28,.30);

}

.brand-item:hover h4{

letter-spacing:.5px;

}

.brand-image:hover{

transform:translateY(-5px);

}

}

/*==================================================
LUXURY FOOTER
==================================================*/

.footer-section{

    position:relative;

    padding:25px 0 35px;

    background:#080808;

    overflow:hidden;

}

/* Background Glow */

.footer-section::before{

    content:"";

    position:absolute;

    left:-180px;

    top:-180px;

    width:500px;

    height:500px;

    background:rgba(220,37,28,.06);

    filter:blur(150px);

    border-radius:50%;

}

.footer-section::after{

    content:"";

    position:absolute;

    right:-150px;

    bottom:-150px;

    width:450px;

    height:450px;

    background:rgba(220,37,28,.05);

    filter:blur(150px);

    border-radius:50%;

}

/*==============================
Contact Card
==============================*/

.footer-contact{

    position:relative;

    z-index:2;

}

.contact-card{

    display:flex;

    align-items:flex-start;

    gap:20px;

    background:#141414;

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    padding:25px;

    margin-bottom:20px;

    transition:.35s;

}

.contact-card:hover{

    border-color:#dc251c;

    transform:translateY(-5px);

    box-shadow:0 20px 45px rgba(220,37,28,.15);

}

.contact-icon{

    width:65px;

    height:65px;

    border-radius:50%;

    background:rgba(220,37,28,.08);

    display:flex;

    justify-content:center;

    align-items:center;

    flex-shrink:0;

    transition:.35s;

}

.contact-icon i{

    color:#dc251c;

    font-size:24px;

}

.contact-card:hover .contact-icon{

    background:#dc251c;

}

.contact-card:hover .contact-icon i{

    color:#fff;

}

.contact-card h5{

    color:#fff;

    font-size:22px;

    margin-bottom:8px;

    font-family:'Cormorant Garamond',serif;

}

.contact-card p{

    color:#c6c6c6;

    margin:0;

    line-height:28px;

}

/*==============================
Brand Ribbon
==============================*/

.footer-brand{

    margin-top:30px;

    padding:20px 30px;

    border-radius:18px;

    background:linear-gradient(90deg,#181818,#111);

    border-left:4px solid #dc251c;

    color:#fff;

    font-weight:500;

    font-size:16px;

}

.footer-brand i{

    color:#dc251c;

    margin-right:12px;

}

/*==============================
Form
==============================*/

.footer-form{

    background:#141414;

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    padding:45px;

    transition:.35s;

}

.footer-form:hover{

    border-color:#dc251c;

}

.footer-form h3{

    color:#fff;

    font-size:40px;

    margin-bottom:30px;

    font-family:'Cormorant Garamond',serif;

}

.footer-form .form-control{

    background:#1d1d1d;

    border:1px solid rgba(255,255,255,.08);

    border-radius:50px;

    color:#fff;

    height:58px;

    margin-bottom:20px;

    padding:0 22px;

}

.footer-form textarea.form-control{

    height:140px;

    border-radius:22px;

    padding:18px 22px;

    resize:none;

}

.footer-form .form-control:focus{

    border-color:#dc251c;

    box-shadow:none;

    background:#222;

}

.footer-form .form-control::placeholder{

    color:#8d8d8d;

}

.footer-form .btn{

    height:58px;

    border-radius:50px;

    font-weight:600;

    font-size:16px;

    letter-spacing:.5px;

}

/*==============================
Bottom
==============================*/

.footer-bottom{

    margin-top:70px;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.08);

}

.footer-bottom p{

    color:#9b9b9b;

    margin:0;

}

/*==============================
Social
==============================*/

.social-links{

    display:flex;

    justify-content:flex-end;

    gap:15px;

}

.social-links a{

    width:48px;

    height:48px;

    border-radius:50%;

    background:#141414;

    border:1px solid rgba(255,255,255,.08);

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.35s;

    color:#fff;

    text-decoration:none;

}

.social-links a:hover{

    background:#dc251c;

    border-color:#dc251c;

    transform:translateY(-5px);

}

/*==============================
Floating Buttons
==============================*/

.floating-btn{

    position:fixed;

    width:62px;

    height:62px;

    right:25px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:28px;

    text-decoration:none;

    z-index:999;

    transition:.35s;

    box-shadow:0 12px 35px rgba(0,0,0,.25);

}

.whatsapp{

    bottom:110px;

    background:#25D366;

}

.call{

    bottom:35px;

    background:#585858;

}

.floating-btn:hover{

    transform:scale(1.12);

}

/*==============================
Loader
==============================*/

#loader{

    position:fixed;

    inset:0;

    background:#080808;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:99999;

    transition:.4s;

}
/*==================================================
FOOTER RESPONSIVE
==================================================*/

/*==============================
Large Desktop
==============================*/

@media (min-width:1600px){

.footer-section{

padding:95px 0 45px;

}

.footer-form{

padding:55px;

}

.footer-form h3{

font-size:46px;

}

.contact-card{

padding:30px;

}

}

/*==============================
Laptop
==============================*/

@media (max-width:1399px){

.footer-section{

padding:80px 0 35px;

}

.footer-form{

padding:40px;

}

.footer-form h3{

font-size:36px;

}

.contact-card h5{

font-size:20px;

}

}

/*==============================
Tablet Landscape
==============================*/

@media (max-width:1199px){

.footer-form{

padding:35px;

}

.footer-form h3{

font-size:34px;

}

.contact-card{

padding:22px;

}

.contact-icon{

width:60px;

height:60px;

}

.contact-icon i{

font-size:22px;

}

}

/*==============================
Tablet
==============================*/

@media (max-width:991px){

.footer-section{

padding:70px 0 30px;

}

.footer-contact{

margin-bottom:45px;

}

.footer-form{

padding:35px;

}

.footer-form h3{

font-size:32px;

text-align:center;

}

.footer-heading{

margin-bottom:20px;

}

.contact-card{

margin-bottom:18px;

}

.footer-bottom{

text-align:center;

}

.footer-bottom .row{

gap:20px;

}

.social-links{

justify-content:center;

}

}

/*==============================
Mobile
==============================*/

@media (max-width:767px){

.footer-section{

padding:70px 0 30px;

}

.footer-heading h2{

font-size:32px;

line-height:1.3;

}

.footer-heading p{

font-size:15px;

line-height:28px;

}

.contact-card{

padding:20px;

gap:16px;

}

.contact-icon{

width:55px;

height:55px;

}

.contact-icon i{

font-size:20px;

}

.contact-card h5{

font-size:18px;

}

.contact-card p{

font-size:14px;

line-height:24px;

}

.footer-brand{

font-size:14px;

padding:18px;

}

.footer-form{

padding:28px;

border-radius:24px;

}

.footer-form h3{

font-size:28px;

margin-bottom:25px;

}

.footer-form .form-control{

height:52px;

font-size:14px;

}

.footer-form textarea.form-control{

height:120px;

}

.footer-form .btn{

height:54px;

font-size:15px;

}

.social-links{

gap:12px;

}

.social-links a{

width:44px;

height:44px;

font-size:16px;

}

.floating-btn{

width:56px;

height:56px;

right:18px;

font-size:24px;

}

.whatsapp{

bottom:90px;

}

.call{

bottom:20px;

}

}

/*==============================
Small Mobile
==============================*/

@media (max-width:480px){

.footer-section{

padding:60px 0 25px;

}

.footer-heading h2{

font-size:28px;

}

.footer-heading p{

font-size:14px;

}

.contact-card{

flex-direction:column;

text-align:center;

align-items:center;

}

.contact-icon{

margin-bottom:10px;

}

.footer-brand{

text-align:center;

line-height:26px;

}

.footer-form{

padding:22px;

}

.footer-form h3{

font-size:24px;

}

.footer-form .btn{

width:100%;

}

.footer-bottom p{

font-size:13px;

}

.social-links{

flex-wrap:wrap;

}

}

/*==============================
Landscape Phones
==============================*/

@media (max-height:500px){

.footer-section{

padding:50px 0;

}

.floating-btn{

display:none;

}

}
/*==================================================
PREMIUM ANIMATION
==================================================*/

.contact-card,
.footer-form,
.footer-brand,
.footer-heading,
.brand-ribbon,
.builder-image{

opacity:0;

transform:translateY(50px);

transition:all .8s ease;

}

.contact-card.show,
.footer-form.show,
.footer-brand.show,
.footer-heading.show,
.brand-ribbon.show,
.builder-image.show{

opacity:1;

transform:translateY(0);

}

/*====================================
Floating Buttons
====================================*/

.floating-btn{

animation:float 3s ease-in-out infinite;

}

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-8px);

}

100%{

transform:translateY(0);

}

}

/*====================================
WhatsApp Pulse
====================================*/

.whatsapp{

animation:pulse 2s infinite;

}

@keyframes pulse{

0%{

box-shadow:0 0 0 0 rgba(37,211,102,.5);

}

70%{

box-shadow:0 0 0 18px rgba(37,211,102,0);

}

100%{

box-shadow:0 0 0 0 rgba(37,211,102,0);

}

}

/*====================================
Call Pulse
====================================*/

.call{

animation:callpulse 2.5s infinite;

}

@keyframes callpulse{

0%{

box-shadow:0 0 0 0 rgba(220,37,28,.45);

}

70%{

box-shadow:0 0 0 18px rgba(220,37,28,0);

}

100%{

box-shadow:0 0 0 0 rgba(220,37,28,0);

}

}

/*====================================
Form Hover Glow
====================================*/

.footer-form{

transition:.4s;

}

.footer-form:hover{

box-shadow:

0 25px 60px rgba(220,37,28,.18);

}

/*====================================
Input Hover
====================================*/

.footer-form .form-control{

transition:.35s;

}

.footer-form .form-control:hover{

border-color:#dc251c;

}

/*====================================
Button Hover
====================================*/

.footer-form .btn{

transition:.35s;

}

.footer-form .btn:hover{

transform:translateY(-3px);

box-shadow:0 12px 35px rgba(220,37,28,.25);

}

/*====================================
Social Hover
====================================*/

.social-links a{

transition:.35s;

}

.social-links a:hover{

transform:translateY(-6px) rotate(10deg);

}

/*====================================
Image Hover
====================================*/

.builder-image{

transition:.45s;

}

.builder-image:hover{

transform:translateY(-6px);

}

/*====================================
Luxury Shine
====================================*/

.footer-form::before{

content:"";

position:absolute;

left:-150%;

top:0;

width:70%;

height:100%;

background:linear-gradient(

90deg,

transparent,

rgba(255,255,255,.08),

transparent

);

transform:skewX(-25deg);

transition:.8s;

}

.footer-form:hover::before{

left:160%;

}

.footer-form{

position:relative;

overflow:hidden;

}


/*==================================================
BASE / GLOBAL STYLES
(Consolidated from responsive.css — these were the
live, final versions of the global styles and are
kept here unchanged so nothing on the page moves.
responsive.css now contains @media rules only.)
==================================================*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


body{

background:#0f0f0f;

color:#fff;

overflow-x:hidden;

}

a{

text-decoration:none;

transition:.4s;

}

img{

max-width:100%;

}

/*======================
Navbar
=======================*/

.navbar{

background:black;

backdrop-filter:blur(10px);

padding:5px 0;

transition:.4s;

z-index:9999;

}

.navbar-brand{

font-size:30px;

font-weight:800;

letter-spacing:2px;

color:#fff;

}

.navbar-brand span{

color:#C8A45D;

}

.navbar-nav li{

margin-left:20px;

}

.navbar-nav li a{

color:white;

font-size:15px;

font-weight:500;

}

.navbar-nav li a:hover{

color:#C8A45D;

}

.btn-gold{

background:#C8A45D;

color:#000;

font-weight:700;

padding:12px 30px;

border-radius:50px;

transition:.4s;

}

.btn-gold:hover{

background:#fff;

transform:translateY(-4px);

}

/*======================
Hero
=======================*/

.hero{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

background:url('../images/banner.jpg') center center/cover no-repeat;

}

.overlay{

position:absolute;

width:100%;

height:100%;

background:linear-gradient(to right,

rgba(0,0,0,.90),

rgba(0,0,0,.55));

}

.hero .container{

position:relative;

z-index:2;

}

.hero h5{

font-size:20px;

color:#dc251c;

margin-bottom:20px;

}

.hero h1{

font-size:65px;

font-weight:800;

line-height:75px;

margin-bottom:20px;

}

.hero h2{

font-size:32px;

font-weight:400;

margin-bottom:20px;

}

.hero h3{

font-size:45px;

color:#dc251c;

font-weight:700;

margin-bottom:35px;

}

/*======================
Project Stats
=======================*/

.project-box{

display:flex;

gap:25px;

margin-top:25px;

}

.project-box div{



backdrop-filter:blur(15px);

padding:20px;

border-radius:15px;

text-align:center;

width:150px;

border:1px solid rgba(255,255,255,.1);

}

.project-box h4{

font-size:38px;

font-weight:700;

color:#C8A45D;

}

.project-box p{

font-size:14px;

margin-top:10px;

}

/*======================
Lead Form
=======================*/

.lead-form{

background:rgba(255,255,255,.10);

padding:40px;

border-radius:20px;

backdrop-filter:blur(20px);

box-shadow:0 15px 40px rgba(0,0,0,.5);

}

.lead-form h3{

text-align:center;

margin-bottom:25px;

color:#dc251c;

}

.lead-form input,

.lead-form textarea{

width:100%;

padding:15px;

border:none;

margin-bottom:15px;

border-radius:10px;

background:rgba(255,255,255,.15);

color:white;

}

.lead-form input::placeholder,

.lead-form textarea::placeholder{

color:#ddd;

}

.lead-form textarea{

height:120px;

resize:none;

}

.lead-form button{

width:100%;

padding:16px;

background:#dc251c;

color:#000;

font-size:18px;

font-weight:700;

border:none;

border-radius:50px;

transition:.4s;

}

.lead-form button:hover{

background:white;

transform:translateY(-4px);

}

/*======================
Floating Buttons
=======================*/

.whatsapp{

position:fixed;

bottom:30px;

right:25px;

width:65px;

height:65px;

background:#25D366;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:32px;

color:white;

z-index:999;

box-shadow:0 10px 25px rgba(0,0,0,.3);

}

.call{

position:fixed;

bottom:110px;

right:25px;

width:65px;

height:65px;

background:#3b3b3b;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:28px;

color:black;

z-index:999;

}

/*======================
Section
=======================*/

section{

padding:20px 0;

}

.section-title{

text-align:center;

margin-bottom:60px;

}

.section-title h2{

font-size:45px;

font-weight:700;

color:#C8A45D;

}

.section-title p{

color:#bbb;

margin-top:10px;

}

/*======================
Cards
=======================*/

.card-luxury{

background:#181818;

border:none;

border-radius:20px;

padding:35px;

transition:.4s;

height:100%;

}

.card-luxury:hover{

transform:translateY(-10px);

box-shadow:0 20px 50px rgba(200,164,93,.2);

}

.card-luxury h4{

color:#C8A45D;

margin:20px 0;

}

/*======================
Footer
=======================*/

footer{

background:#000;

padding:70px 0;

}

footer h3{

color:#dc251c;

margin-bottom:25px;

}

footer a{

color:white;

display:block;

margin-bottom:10px;

}

footer a:hover{

color:#C8A45D;

}

footer p{

color:#aaa;

font-size:15px;

}


/*==================================================
STICKY NAVBAR STATE
(assets/js/script.js toggles this class on scroll;
no rule existed for it in the original CSS, so the
navbar never visually changed on scroll. This gives
the intended "compact/solid on scroll" behaviour.)
==================================================*/
.navbar.sticky{
    padding:0;
    background:#000;
    box-shadow:0 8px 25px rgba(0,0,0,.4);
}

/*==================================================
FOOTER BOTTOM — PREMIUM 3-ZONE LAYOUT
Left: Back-to-top | Center: legal | Right: social
(Replaces the older 2-column footer-bottom styles
above — loaded later in the file, so these win.)
==================================================*/

.footer-bottom{
    margin-top:55px;
    padding-top:34px;
    border-top:1px solid rgba(255,255,255,.08);
    position:relative;
}

/* thin red glow line on the divider, like the reference */
.footer-bottom::before{
    content:"";
    position:absolute;
    top:-1px;
    left:0;
    right:0;
    height:2px;
    background:linear-gradient(90deg,
        transparent 0%,
        rgba(220,37,28,.9) 50%,
        transparent 100%);
    filter:blur(.4px);
}

/* ----- Left zone: Back to top ----- */
.footer-top-link{
    display:inline-flex;
    align-items:center;
    gap:18px;
    background:none;
    border:none;
    padding:0;
    cursor:pointer;
    color:#fff;
    text-decoration:none;
}

.footer-top-link .top-circle{
    width:58px;
    height:58px;
    border-radius:50%;
    border:1px solid rgba(220,37,28,.75);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    color:#dc251c;
    background:rgba(220,37,28,.04);
    transition:all .35s ease;
}

.footer-top-link .top-divider{
    width:1px;
    height:44px;
    background:rgba(255,255,255,.25);
}

.footer-top-link .top-label{
    font-size:14px;
    letter-spacing:3px;
    line-height:1.7;
    text-transform:uppercase;
    color:#eee;
    text-align:left;
    transition:color .35s ease;
}

.footer-top-link:hover .top-circle{
    background:#dc251c;
    color:#fff;
    transform:translateY(-4px);
    box-shadow:0 12px 28px rgba(220,37,28,.35);
}

.footer-top-link:hover .top-label{
    color:#fff;
}

/* ----- Center zone: copyright + legal ----- */
.footer-legal{
    text-align:center;
}

.footer-copyright{
    margin:0 0 8px;
    color:rgba(255,255,255,.88);
    font-size:15px;
    letter-spacing:.2px;
}

.footer-legal-links{
    list-style:none;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:26px;
    padding:0;
    margin:0 0 10px;
}

.footer-legal-links li{
    position:relative;
}

.footer-legal-links li + li::before{
    content:"";
    position:absolute;
    left:-15px;
    top:50%;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#dc251c;
    transform:translateY(-50%);
}

.footer-legal-links a{
    color:rgba(255,255,255,.75);
    text-decoration:none;
    font-size:14px;
    transition:color .3s ease;
}

.footer-legal-links a:hover{
    color:#ff4b4b;
}

/* RERA line (required disclosure — kept compact) */
.footer-bottom .rera-disclaimer{
    margin:0;
    font-size:12px;
    line-height:1.7;
    color:rgba(255,255,255,.45);
}

.footer-bottom .rera-disclaimer strong{
    color:rgba(255,255,255,.75);
    font-weight:600;
}

.footer-bottom .rera-disclaimer .rera-sep{
    margin:0 8px;
    color:#dc251c;
}

.footer-bottom .rera-disclaimer a{
    color:rgba(255,255,255,.6);
    text-decoration:underline;
    text-underline-offset:3px;
}

.footer-bottom .rera-disclaimer a:hover{
    color:#ff4b4b;
}

/* ----- Right zone: social icons ----- */
.footer-bottom .social-links{
    display:flex;
    justify-content:flex-end;
    gap:14px;
}

.footer-bottom .social-links a{
    width:50px;
    height:50px;
    border-radius:50%;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    color:#fff;
    text-decoration:none;
    transition:all .35s ease;
}

.footer-bottom .social-links a:hover{
    background:#dc251c;
    border-color:#dc251c;
    transform:translateY(-4px);
    box-shadow:0 10px 24px rgba(220,37,28,.35);
}

/*==================================================
FLOATING CALL / WHATSAPP STACK (bottom-right)
==================================================*/

.floating-stack{
    position:fixed;
    right:22px;
    bottom:22px;
    display:flex;
    flex-direction:column;
    gap:14px;
    z-index:1050;
}

.floating-stack .floating-btn{
    position:relative;      /* overrides older fixed-position rules */
    right:auto;
    bottom:auto;
    width:56px;
    height:56px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-size:22px;
    color:#fff;
    text-decoration:none;
    box-shadow:0 10px 24px rgba(0,0,0,.45);
    transition:transform .25s ease, box-shadow .25s ease;
}

.floating-stack .floating-btn:hover{
    transform:translateY(-4px) scale(1.05);
}

.floating-stack .floating-btn.call{
    background:linear-gradient(135deg,#2b2b2b,#111);
    border:1px solid rgba(220,37,28,.6);
}

.floating-stack .floating-btn.whatsapp{
    background:linear-gradient(135deg,#25d366,#128c4a);
}

.floating-stack .floating-btn.whatsapp i{
    color:#fff !important;
}

.floating-stack .floating-btn.whatsapp::after{
    content:"";
    position:absolute;
    inset:-5px;
    border-radius:50%;
    border:2px solid rgba(37,211,102,.45);
    animation:waPulse 2s ease-out infinite;
}

@keyframes waPulse{
    0%{transform:scale(.9);opacity:.9;}
    100%{transform:scale(1.35);opacity:0;}
}

/* safety net: hide any legacy auto-injected scroll button */
#scrollTop,
.scroll-top,
.scroll-to-top{
    display:none !important;
}

/*==================================================
FAQ ACCORDION
Question rows with a circular + icon; the answer
expands smoothly (CSS grid-rows trick — animates to
any content height, unlike max-height hacks) and the
+ rotates into an X while turning solid red.
==================================================*/

.faq-accordion{
    max-width:1180px;
    margin:0 auto;
}

/* each 50% column holds 3 questions */
.faq-col{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.faq-item{
    background:linear-gradient(145deg,#141414,#0d0d0d);
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    margin-bottom:0;          /* spacing handled by .faq-col gap */
    overflow:hidden;
    transition:border-color .35s ease, box-shadow .35s ease;
}

.faq-item.active{
    border-color:rgba(220,37,28,.55);
    box-shadow:0 14px 40px rgba(220,37,28,.12);
}

/* heading wrapper keeps <h3> semantics without its styles */
.faq-heading-row{
    margin:0;
}

.faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:22px 26px;
    background:none;
    border:none;
    cursor:pointer;
    text-align:left;
}

.faq-q-text{
    font-size:18px;
    font-weight:600;
    line-height:1.5;
    color:#fff;
    transition:color .3s ease;
}

.faq-item.active .faq-q-text{
    color:#ff4b4b;
}

.faq-question:hover .faq-q-text{
    color:#ff4b4b;
}

/* ----- the + icon ----- */
.faq-icon{
    flex:0 0 auto;
    width:40px;
    height:40px;
    border-radius:50%;
    border:1px solid rgba(220,37,28,.6);
    background:rgba(220,37,28,.06);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .35s ease;
}

.faq-icon i{
    font-size:14px;
    transition:transform .35s ease;
}

.faq-item.active .faq-icon{
    background:#dc251c;
    border-color:#dc251c;
    box-shadow:0 8px 20px rgba(220,37,28,.35);
}

.faq-item.active .faq-icon i{
    color:#fff !important;
    transform:rotate(135deg);   /* + becomes an X */
}

/* ----- collapsible answer ----- */
.faq-answer{
    display:grid;
    grid-template-rows:0fr;
    transition:grid-template-rows .4s ease;
}

.faq-item.active .faq-answer{
    grid-template-rows:1fr;
}

.faq-answer-inner{
    overflow:hidden;
    min-height:0;
}

.faq-answer-inner p{
    margin:0;
    padding:18px 26px 24px;
    font-size:15.5px;
    line-height:1.9;
    color:#b9b9b9;
    border-top:1px solid rgba(255,255,255,.06);
}
