*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter',sans-serif;
    color:#111827;
    line-height:1.6;
}

h1,h2,h3{
    font-family:'Poppins',sans-serif;
}

section{
    width:100%;
}


/* NAVIGATION */

.navbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:25px 8%;
    background:white;
    position:sticky;
    top:0;
    z-index:1000;
}

.logo{
    font-size:28px;
    font-weight:700;
    color:#2563eb;
}

.nav-links{
    display:flex;
    gap:30px;
    list-style:none;
}

.nav-links a{
    text-decoration:none;
    color:#111827;
}


/* HERO */

.hero{

min-height:90vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:60px 10%;
background:linear-gradient(135deg,#eff6ff,#ffffff);

}

.hero-content{

max-width:850px;

}

.hero h1{

font-size:64px;
line-height:1.1;
margin-bottom:25px;

}

.hero p{

font-size:22px;
max-width:750px;
margin:0 auto 35px;
color:#4b5563;

}

.hero-buttons{

display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;

}


.primary-btn,
.secondary-btn{

padding:15px 35px;
border-radius:999px;
text-decoration:none;
font-weight:600;

}

.primary-btn{

background:#2563eb;
color:white;

}

.secondary-btn{

border:2px solid #2563eb;
color:#2563eb;

}


/* GENERAL SECTION HEADER */

.section-header{

text-align:center;
margin-bottom:60px;

}

.section-header h2{

font-size:42px;
margin-bottom:15px;

}

.section-header p{

color:#6b7280;
font-size:18px;

}/* SERVICES SECTION */

.services{

padding:100px 8%;
background:white;

}


.services-container{

display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
max-width:1200px;
margin:auto;

}


.service-card{

background:#f8fafc;
padding:35px;
border-radius:24px;
text-align:center;

}


.service-card h3{

font-size:24px;
margin-bottom:15px;

}


.service-card p{

color:#6b7280;
line-height:1.7;

}/* ABOUT SECTION */


.about-section{

padding:120px 8%;

background:#f8fafc;

}


.about-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}


.about-text h2{

font-size:42px;

margin-bottom:25px;

}


.about-text p{

font-size:18px;

color:#6b7280;

line-height:1.8;

margin-bottom:20px;

}


.about-box{

background:white;

padding:40px;

border-radius:25px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}


.about-box h3{

font-size:28px;

margin-bottom:25px;

}


.about-box ul{

list-style:none;

}


.about-box li{

font-size:18px;

margin-bottom:18px;

color:#374151;

}/* PRICING SECTION */


.pricing-section{

padding:120px 8%;

background:white;

}


.pricing-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}


.price-card{

background:#f8fafc;

padding:40px;

border-radius:25px;

text-align:center;

}


.price-card h3{

font-size:28px;

margin-bottom:20px;

}


.price{

font-size:48px;

font-weight:700;

color:#2563eb;

margin-bottom:15px;

}


.price-card p{

color:#6b7280;

margin-bottom:25px;

}


.price-card ul{

list-style:none;

margin-bottom:30px;

}


.price-card li{

margin-bottom:12px;

color:#374151;

}


.price-card.featured{

background:#2563eb;

color:white;

transform:translateY(-15px);

}


.price-card.featured .price{

color:white;

}


.price-card.featured p,

.price-card.featured li{

color:white;

}


@media(max-width:900px){

.pricing-container{

grid-template-columns:1fr;

}


.price-card.featured{

transform:none;

}

}/* FAQ SECTION */


.faq-section{

padding:120px 8%;

background:#f8fafc;

}


.faq-container{

max-width:900px;

margin:auto;

}


.faq-item{

background:white;

padding:30px;

border-radius:20px;

margin-bottom:20px;

}


.faq-item h3{

font-size:22px;

margin-bottom:12px;

}


.faq-item p{

color:#6b7280;

font-size:17px;

line-height:1.7;

}/* CONTACT SECTION */


.contact-section{

padding:120px 8%;

background:white;

}


.contact-container{

max-width:1100px;

margin:auto;

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:start;

}


.contact-info h3{

font-size:36px;

margin-bottom:20px;

}


.contact-info p{

font-size:18px;

color:#6b7280;

line-height:1.7;

margin-bottom:20px;

}


.contact-details p{

color:#374151;

margin-bottom:15px;

}



.contact-form{

background:#f8fafc;

padding:40px;

border-radius:25px;

}


.contact-form form{

display:flex;

flex-direction:column;

gap:15px;

}


.contact-form label{

font-weight:600;

}


.contact-form input,
.contact-form textarea{

padding:15px;

border:1px solid #d1d5db;

border-radius:12px;

font-size:16px;

}


.contact-form textarea{

height:130px;

resize:none;

}


.contact-form button{

margin-top:10px;

padding:16px;

border:none;

border-radius:999px;

background:#2563eb;

color:white;

font-size:16px;

font-weight:600;

cursor:pointer;

}


@media(max-width:900px){

.contact-container{

grid-template-columns:1fr;

}

}/* FOOTER */


.footer{

background:#111827;

color:white;

padding:70px 8% 30px;

}


.footer-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:2fr 1fr 1fr;

gap:50px;

}


.footer h2{

font-size:32px;

margin-bottom:15px;

}


.footer h3{

margin-bottom:20px;

}


.footer p{

color:#d1d5db;

line-height:1.7;

}


.footer ul{

list-style:none;

}


.footer li{

color:#d1d5db;

margin-bottom:12px;

}


.copyright{

text-align:center;

border-top:1px solid #374151;

margin-top:50px;

padding-top:25px;

color:#9ca3af;

}



@media(max-width:900px){

.footer-container{

grid-template-columns:1fr;

}

}/* FLOATING CALL BUTTON */


.floating-call{

position:fixed;

bottom:25px;

right:25px;

background:#2563eb;

color:white;

padding:16px 25px;

border-radius:999px;

font-size:18px;

font-weight:600;

text-decoration:none;

box-shadow:0 10px 25px rgba(0,0,0,.2);

z-index:999;

transition:.3s;

}


.floating-call:hover{

transform:translateY(-3px);

}


/* MOBILE SIZE */

@media(max-width:600px){

.floating-call{

bottom:20px;

right:20px;

padding:14px 20px;

font-size:16px;

}

}/* MOBILE NAVIGATION */


.menu-toggle{

display:none;

font-size:30px;

cursor:pointer;

}



@media(max-width:900px){


.navbar{

position:relative;

}


.menu-toggle{

display:block;

}


.nav-links{

position:absolute;

top:80px;

left:0;

width:100%;

background:white;

display:none;

flex-direction:column;

align-items:center;

padding:30px 0;

box-shadow:0 10px 20px rgba(0,0,0,.1);

}


.nav-links.active{

display:flex;

}


.nav-links li{

margin:15px 0;

}


}/* SERVICE AREA SECTION */


.service-area{

padding:100px 8%;

background:#f8fafc;

}


.cities-container{

max-width:1000px;

margin:auto;

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}


.city-card{

background:white;

padding:25px;

border-radius:20px;

text-align:center;

font-size:18px;

font-weight:600;

box-shadow:0 10px 25px rgba(0,0,0,.06);

}



@media(max-width:900px){

.cities-container{

grid-template-columns:repeat(2,1fr);

}

}


@media(max-width:500px){

.cities-container{

grid-template-columns:1fr;

}

}