:root{
  --c-accent:#0090C9;
  --c-primary:#00478A;
  --c-gray-l:#B3B3B8;
  --c-gray-d:#636266;
  --c-black:#0B0B0F;
  --c-wa:#25D366;
}
body{font-family:'Segoe UI',system-ui,-apple-system,Roboto,sans-serif;color:var(--c-black);scroll-behavior:smooth}
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:80px}
a{color:var(--c-primary)}
.text-accent{color:var(--c-accent)}
.text-primary-dark{color:var(--c-primary)}
.navbar .nav-link{color:var(--c-gray-d);font-weight:500}
.nav-wrap{padding-top:.9rem;z-index:1030}
.nav-pill{border-radius:50rem;padding:.35rem 1rem}
.nav-pill .navbar-brand img{height:48px;width:auto}
.nav-pill .btn{border-radius:50rem}
@media(max-width:991px){.nav-pill{border-radius:1.5rem}}
main>section:first-child:not(.hero),main>article:first-child{padding-top:8rem!important}
.navbar .nav-link:hover{color:var(--c-accent)}

.btn-wa{background:var(--c-wa);border-color:var(--c-wa);color:#fff;font-weight:600}
.btn-wa:hover{background:#1ebe5b;border-color:#1ebe5b;color:#fff}
.btn-primary-dark{background:var(--c-primary);border-color:var(--c-primary);color:#fff}
.btn-primary-dark:hover{background:var(--c-accent);border-color:var(--c-accent);color:#fff}
.btn-outline-primary-dark{border-color:var(--c-primary);color:var(--c-primary)}
.btn-outline-primary-dark:hover{background:var(--c-primary);color:#fff}

.hero{min-height:100vh;padding:9rem 0 3rem;background:linear-gradient(rgba(0,40,80,.78),rgba(0,71,138,.72)),var(--hero-img) center/cover no-repeat,var(--c-primary)}
.hero .btn{border-radius:50rem}
.bg-accent{background:var(--c-accent)!important;color:#fff}
.hero-bar{background:rgba(0,20,45,.65);backdrop-filter:blur(6px);border-radius:1rem;padding:1.5rem}
.hero-bar .ico{flex:0 0 48px;width:48px;height:48px;border-radius:.75rem;background:rgba(0,144,201,.3);display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#7dd3f5}
.years-badge{position:absolute;right:1.5rem;bottom:-1.5rem;background:var(--c-accent);color:#fff;border-radius:.75rem;padding:.9rem 1.2rem;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.2)}
.years-badge strong{display:block;font-size:2rem;line-height:1}
.dept-card{border:0;border-radius:1rem;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.08)}
.dept-card img{height:150px;object-fit:cover}
.dept-ico{width:52px;height:52px;border-radius:50%;background:var(--c-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin:-26px 0 .75rem 1.25rem;position:relative;border:3px solid #fff}
.dept-link{font-weight:600;text-decoration:none;color:var(--c-accent);cursor:pointer}
.section-title{color:var(--c-primary);font-weight:700;position:relative;padding-bottom:.6rem;margin-bottom:1.2rem}
.section-title::after{content:"";display:block;width:60px;height:4px;background:var(--c-accent);border-radius:4px;margin-top:.5rem}
.text-center.section-title::after{margin-left:auto;margin-right:auto}
.icon-lg{font-size:2.2rem;color:var(--c-accent)}

.card-team{border-radius:1rem;overflow:hidden}
.team-photo{position:relative}
.team-photo img{height:280px;width:100%;object-fit:cover}
.team-photo .badge{position:absolute;top:.8rem;right:.8rem;background:var(--c-accent);font-weight:600}
.badge-conv{background:#e8f4fb;color:var(--c-primary);font-weight:500;padding:.5em .8em}
.accordion-button:not(.collapsed){background:#e8f4fb;color:var(--c-primary)}
.cta{background:linear-gradient(135deg,var(--c-black),var(--c-primary))}
.contact-list li{display:flex;gap:.75rem;margin-bottom:1rem}
.contact-list i{color:var(--c-accent);font-size:1.2rem}

.footer{background:#f1f7fa;color:var(--c-gray-d)}
.footer h5,.footer h6{color:var(--c-primary);font-weight:700}
.footer a{color:var(--c-gray-d);text-decoration:none}
.footer a:hover{color:var(--c-accent)}

.wa-float{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;background:var(--c-wa);color:#fff;font-size:30px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:1050;text-decoration:none;animation:pulse 2s infinite}
.wa-float:hover{color:#fff;transform:scale(1.08)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)}70%{box-shadow:0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

.post-content img{max-width:100%;height:auto;border-radius:.75rem}
.post-content h2{color:var(--c-primary);margin-top:1.8rem}
