.contact-section{
padding:40px 0;
}

.container{
max-width:1300px;
margin:auto;
padding:0 20px;
}

/* Header */

.contact-header{
max-width:1000px;
margin-bottom:60px;
}

.contact-header h2{
font-size:36px;
font-weight:700;
color:#0f2b46;
margin-bottom:15px;
}

.contact-header p{
font-size:16px;
color:#555;
line-height:1.7;
}

/* Grid */

.contact-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

/* Card */

.contact-card{
background:#f6f7f8;
padding:50px 30px;
border-radius:12px;
text-align:center;
}

/* Icon Shape */

.icon-wrapper{
position:relative;
width:90px;
height:90px;
margin:0 auto 25px;
}

.icon-bg{
position:absolute;
width:90px;
height:90px;
border-radius:22px 22px 22px 0px;
border:3px solid #1b314a;
top:12px;
left:12px;
}

.icon-front{
position:absolute;
width:90px;
height:90px;
background:#1b314a;
border-radius:22px 22px 22px 0px;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:28px;
}

/* Text */

.contact-card h3{
font-size:22px;
color:#0f2b46;
margin-bottom:10px;
}

.contact-card p{
font-size:16px;
color:#333;
line-height:1.6;
}

/* Responsive */

@media(max-width:900px){

.contact-grid{
grid-template-columns:1fr 1fr;
}

}

@media(max-width:600px){

.contact-grid{
grid-template-columns:1fr;
}

.contact-header h2{
font-size:28px;
}

}