/* ===== RESET ===== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

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

background:#f7f9fc;

color:#1d2b38;

line-height:1.7;

}

.container{

width:90%;

max-width:1200px;

margin:auto;

}

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

.hero{
    position:relative;
    min-height:100vh;
    background:
        linear-gradient(rgba(8,18,45,.78), rgba(8,18,45,.82)),
       url("images/hero-bg.png?v=3") center center/cover no-repeat;

    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    color:#fff;
    overflow:hidden;
    padding:160px 20px 120px;
}

.overlay{

position:absolute;

top:0;

left:0;

right:0;

bottom:0;

background:rgba(6,25,47,.65);

}

.hero-content{
    position:relative;
    z-index:2;
    max-width:780px;
    margin:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:24px;
}

.small-heading{
display:inline-block;
padding:10px 24px;
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.22);
border-radius:40px;
font-weight:600;
margin-bottom:28px;
color:white;
backdrop-filter:blur(10px);
}

.hero h1{
    font-size:clamp(3.8rem,7vw,6.4rem);
    line-height:0.95;
    font-weight:800;
    letter-spacing:-3px;
    margin:0;
    text-shadow:0 12px 35px rgba(0,0,0,.55);
}
.hero h1 span{
    display:block;
    color:#f0b73f;
}

.hero-text{
    max-width:760px;
    font-size:1.25rem;
    line-height:1.8;
    color:rgba(255,255,255,.94);
    text-shadow:0 5px 20px rgba(0,0,0,.35);
}
/* ===== BUTTONS ===== */

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

margin-bottom:40px;

}

.btn{

display:inline-block;

padding:16px 34px;

background:#d6a739;

color:#0d2442;

border-radius:8px;

text-decoration:none;

font-weight:700;

transition:.3s;

}

.btn:hover{

transform:translateY(-4px);

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

}

.secondary{

background:white;

}

/* ===== FEATURES ===== */

.hero-features{
    display:flex;
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top:10px;
}

.hero-features div{
    background:rgba(255,255,255,.10);
    padding:12px 18px;
    border-radius:50px;
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(10px);
    font-size:.9rem;
    font-weight:600;
}

/* ===== SECTIONS ===== */

section{

padding:90px 0;

}

section h2{

font-size:2.5rem;

text-align:center;

margin-bottom:25px;

color:#0d2442;

}

.section-text,

.intro p{

max-width:850px;

margin:auto;

text-align:center;

font-size:1.1rem;

}

/* ===== CARDS ===== */

.cards,

.commercial-grid,

.stats-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.card,

.commercial-card,

.stat{

background:white;

padding:40px;

border-radius:18px;

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

transition:.35s;

text-align:center;

}

.card:hover,

.commercial-card:hover,

.stat:hover{

transform:translateY(-10px);

}

.card h3,

.commercial-card h3{

font-size:1.5rem;

margin-bottom:20px;

color:#16375f;

}

/* ===== SLIDER ===== */

.slider-container{

position:relative;

max-width:950px;

margin:50px auto;

overflow:hidden;

border-radius:20px;

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

}

.before-img{

width:100%;

display:block;

}

.after-img{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

object-fit:cover;

clip-path:inset(0 0 0 50%);

pointer-events:none;  
}

.divider{

position:absolute;

left:50%;

top:0;

width:3px;

height:100%;

background:white;

pointer-events:none;
z-index:20;  
}

.handle{

position:absolute;

top:50%;

left:50%;

transform:translate(-50%,-50%);

width:28px;

height:34px;

background:white;

border-radius:8px;

border:3px solid #16375f;

}

.label{

position:absolute;

top:20px;

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

padding:8px 16px;

color:white;

border-radius:5px;

font-size:.9rem;

z-index:5;

}

.before-label{

left:20px;

}

.after-label{

right:20px;

}

.slider{

position:absolute;
top:0;
left:0;
width:100%;
height:100%;
opacity:0;
cursor:ew-resize;

z-index:999;

-webkit-appearance:none;
appearance:none;

background:transparent;
  
}

/* ===== GALLERY ===== */

.gallery{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:30px;

margin-top:45px;

}

.gallery img{

width:100%;

border-radius:18px;

box-shadow:0 10px 30px rgba(0,0,0,.15);

}

/* ===== CONTACT ===== */

.contact{

background:#0d2442;

color:white;

text-align:center;

}

.contact h2{

color:white;

}

.contact-box{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:25px;

margin:45px 0;

}

.contact-box div{

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

padding:30px;

border-radius:16px;

}

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

footer{

background:#08172d;

color:white;

padding:50px 0;

text-align:center;

}

/* ===== MOBILE ===== */

@media(max-width:768px){

.hero{

height:85vh;

}

.hero h1{

font-size:2.6rem;

}

.hero-text{
    max-width:700px;
    font-size:1.2rem;
    line-height:1.8;
    color:rgba(255,255,255,.92);
}

.hero-buttons{

flex-direction:column;

align-items:center;

}

section h2{

font-size:2rem;

}

}

/* Scroll Animation */

.hidden{

opacity:0;

transform:translateY(60px);

transition:all .8s ease;

}

.show{

opacity:1;

transform:translateY(0);

}

/* ===== PREMIUM NAVIGATION ===== */

.navbar{
position:fixed;
top:18px;
left:50%;
transform:translateX(-50%);
width:90%;
max-width:1200px;
z-index:9999;
background:rgba(8,23,45,.78);
backdrop-filter:blur(14px);
border:1px solid rgba(255,255,255,.14);
border-radius:18px;
box-shadow:0 20px 50px rgba(0,0,0,.25);
transition:.3s ease;
}

.nav-container{
display:flex;
align-items:center;
justify-content:space-between;
padding:14px 22px;
}

.nav-logo{
color:white;
font-weight:800;
font-size:1.25rem;
text-decoration:none;
letter-spacing:.3px;
}

.nav-links{
display:flex;
gap:28px;
}

.nav-links a{
color:white;
text-decoration:none;
font-weight:500;
font-size:.95rem;
opacity:.9;
transition:.25s;
}

.nav-links a:hover{
opacity:1;
color:#d6a739;
}

.nav-btn{
background:#d6a739;
color:#08172d;
padding:11px 20px;
border-radius:10px;
font-weight:700;
text-decoration:none;
transition:.25s;
}

.nav-btn:hover{
transform:translateY(-2px);
box-shadow:0 10px 25px rgba(0,0,0,.25);
}

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

.navbar{
top:10px;
width:94%;
border-radius:14px;
}

.nav-container{
padding:12px 14px;
}

.nav-links{
display:none;
}

.nav-logo{
font-size:1.1rem;
}

.nav-btn{
padding:9px 13px;
font-size:.8rem;
}

}

