/* =========================
   RESET
========================= */

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

body{
font-family:'Poppins',sans-serif;
background:#f9fafb;
color:#1f2937;
line-height:1.6;
overflow-x:hidden;
}

img{
max-width:100%;
height:auto;
display:block;
}

a{
text-decoration:none;
color:inherit;
}

.container{
width:92%;
max-width:1200px;
margin:auto;
}

/* =========================
   HEADER
========================= */

.header{
background:#fff;
position:sticky;
top:0;
z-index:100;
box-shadow:0 6px 25px rgba(0,0,0,.06);
}

.nav{
display:flex;
align-items:center;
justify-content:space-between;
padding:18px 0;
}

.logo{
font-size:26px;
font-weight:700;
}

.logo span{
color:#2563eb;
}

nav{
display:flex;
align-items:center;
}

nav a{
margin-left:26px;
font-weight:500;
color:#374151;
transition:.3s;
}

nav a:hover{
color:#2563eb;
}

/* =========================
   BUTTONS
========================= */

.btn{
background:#2563eb;
color:#fff;
padding:10px 20px;
border-radius:8px;
font-weight:500;
transition:.3s;
}

.btn:hover{
background:#1e4fd6;
}

.btn-outline{
border:2px solid #2563eb;
color:#2563eb;
padding:9px 20px;
border-radius:8px;
font-weight:500;
transition:.3s;
}

.btn-outline:hover{
background:#2563eb;
color:#fff;
}

/* =========================
   HERO
========================= */

.hero{
padding:90px 0 70px;
}

.hero-grid{
display:grid;
grid-template-columns:1.2fr 1fr;
gap:60px;
align-items:center;
}

.hero-content h1{
font-size:46px;
font-weight:700;
line-height:1.2;
}

.hero-content h1 span{
color:#2563eb;
}

.hero-content h2{
margin:14px 0;
font-size:22px;
color:#374151;
font-weight:500;
}

.hero-content p{
margin:22px 0 30px;
font-size:16px;
color:#4b5563;
max-width:620px;
}

.hero-actions a{
margin-right:12px;
}

/* Stats */

.hero-stats{
display:flex;
gap:20px;
margin-top:35px;
flex-wrap:wrap;
}

.hero-stats div{
background:#fff;
padding:16px 18px;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.05);
min-width:140px;
}

.hero-stats strong{
display:block;
font-size:20px;
color:#2563eb;
}

.hero-stats span{
font-size:13px;
color:#6b7280;
}

/* Image */

.hero-image{
display:flex;
justify-content:center;
}

.hero-image img{
max-width:360px;
border-radius:50%;
background:#fff;
padding:6px;
box-shadow:0 18px 50px rgba(0,0,0,.15);
}

/* =========================
   SECTIONS
========================= */

.section{
padding:80px 0;
}

.section-title{
font-size:34px;
font-weight:600;
margin-bottom:50px;
color:#111827;
}

/* =========================
   SERVICES
========================= */

.services{
padding:80px 0;
background:#fff;
}

.service-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.service-card{
background:#f9fafb;
padding:32px 28px;
border-radius:16px;
box-shadow:0 12px 35px rgba(0,0,0,.05);
transition:.35s;
}

.service-card:hover{
transform:translateY(-6px);
box-shadow:0 18px 45px rgba(0,0,0,.1);
}

.service-card h3,
.service-card h4{
font-size:20px;
margin-bottom:14px;
color:#111827;
}

.service-card p{
font-size:15px;
color:#4b5563;
}

/* =========================
   FOOTER
========================= */

.footer{
background:#fff;
padding:26px 0;
text-align:center;
font-size:14px;
color:#6b7280;
box-shadow:0 -6px 25px rgba(0,0,0,.05);
}

/* =========================
   MOBILE MENU
========================= */

.menu-toggle{
display:none;
flex-direction:column;
cursor:pointer;
}

.menu-toggle span{
height:3px;
width:25px;
background:#1f2937;
margin-bottom:5px;
border-radius:2px;
}

/* =========================
   TABLET
========================= */

@media(max-width:1024px){

.hero-grid{
grid-template-columns:1fr;
text-align:center;
}

.hero-content p{
margin-left:auto;
margin-right:auto;
}

.hero-stats{
justify-content:center;
}

}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

.menu-toggle{
display:flex;
}

nav{
position:absolute;
top:70px;
right:4%;
background:#fff;
width:92%;
max-width:320px;
border-radius:14px;
box-shadow:0 20px 50px rgba(0,0,0,.15);
padding:20px;
display:none;
flex-direction:column;
}

nav a{
margin:12px 0;
font-size:16px;
}

nav.show{
display:flex;
}

.hero-content h1{
font-size:36px;
}

.section-title{
text-align:center;
font-size:28px;
}

.service-grid{
grid-template-columns:1fr;
}

}
