:root{
  --lgal-blue:#0b3d91;
  --lgal-green:#0aa04f;
  --lgal-dark:#0b1320;
  --lgal-muted:#6b7280;
}

body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  color:#111827;
}

a{color:var(--lgal-blue);} 
a:hover{color:#083170;}

.navbar{box-shadow:0 2px 14px rgba(0,0,0,.06);} 
.brand-mark{height:40px;width:auto;}

.hero{
  background:linear-gradient(110deg, rgba(11,61,145,.96), rgba(10,160,79,.86));
  color:#fff;
}
.hero .lead{color:rgba(255,255,255,.92);}

.section-title{letter-spacing:.02em;}

.badge-soft{
  background:rgba(10,160,79,.12);
  color:var(--lgal-green);
  border:1px solid rgba(10,160,79,.25);
}

.card{border:1px solid rgba(17,24,39,.08); box-shadow:0 6px 22px rgba(0,0,0,.05);} 

.btn-primary{
  background:var(--lgal-blue);
  border-color:var(--lgal-blue);
}
.btn-primary:hover{background:#083170;border-color:#083170;}

.btn-success{
  background:var(--lgal-green);
  border-color:var(--lgal-green);
}
.btn-success:hover{background:#078243;border-color:#078243;}

.footer{
  background:#0b1320;
  color:rgba(255,255,255,.86);
}
.footer a{color:rgba(255,255,255,.86);}
.footer a:hover{color:#fff;}

.avatar{
  width:120px;
  height:120px;
  border-radius:16px;
  object-fit:cover;
  border:1px solid rgba(17,24,39,.12);
}

.portrait{
  width:100%;
  max-width:520px;
  border-radius:18px;
  object-fit:cover;
  border:1px solid rgba(17,24,39,.12);
}

.small-muted{color:var(--lgal-muted);}
