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

html{
scroll-behavior:smooth;
}

body{
font-family:'Montserrat',sans-serif;
background:#030814;
color:white;
overflow-x:hidden;
}

.navbar{
position:sticky;
top:0;
z-index:999;
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 60px;
background:rgba(0,0,0,.92);
backdrop-filter:blur(14px);
border-bottom:1px solid rgba(13,110,253,.2);
}

.nav-logo{
height:88px;
filter:drop-shadow(0 0 12px rgba(13,110,253,.35));
}

nav{
display:flex;
gap:40px;
}

nav a{
color:white;
text-decoration:none;
font-weight:600;
transition:.3s;
}

nav a:hover{
color:#0d6efd;
}

.call-button{
background:#0d6efd;
padding:14px 24px;
border-radius:14px;
color:white;
text-decoration:none;
font-weight:700;
transition:.35s;
}

.call-button:hover{
transform:translateY(-4px) scale(1.02);
box-shadow:0 0 25px rgba(13,110,253,.45);
}

.hero{
min-height:100vh;
display:flex;
align-items:center;
justify-content:space-between;
padding:80px 60px;
gap:60px;
}

.hero-left{
flex:1;
max-width:650px;
}

.hero-left h1{
font-size:68px;
line-height:.95;
font-weight:800;
margin-bottom:25px;
max-width:700px;
text-shadow:0 0 25px rgba(13,110,253,.18);
}

.hero-left p{
font-size:21px;
line-height:1.7;
color:#d0d0d0;
max-width:580px;
}

.hero-buttons{
display:flex;
gap:20px;
margin-top:35px;
flex-wrap:wrap;
}

.primary-btn,
.secondary-btn{
padding:16px 28px;
border-radius:14px;
text-decoration:none;
font-weight:700;
transition:.35s;
}

.primary-btn{
background:#0d6efd;
color:white;
}

.secondary-btn{
border:2px solid #0d6efd;
color:white;
}

.primary-btn:hover,
.secondary-btn:hover,
.floating-call:hover{
transform:translateY(-4px) scale(1.02);
box-shadow:0 0 25px rgba(13,110,253,.45);
}

.hero-right{
flex:1;
display:flex;
justify-content:center;
align-items:center;
}

.hero-image{
width:100%;
max-width:760px;
border-radius:28px;
box-shadow:
0 0 20px rgba(13,110,253,.15),
0 0 50px rgba(13,110,253,.25);
transition:.4s;
}

.hero-image:hover{
transform:translateY(-4px);
}

.services-section,
.why-section,
.contact-section{
padding:100px 60px;
}

.why-section{
background:#06101d;
}

.about-section{
padding:100px 60px;
max-width:1000px;
margin:auto;
text-align:center;
}

.services-section h2,
.why-section h2,
.about-section h2,
.contact-section h2{
text-align:center;
font-size:44px;
margin-bottom:50px;
}

.services-grid,
.why-grid,
.contact-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
}

.service-card,
.why-card,
.contact-box{
background:#081423;
padding:42px;
border-radius:26px;
border:1px solid rgba(13,110,253,.25);
transition:.35s;
backdrop-filter:blur(10px);
}

.service-card:hover,
.why-card:hover,
.contact-box:hover{
transform:translateY(-6px);
border-color:#0d6efd;
box-shadow:0 0 30px rgba(13,110,253,.25);
}

.service-card h3,
.why-card h3,
.contact-box h3{
margin-bottom:18px;
font-size:24px;
}

.service-card p,
.why-card p,
.contact-box p,
.about-section p{
line-height:1.8;
color:#d0d0d0;
}

.about-section p{
margin-top:20px;
font-size:20px;
}

.quote-form{
max-width:850px;
margin:60px auto 0;
display:flex;
flex-direction:column;
gap:20px;
}

.quote-form input,
.quote-form textarea{
background:#081423;
border:1px solid rgba(13,110,253,.3);
padding:18px;
border-radius:14px;
color:white;
font-size:16px;
font-family:'Montserrat',sans-serif;
}

.quote-form textarea{
min-height:180px;
resize:vertical;
}

.quote-form button{
background:#0d6efd;
border:none;
padding:18px;
border-radius:14px;
color:white;
font-size:18px;
font-weight:700;
cursor:pointer;
transition:.35s;
}

.quote-form button:hover{
transform:translateY(-4px);
box-shadow:0 0 25px rgba(13,110,253,.45);
}

.contact-box a{
color:white;
text-decoration:none;
}

footer{
padding:45px;
text-align:center;
border-top:1px solid rgba(255,255,255,.08);
color:#9f9f9f;
}

.footer-socials{
display:flex;
justify-content:center;
gap:30px;
margin-bottom:20px;
}

.footer-socials a{
color:white;
text-decoration:none;
font-weight:600;
transition:.3s;
}

.footer-socials a:hover{
color:#0d6efd;
}

.floating-call{
position:fixed;
bottom:20px;
right:20px;
background:#0d6efd;
color:white;
padding:16px 22px;
border-radius:999px;
font-weight:700;
text-decoration:none;
box-shadow:0 0 25px rgba(13,110,253,.45);
z-index:9999;
transition:.35s;
}

@media(max-width:950px){

.hero{
flex-direction:column;
text-align:center;
padding:60px 25px;
}

.hero-left h1{
font-size:52px;
}

.hero-left p{
font-size:18px;
margin:auto;
}

.hero-buttons{
justify-content:center;
}

.navbar{
padding:18px 20px;
}

.nav-logo{
height:72px;
}

nav{
display:none;
}

.hero-image{
margin-top:20px;
}

.services-section,
.why-section,
.about-section,
.contact-section{
padding:80px 25px;
}

.services-section h2,
.why-section h2,
.about-section h2,
.contact-section h2{
font-size:34px;
}

.floating-call{
bottom:15px;
right:15px;
padding:14px 18px;
}

}
