:root{
  --hevaro-azul:#002B73;
  --hevaro-verde:#00BFA6;
  --hevaro-blanco:#ffffff;
  --hevaro-azul-osc:#001E50;
}

body{ background-color:#f8fafc; }
a{ color:var(--hevaro-verde); }
a:hover{ color:#06d2bd; }

.platform-brand{
  display:inline-flex;
  align-items:center;
  gap:.72rem;
  min-width:0;
  max-width:100%;
  text-decoration:none;
}

.platform-brand.is-logo-only{
  gap:0;
}

.platform-brand-logo{
  display:block;
  width:auto;
  height:34px;
  max-width:160px;
  object-fit:contain;
}

.platform-brand-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.15rem;
  line-height:1;
  flex-shrink:0;
}

.platform-brand-copy{
  display:flex;
  align-items:baseline;
  gap:.42rem;
  min-width:0;
}

.platform-brand-title{
  font-family:"Fraunces", serif;
  font-size:1.08rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.01em;
  white-space:nowrap;
}

.platform-brand-subtitle{
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  opacity:.78;
  white-space:nowrap;
}

.auth-brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  color:var(--hevaro-azul-osc);
  text-decoration:none;
}

.auth-brand.is-logo-only{
  gap:0;
}

.auth-brand-logo{
  display:block;
  width:auto;
  height:54px;
  max-width:220px;
  object-fit:contain;
}

.auth-brand-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.75rem;
  line-height:1;
}

.auth-brand-copy{
  display:flex;
  align-items:baseline;
  gap:.5rem;
}

.auth-brand-title{
  font-family:"Fraunces", serif;
  font-size:2rem;
  font-weight:700;
  line-height:1;
}

.auth-brand-subtitle{
  color:#5a7490;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.navbar-hevaro {
  background: var(--hevaro-azul) !important;
}
.navbar-hevaro .navbar-brand,
.navbar-hevaro .nav-link,
.navbar-hevaro .dropdown-toggle{
  color: var(--hevaro-blanco) !important;
}
.navbar-hevaro .nav-link:hover,
.navbar-hevaro .nav-item.active .nav-link{
  color: var(--hevaro-verde) !important;
}

.btn-hevaro {
  background: var(--hevaro-verde);
  color:#073b4c;
  border:none;
}
.btn-hevaro:hover { filter: brightness(1.05); }

.btn-outline-hevaro {
  border:2px solid var(--hevaro-verde);
  color: var(--hevaro-verde);
}
.btn-outline-hevaro:hover{
  background: var(--hevaro-verde);
  color:#073b4c;
}

.card-hevaro {
  border:0;
  border-radius:16px;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.card-hevaro .card-header{
  background: linear-gradient(90deg,var(--hevaro-azul), var(--hevaro-azul-osc));
  color: var(--hevaro-blanco);
  border-top-left-radius:16px;
  border-top-right-radius:16px;
}

.badge-hevaro { background: var(--hevaro-verde); color:#073b4c; }
.form-control:focus, .form-select:focus{
  border-color: var(--hevaro-verde);
  box-shadow: 0 0 0 .2rem rgba(0,191,166,.25);
}
.link-hevaro { color: var(--hevaro-verde); text-decoration:none; }
.link-hevaro:hover { text-decoration:underline; }
