*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Inter',sans-serif;
background:#fff;
color:#1F2937;
line-height:1.7;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

h1,h2,h3{
font-family:'Poppins',sans-serif;
}

a{
text-decoration:none;
}

/* NAVBAR */

nav{
background:#fff;
border-bottom:1px solid #eee;
position:sticky;
top:0;
z-index:999;
}

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 0;
}

.logo{
font-size:28px;
font-weight:700;
color:#0057D9;
}

.logo span{
color:#0A2540;
}

nav ul{
display:flex;
gap:30px;
list-style:none;
}

nav a{
color:#475569;
font-weight:500;
}

.active{
color:#0057D9;
}

.btn{
background:#0057D9;
color:#fff;
padding:14px 28px;
border-radius:8px;
font-weight:600;
}

/* HERO */

.hero{
background:#F8FAFC;
padding:100px 0;
text-align:center;
}

.badge{
display:inline-block;
background:#EAF2FF;
color:#0057D9;
padding:8px 18px;
border-radius:30px;
font-size:14px;
font-weight:600;
margin-bottom:20px;
}

.hero h1{
font-size:54px;
margin-bottom:20px;
}

.hero span{
color:#0057D9;
}

.hero p{
max-width:700px;
margin:auto;
color:#64748B;
}

/* CONTACT */

.section{
padding:90px 0;
}

.contact-grid{
display:grid;
grid-template-columns:2fr 1fr;
gap:50px;
}

.contact-form{
background:#fff;
padding:40px;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.contact-form h2{
margin-bottom:30px;
}

.row{
display:grid;
grid-template-columns:1fr 1fr;
gap:20px;
}

.input-group{
margin-bottom:22px;
}

label{
display:block;
margin-bottom:8px;
font-weight:600;
}

input,
select,
textarea{
width:100%;
padding:15px;
border:1px solid #D1D5DB;
border-radius:8px;
font-size:15px;
font-family:inherit;
}

input:focus,
select:focus,
textarea:focus{
outline:none;
border-color:#0057D9;
}

button{
background:#0057D9;
color:#fff;
padding:16px 32px;
border:none;
border-radius:8px;
cursor:pointer;
font-size:16px;
font-weight:600;
}

.contact-info{
display:flex;
flex-direction:column;
gap:20px;
}

.info-card{
background:#F8FAFC;
padding:25px;
border-radius:15px;
border-left:4px solid #0057D9;
}

/* MAP */

.map-section{
padding:80px 0;
background:#F8FAFC;
text-align:center;
}

.map-placeholder{
margin-top:30px;
height:350px;
background:#fff;
border:2px dashed #CBD5E1;
display:flex;
align-items:center;
justify-content:center;
border-radius:16px;
color:#64748B;
}

/* FAQ */

.faq{
padding:90px 0;
}

.faq h2{
text-align:center;
margin-bottom:50px;
}

.faq-list{
max-width:900px;
margin:auto;
display:flex;
flex-direction:column;
gap:20px;
}

.faq-item{
padding:25px;
border:1px solid #E5E7EB;
border-radius:12px;
}

.faq-item h3{
margin-bottom:10px;
}

/* CTA */

.cta{
padding:90px 0;
background:#0057D9;
color:#fff;
text-align:center;
}

.cta p{
max-width:650px;
margin:20px auto 35px;
}

.white-btn{
display:inline-block;
background:#fff;
color:#0057D9;
padding:16px 35px;
border-radius:8px;
font-weight:600;
}

/* FOOTER */

footer{
background:#0A2540;
color:#fff;
text-align:center;
padding:30px;
}

/* RESPONSIVE */

@media(max-width:992px){

.contact-grid,
.row{
grid-template-columns:1fr;
}

nav ul{
display:none;
}

.hero h1{
font-size:40px;
}
}