/* Custom brand styles */
:root{
  --brand-yellow:#f8d21f;
  --brand-dark:#1d1d1f;
  --brand-gray:#6b7280;
  --brand-light:#fafafa;
}
html{scroll-behavior:smooth}
body{color:#1f2937;background:#ffffff}
.navbar{box-shadow:0 10px 20px rgba(0,0,0,.05)}
.navbar-brand{font-weight:800;letter-spacing:.5px}
.navbar .nav-link{font-weight:600}
.hero{
  background:linear-gradient(135deg, rgba(248,210,31,.15), rgba(0,0,0,.02)), url('assets/hero-pattern.svg');
  background-size:cover;
  border-bottom:6px solid var(--brand-yellow);
}
.hero .display-5{font-weight:800}
.badge-brand{background:var(--brand-yellow);color:#111}
.section-title{font-weight:800}
.footer{background:#0f172a;color:#e5e7eb}
.footer a{color:#facc15;text-decoration:none}
.card{border:none;border-radius:1rem;box-shadow:0 10px 25px rgba(2,6,23,.06)}
.card .card-title{font-weight:700}
.timeline{border-left:3px solid var(--brand-yellow);padding-left:1rem}
/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(12px);transition:all .6s ease}
.reveal.visible{opacity:1;transform:none}
/* Responsive tweaks */
@media (min-width: 576px){
  .hero{padding:4rem 0}
}
@media (min-width: 768px){
  .hero{padding:6rem 0}
}
@media (min-width: 992px){
  .hero{padding:7rem 0}
}