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

body{
line-height:1.6;
}

.hero{
height:90vh;

background:
linear-gradient(
rgba(0,0,0,.45),
rgba(0,0,0,.45)
),
url("office.jpg");

 background-size: contain;
 background-repeat: no-repeat;
 background-position: center;
 background-color: white;

display:flex;
align-items:center;
justify-content:center;

text-align:center;
color:white;
}

.overlay{
max-width:700px;
}

.hero h1{
font-size:clamp(38px,7vw,58px);
}

.hero p{
margin:20px 0;
font-size:22px;
}

.btn{
display:inline-block;

background:#0057ff;

color:white;

padding:14px 28px;

text-decoration:none;

border-radius:8px;
}

section{
padding:70px 10%;
}

.cards{
display:grid;

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

gap:20px;
}

.card{
flex:1;

min-width:250px;

background:#f5f5f5;

padding:30px;

border-radius:12px;
}

.why ul{
margin-top:20px;
}

.why li{
margin:12px 0;
}

form{
max-width:500px;

display:flex;

flex-direction:column;

gap:15px;
}

input,
textarea{
padding:14px;

border:1px solid #ccc;

border-radius:8px;
}

button{
padding:14px;

background:#0057ff;

color:white;

border:none;

border-radius:8px;

cursor:pointer;
}

footer{
padding:30px;

text-align:center;

background:#111;

color:white;
}

/* ---------- MOBILE ---------- */

@media (max-width: 768px) {

.hero{
height:75vh;
padding:20px;
}

.hero h1{
font-size:38px;
line-height:1.2;
}

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

.btn{
padding:12px 22px;
}

section{
padding:50px 24px;
}

.cards{
flex-direction:column;
}

.card{
width:100%;
}

.why ul{
padding-left:0;
}

.why li{
list-style:none;
margin:16px 0;
}

form{
width:100%;
}

input,
textarea,
button{
width:100%;
font-size:16px;
}

footer{
font-size:14px;
}

}