body{
margin:0;
font-family:Inter, sans-serif;
color:#333;
background:#fafafa;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.navbar{
background:#111;
color:white;
padding:15px 0;
}

.nav-wrapper{
display:flex;
justify-content:space-between;
align-items:center;
}

nav a{
color:white;
margin-left:20px;
text-decoration:none;
font-size:14px;
}

.portal-btn{
background:#caa24d;
padding:8px 15px;
border-radius:5px;
}

.hero{
background:linear-gradient(rgba(0,0,0,0.6),rgba(0,0,0,0.6)),url('law-bg.jpg');
background-size:cover;
color:white;
padding:120px 0;
text-align:center;
}

.hero h1{
font-family:Playfair Display;
font-size:42px;
}

.primary-btn{
background:#caa24d;
padding:12px 25px;
text-decoration:none;
color:white;
border-radius:5px;
}

.secondary-btn{
border:1px solid white;
padding:12px 25px;
text-decoration:none;
color:white;
margin-left:10px;
}

.about{
padding:80px 0;
text-align:center;
}

.services{
background:white;
padding:80px 0;
}

.services-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
margin-top:40px;
}

.service-card{
padding:25px;
background:#f4f4f4;
border-radius:8px;
}

.process{
padding:80px 0;
background:#fafafa;
}

.process-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:30px;
}

.step span{
font-size:28px;
font-weight:bold;
color:#caa24d;
}

.cta{
background:#111;
color:white;
text-align:center;
padding:80px 0;
}

.contact{
padding:80px 0;
}

.contact-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
}

input,textarea{
width:100%;
padding:10px;
margin-bottom:15px;
border:1px solid #ddd;
}

button{
background:#caa24d;
color:white;
padding:12px;
border:none;
width:100%;
}

footer{
background:#111;
color:white;
text-align:center;
padding:20px;
}