@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

/* Global Reset & Typography */
* { box-sizing: border-box; }
body { font-family: 'Poppins', sans-serif; margin: 0; color: #334155; background-color: #F8FAFC; line-height: 1.6; }
h1, h2, h3 { color: #0F172A; margin-bottom: 15px; }
p { margin-bottom: 15px; }

/* Top Bar & Navigation */
.top { background: #0F172A; color: #fff; padding: 10px 5%; text-align: center; font-size: 0.9em; font-weight: 300; letter-spacing: 0.5px; }
nav { display: flex; justify-content: space-between; align-items: center; padding: 15px 5%; background: #ffffff; box-shadow: 0 4px 12px rgba(0,0,0,0.05); position: sticky; top: 0; z-index: 100; }
nav img { height: 70px; transition: transform 0.3s ease; }
nav img:hover { transform: scale(1.05); }
.menu a { margin: 0 15px; text-decoration: none; color: #1E40AF; font-weight: 600; transition: color 0.3s ease; position: relative; }
.menu a:hover { color: #F59E0B; }
.menu a::after { content: ''; display: block; width: 0; height: 2px; background: #F59E0B; transition: width 0.3s; position: absolute; bottom: -5px; }
.menu a:hover::after { width: 100%; }

/* Hero Section */
.hero { background: linear-gradient(135deg, rgba(30,64,175,0.95), rgba(37,99,235,0.85)), url('../images/hero-bg.jpg') center/cover; color: #fff; padding: 120px 20px; text-align: center; }
.hero h1 { color: #fff; font-size: 3rem; margin-bottom: 10px; font-weight: 700; text-shadow: 2px 2px 4px rgba(0,0,0,0.3); }
.hero p { font-size: 1.2rem; margin-bottom: 30px; font-weight: 300; }

/* Buttons */
.btn { background: #F59E0B; color: #fff; padding: 14px 32px; border-radius: 50px; text-decoration: none; font-weight: 600; display: inline-block; transition: all 0.3s ease; box-shadow: 0 4px 6px rgba(245, 158, 11, 0.3); }
.btn:hover { background: #D97706; transform: translateY(-3px); box-shadow: 0 6px 12px rgba(245, 158, 11, 0.4); }

/* Layout Containers */
.container { max-width: 1200px; margin: auto; padding: 80px 20px; }
.section-title { text-align: center; margin-bottom: 50px; font-size: 2.2rem; color: #1E40AF; position: relative; }
.section-title::after { content: ''; width: 60px; height: 4px; background: #F59E0B; display: block; margin: 15px auto 0; border-radius: 2px; }

/* Grids & Cards */
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.card { background: #fff; padding: 35px; box-shadow: 0 10px 25px rgba(0,0,0,0.05); border-radius: 16px; transition: transform 0.3s ease, box-shadow 0.3s ease; border-top: 5px solid #2563EB; }
.card:hover { transform: translateY(-10px); box-shadow: 0 15px 35px rgba(0,0,0,0.1); }
.card h3 { color: #1E40AF; font-size: 1.4rem; }
.card i { font-size: 2.5rem; color: #F59E0B; margin-bottom: 15px; display: block; }

/* Text Content Sections */
.content-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; margin-bottom: 60px; }
.content-box { background: #fff; padding: 40px; border-radius: 16px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.highlight-text { font-size: 1.1rem; color: #1E40AF; font-weight: 600; border-left: 4px solid #F59E0B; padding-left: 15px; margin: 20px 0; }

/* Footer */
footer { background: #0F172A; color: #94A3B8; text-align: center; padding: 40px 20px; font-size: 0.9rem; border-top: 4px solid #F59E0B; }
footer a { color: #F59E0B; text-decoration: none; }
footer a:hover { color: #fff; }

/* Responsive adjustments */
@media (max-width: 768px) {
    nav { flex-direction: column; padding: 15px; }
    .menu { margin-top: 15px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
    .menu a { margin: 5px; font-size: 0.9rem; }
    .content-grid { grid-template-columns: 1fr; }
    .hero h1 { font-size: 2.2rem; }
}