*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#f5f8ff;
color:#333;
line-height:1.7;
overflow-x:hidden;
}

/* HERO */

.hero{
background:linear-gradient(135deg,#003DA6,#00C9A7);
color:#fff;
text-align:center;
padding:20px 10px;
}

.hero h1{
font-size:clamp(32px,5vw,55px);
margin-bottom:12px;
font-weight:700;
line-height:1.2;
}

.hero p{
max-width:750px;
margin:auto;
opacity:.95;
font-size:16px;
}

/* CONTAINER */

.container{
max-width:1200px;
margin:45px auto;
padding:0 20px;
}

/* GRID */

.tools-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:25px;
}

/* CARD */

.tool-card{
background:#fff;
border-radius:20px;
padding:30px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.3s ease;
position:relative;
overflow:hidden;
}

.tool-card:hover{
transform:translateY(-6px);
box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.tool-icon{
font-size:45px;
margin-bottom:15px;
line-height:1;
}

.tool-card h2{
color:#003DA6;
font-size:24px;
margin-bottom:12px;
font-weight:600;
line-height:1.3;
}

.tool-card p{
color:#666;
margin-bottom:20px;
font-size:15px;
}

.tool-btn{
display:inline-flex;
align-items:center;
justify-content:center;
background:#003DA6;
color:#fff;
padding:12px 22px;
border-radius:10px;
text-decoration:none;
font-weight:600;
transition:.3s;
min-height:46px;
}

.tool-btn:hover{
background:#002a75;
transform:translateY(-2px);
}

/* INFO */

.info-box{
margin-top:40px;
background:#fff;
padding:35px;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.info-box h2{
color:#003DA6;
margin-bottom:15px;
font-size:28px;
}

.info-box p{
color:#555;
}

/* FOOTER */

.footer{
background:#0c1527;
color:#fff;
text-align:center;
padding:35px 20px;
margin-top:60px;
}

.footer p{
opacity:.9;
}

/* =========================
TABLET
========================= */

@media (max-width:992px){

.hero{
padding:45px 20px;
}

.tools-grid{
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
}

.tool-card{
padding:25px;
}

}

/* =========================
MOBILE
========================= */

@media (max-width:768px){

.hero{
padding:40px 18px;
}

.hero h1{
font-size:30px;
margin-bottom:10px;
}

.hero p{
font-size:15px;
}

.container{
padding:0 15px;
margin:30px auto;
}

.tools-grid{
grid-template-columns:1fr;
gap:18px;
}

.tool-card{
padding:22px;
border-radius:18px;
}

.tool-icon{
font-size:38px;
}

.tool-card h2{
font-size:22px;
}

.tool-card p{
font-size:14px;
}

.tool-btn{
width:100%;
padding:13px;
font-size:15px;
}

.info-box{
padding:22px;
border-radius:18px;
}

.info-box h2{
font-size:24px;
}

.footer{
padding:28px 15px;
margin-top:40px;
}

}

/* =========================
SMALL MOBILE
========================= */

@media (max-width:480px){

.hero{
padding:35px 15px;
}

.hero h1{
font-size:26px;
}

.hero p{
font-size:14px;
}

.container{
padding:0 12px;
}

.tool-card{
padding:18px;
}

.tool-icon{
font-size:34px;
}

.tool-card h2{
font-size:20px;
}

.tool-btn{
font-size:14px;
min-height:48px;
}

.info-box{
padding:18px;
}

.info-box h2{
font-size:22px;
}

}

/* TOUCH DEVICES */
@media (hover:none){

.tool-card:hover{
transform:none;
}

.tool-btn:hover{
transform:none;
}

}