/* Fonts set via Google Fonts in HTML */
:root{
  --primary:#1d4ed8;
  --dark:#0b3a8c;
  --muted:#64748b;
}

.nav-link:hover{
color: #1493ce !important;
}

/* basic reset */
*{box-sizing:border-box}
body{font-family:'Open Sans', Arial, sans-serif;background:#f7fafc;color:#334155;line-height:1.6;margin:0;padding-top:72px}

/* navbar */
.navbar { transition: background 0.3s, box-shadow 0.3s; }
.navbar.scrolled { background: #ffffff; box-shadow: 0 6px 20px rgba(15,23,42,0.06); }

/* logo sizes */
.logo-sm{height:40px;width:auto}
.hero-logo{width:180px;max-width:48%;}

/* hero */
.hero-section{background:linear-gradient(180deg, rgba(14,58,122,0.06), rgba(235,244,255,0.6));padding:100px 0 80px}
.hero-section h1{color:var(--dark)}
.lead{color:#334155}

/* cards */
.card{border-radius:12px}

/* counters section */
.bg-primary{background:linear-gradient(90deg,var(--primary),#2563eb);}

/* contact */
.contact-card .contact-info a{color:var(--primary);font-weight:600}

/* scroll to top */
#scrollTopBtn{position:fixed;right:20px;bottom:20px;display:none;border-radius:50%;width:56px;height:56px;z-index:9999}

/* responsive tweaks */
@media (max-width:768px){
  .hero-section{padding:60px 0}
  .hero-logo{width:120px}
}
