
:root { --primary:#004080; --gray:#6c757d; }
body { font-family: 'Segoe UI', system-ui, -apple-system, Roboto, Arial, sans-serif; padding-top:72px; }

.navbar.scrolled { background: var(--primary) !important; transition: background .3s ease; }
.navbar.scrolled .nav-link { color:#fff !important; }

.hero { position:relative; height: 70vh; display:flex; align-items:center; color:#fff; text-align:center; background-size:cover; background-position:center; }
.hero::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,.5); }
.hero > .container { position:relative; z-index:1; }
.hero h1, .hero p { opacity:0; transform: translateY(20px); transition: all 1s ease; }
.hero.loaded h1, .hero.loaded p { opacity:1; transform: translateY(0); }

.section-title { font-weight:700; margin-bottom:1rem; }
.card { border-radius:12px; transition: transform .4s ease, box-shadow .4s ease; opacity:0; transform: translateY(20px); }
.card:hover { transform: translateY(-6px) scale(1.02); box-shadow:0 10px 25px rgba(0,0,0,.15); }
.card.card-animate { opacity:1; transform: translateY(0); }

.timeline { list-style:none; padding-left:0; }
.timeline li { padding:10px 0; border-left:3px solid var(--primary); margin-left:20px; position:relative; }
.timeline li::before { content:''; position:absolute; left:-8px; top:5px; width:12px; height:12px; background:var(--primary); border-radius:50%; }

.list-group-item { font-weight:500; }
.table thead { background:#004080; color:#fff; }
#apply { position:relative; color:#fff; }
#apply::after { content:''; position:absolute; inset:0; background:rgba(0,0,0,.55); }
#apply .container { position:relative; z-index:2; }
iframe { border-radius:10px; box-shadow:0 4px 12px rgba(0,0,0,.1); }

.back-to-top { width:48px; height:48px; }
.back-to-top:hover { background:#f4b400 !important; }

@media (max-width: 767px) {
  .hero { height: 55vh; }
  .hero h1 { font-size:2rem; }
  .hero p { font-size:1rem; }
}
