*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Poppins,sans-serif;
}

body{
background:#ffffff;
color:#111827;
}

header{

padding:20px 8%;
border-bottom:1px solid #ececec;

}

nav{

display:flex;
justify-content:space-between;
align-items:center;

}

.logo{

font-size:24px;
font-weight:700;

}

.logo span{

color:#D62828;

}

.btn-nav{

background:#D62828;
padding:12px 25px;
color:white;
text-decoration:none;
border-radius:8px;

}

.hero{

display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
padding:80px 8%;
gap:60px;

}

.hero h1{

font-size:55px;
line-height:1.2;

}

.hero p{

margin:25px 0;
font-size:20px;
color:#555;

}

.buttons{

display:flex;
gap:20px;

}

.btn-primary{

background:#D62828;
padding:16px 30px;
color:white;
text-decoration:none;
border-radius:8px;

}

.btn-secondary{

border:2px solid #D62828;
padding:16px 30px;
color:#D62828;
text-decoration:none;
border-radius:8px;

}

.hero img{

width:100%;
border-radius:20px;

}

.services{

padding:100px 8%;
background:#F8F9FA;

}

.services h2{

text-align:center;
margin-bottom:60px;

}

.cards{

display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;

}

.card{

background:white;
padding:40px;
border-radius:16px;
box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.contact{

padding:100px 8%;

}

.contact h2{

margin-bottom:40px;

}

form{

display:flex;
flex-direction:column;
gap:20px;

max-width:600px;

}

input,textarea{

padding:16px;
border:1px solid #ddd;
border-radius:8px;

}

button{

background:#D62828;
color:white;
padding:18px;
border:none;
border-radius:8px;
cursor:pointer;

}

footer{

padding:40px;
text-align:center;
background:#111827;
color:white;

}

@media(max-width:900px){

.hero{

grid-template-columns:1fr;

}

.cards{

grid-template-columns:1fr;

}

.hero h1{

font-size:38px;

}

}