body{
background:#050816;
color:white;
font-family:Inter,sans-serif;
overflow-x:hidden;
}

.all24-container{
width:90%;
max-width:1400px;
margin:auto;
}

.glass{
background:rgba(255,255,255,.05);
backdrop-filter:blur(20px);
border:1px solid rgba(255,255,255,.1);
border-radius:24px;
}

.btn-primary{
background:linear-gradient(135deg,#4f46e5,#06b6d4);
padding:14px 30px;
border-radius:14px;
color:#fff;
text-decoration:none;
display:inline-block;
transition:.3s;
}

.btn-primary:hover{
transform:translateY(-4px);
}

.hero-section{
min-height:100vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
}

.hero-content h1{
font-size:72px;
line-height:1.1;
margin:20px 0;
}

.hero-content p{
font-size:20px;
max-width:700px;
margin:auto;
opacity:.8;
}

.hero-badge{
display:inline-block;
padding:10px 20px;
border-radius:999px;
background:rgba(255,255,255,.08);
}

.hero-buttons{
margin-top:30px;
display:flex;
gap:20px;
justify-content:center;
flex-wrap:wrap;
}

.cards-section{
padding:120px 0;
}

.cards-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
margin-top:40px;
}

.service-card{
padding:30px;
transition:.4s;
cursor:pointer;
}

.service-card:hover{
transform:translateY(-10px);
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

.all24-navbar{
position:fixed;
top:20px;
left:50%;
transform:translateX(-50%);
width:90%;
max-width:1400px;
padding:18px 30px;
display:flex;
justify-content:space-between;
align-items:center;
z-index:999;
background:rgba(255,255,255,.05);
backdrop-filter:blur(20px);
border:1px solid rgba(255,255,255,.1);
border-radius:20px;
}

.all24-logo{
font-size:28px;
font-weight:700;
}

.all24-menu{
display:flex;
gap:30px;
}

.all24-menu a{
color:white;
text-decoration:none;
}

.hero-section{
padding-top:140px;
}

body{
background:
radial-gradient(circle at top left,#1e1b4b,#020617);
min-height:100vh;
}


/* STATS SECTION */

.stats-section{
max-width:1200px;
margin:120px auto;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
padding:0 20px;
}

.stat-card{
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.1);
border-radius:20px;
padding:40px;
text-align:center;
backdrop-filter:blur(20px);
transition:.4s;
}

.stat-card:hover{
transform:translateY(-10px);
box-shadow:0 0 40px rgba(0,180,255,.3);
}

.stat-card h3{
font-size:42px;
margin-bottom:10px;
background:linear-gradient(90deg,#4f46e5,#06b6d4);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.stat-card p{
color:#d1d5db;
}

/* FOOTER */

.site-footer{
margin-top:120px;
padding:80px 20px 30px;
border-top:1px solid rgba(255,255,255,.1);
background:rgba(255,255,255,.03);
}

.footer-grid{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:40px;
}

.footer-grid h3,
.footer-grid h4{
margin-bottom:20px;
color:#fff;
}

.footer-grid p{
color:#9ca3af;
line-height:1.8;
}

.footer-grid a{
display:block;
color:#d1d5db;
text-decoration:none;
margin-bottom:12px;
}

.footer-grid a:hover{
color:#06b6d4;
}

.footer-bottom{
text-align:center;
margin-top:50px;
padding-top:30px;
border-top:1px solid rgba(255,255,255,.1);
color:#9ca3af;
}

/* MOBILE */

@media(max-width:768px){

.stats-section{
grid-template-columns:1fr 1fr;
}

.footer-grid{
grid-template-columns:1fr;
}

.hero-content h1{
font-size:42px;
}

}

#hero-3d{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:0;
}

.hero-section{
position:relative;
overflow:hidden;
}

.hero-content{
position:relative;
z-index:2;
}
#hero-3d{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:1;
pointer-events:none;
}

.hero-content{
position:relative;
z-index:10;
}

.all24-navbar{
z-index:1000;
}
.hero-content{
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:60px;
}
.all24-navbar{

backdrop-filter:blur(30px);

background:
rgba(15,20,40,.65);

box-shadow:
0 10px 40px rgba(0,0,0,.35);

}
.hero-image img{
width:100%;
border-radius:30px;
box-shadow:0 30px 80px rgba(0,0,0,.4);
animation:floatImage 5s ease-in-out infinite;
}

@keyframes floatImage{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-15px);
}

100%{
transform:translateY(0);
}

}

@media(max-width:900px){

.hero-content{
grid-template-columns:1fr;
}

}

.hero-grid{
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:60px;
}

.hero-visual{
display:flex;
justify-content:center;
align-items:center;
}

.hero-visual img{
width:100%;
max-width:600px;
border-radius:30px;
animation:floatImage 6s ease-in-out infinite;
box-shadow:0 30px 80px rgba(0,0,0,.4);
}

@keyframes floatImage{

0%{
transform:translateY(0px);
}

50%{
transform:translateY(-20px);
}

100%{
transform:translateY(0px);
}

}
.hero-content{
display:flex;
align-items:center;
justify-content:space-between;
gap:60px;
}

.hero-left{
flex:1;
}

.hero-right{
flex:1;
position:relative;
}

.hero-building{
width:100%;
animation:floatBuilding 6s ease-in-out infinite;
}

.hero-left h1{
font-size:80px;
line-height:1.05;
font-weight:700;
}

.hero-left h1 span{
background:linear-gradient(90deg,#06b6d4,#6366f1);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

@keyframes floatBuilding{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-15px);
}

100%{
transform:translateY(0);
}

}

.hero-section{
    min-height:100vh;
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding-top:120px;
}

.hero-content{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
}

.hero-left h1{
    font-size:78px;
    line-height:1;
    margin:25px 0;
    font-weight:800;
}

.hero-left h1 span{
    background:linear-gradient(90deg,#00c6ff,#6c63ff);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.hero-left p{
    font-size:22px;
    line-height:1.7;
    color:#cbd5e1;
    max-width:650px;
}

.hero-right{
    position:relative;
    text-align:center;
}

.hero-building{
    width:100%;
    max-width:750px;
    animation:floatBuilding 6s ease-in-out infinite;
}

@keyframes floatBuilding{
    0%{transform:translateY(0px);}
    50%{transform:translateY(-20px);}
    100%{transform:translateY(0px);}
}

.btn-secondary{
    padding:14px 30px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:14px;
    color:white;
    text-decoration:none;
}

.hero-buttons{
    display:flex;
    gap:20px;
    margin-top:35px;
}

@media(max-width:991px){

.hero-content{
grid-template-columns:1fr;
text-align:center;
}

.hero-left h1{
font-size:50px;
}

.hero-building{
max-width:500px;
margin:auto;
}

.hero-buttons{
justify-content:center;
}

}
.hero-right{
    position:relative;
}

.property-card{
    position:absolute;
    background:rgba(20,30,60,.85);
    backdrop-filter:blur(15px);
    border:1px solid rgba(255,255,255,.15);
    border-radius:20px;
    padding:18px;
    min-width:220px;
    color:#fff;
    animation:floatCard 5s ease-in-out infinite;
}

.card-1{
    top:80px;
    right:20px;
}

.card-2{
    bottom:80px;
    right:0;
}

.property-card span{
    color:#00d4ff;
    font-size:24px;
    font-weight:700;
}

@keyframes floatCard{
    0%{transform:translateY(0);}
    50%{transform:translateY(-15px);}
    100%{transform:translateY(0);}
}

.hero-building{
    animation: floatBuilding 6s ease-in-out infinite;
}

@keyframes floatBuilding{
    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-20px);
    }

    100%{
        transform:translateY(0px);
    }
}

.hero-right{
    position:relative;
}

.property-card{
    position:absolute;
    background:rgba(20,30,60,.85);
    backdrop-filter:blur(15px);
    border:1px solid rgba(255,255,255,.15);
    border-radius:20px;
    padding:18px;
    min-width:220px;
    color:#fff;
    animation:floatCard 5s ease-in-out infinite;
}
.property-card{
    transition:.4s;
}

.property-card:hover{
    transform:translateY(-10px) scale(1.03);
    box-shadow:0 0 40px rgba(0,212,255,.35);
}
.card-1{
    top:80px;
    right:20px;
}

.card-2{
    bottom:80px;
    right:0;
}

.property-card span{
    
    .hero-left{
    animation:heroFade 1.2s ease;
}

@keyframes heroFade{

    from{
        opacity:0;
        transform:translateX(-80px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }

}
.service-card,
.stat-card,
.property-card{

opacity:0;
transform:translateY(80px);
transition:1s;

}

.show{

opacity:1;
transform:translateY(0);

}

.hero-building{
    animation:
    floatBuilding 6s ease-in-out infinite,
    heroZoom 20s linear infinite;
}

@keyframes heroZoom{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.05);
    }

    100%{
        transform:scale(1);
    }

}
    color:#00d4ff;
    font-size:24px;
    font-weight:700;
}

@keyframes floatCard{
    0%{transform:translateY(0);}
    50%{transform:translateY(-15px);}
    100%{transform:translateY(0);}
}
.hero-building{
    animation: floatBuilding 6s ease-in-out infinite;
}

@keyframes floatBuilding{
    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-20px);
    }

    100%{
        transform:translateY(0px);
    }
}

.btn-primary{

position:relative;
overflow:hidden;

}

.btn-primary::before{

content:"";

position:absolute;

top:0;
left:-120%;

width:80px;
height:100%;

background:
rgba(255,255,255,.25);

transform:skewX(-20deg);

transition:.8s;

}

.btn-primary:hover::before{

left:140%;

}.hero-left h1{

animation:
titleReveal 1.2s ease;

}

@keyframes titleReveal{

from{

opacity:0;
transform:
translateY(80px);

}

to{

opacity:1;
transform:
translateY(0);

}

}
.hero-left h1{

animation:
titleReveal 1.2s ease;

}

@keyframes titleReveal{

from{

opacity:0;
transform:
translateY(80px);

}

to{

opacity:1;
transform:
translateY(0);

}

}
.property-card{

animation:
floatCard 5s ease-in-out infinite,
pulseGlow 4s ease-in-out infinite;

}

@keyframes pulseGlow{

0%{

box-shadow:
0 0 0 rgba(0,212,255,.2);

}

50%{

box-shadow:
0 0 30px rgba(0,212,255,.45);

}

100%{

box-shadow:
0 0 0 rgba(0,212,255,.2);

}

}