:root {
  --aghora-azul: #1e3a5f;
  --aghora-azul-claro: #2f5d8a;
  --aghora-dourado: #c9a227;
  --aghora-fundo: #f5f7fa;
  --aghora-borda: #dde3ea;
}

body {
  background-color: var(--aghora-fundo);
  color: #212529;
}

.site-header {
  background-color: var(--aghora-azul);
  color: #ffffff;
}

.site-header-inner {
  padding-block: 3.5rem;
}

.site-logo {
  height: 257px;
  max-width: 100%;
  object-fit: contain;
}

.site-title {
  font-size: 2.1rem;
  font-weight: 600;
  color: #ffffff;
  overflow-wrap: break-word;
}

.wordmark {
  font-weight: 700;
  letter-spacing: 0.02em;
}

.wordmark-gamma {
  display: inline-block;
  color: var(--aghora-dourado);
  line-height: 0;
}

.gamma-glyph {
  height: 1.3em;
  width: auto;
  vertical-align: -0.32em;
}

@media (max-width: 767.98px) {
  .site-header-inner {
    padding-block: 2.5rem;
  }

  .site-logo {
    height: 128px;
  }

  .site-title {
    font-size: 1.43rem;
  }
}

.btn-portal {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 64px;
  font-weight: 600;
  background-color: var(--aghora-azul);
  border-color: var(--aghora-azul);
}

.btn-portal:hover,
.btn-portal:focus {
  background-color: var(--aghora-azul-claro);
  border-color: var(--aghora-azul-claro);
}

.btn-portal:focus-visible {
  outline: 3px solid #ffb703;
  outline-offset: 2px;
}

.info-card {
  border: 1px solid var(--aghora-borda);
  border-radius: 0.75rem;
  background-color: #ffffff;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.info-card:hover {
  box-shadow: 0 0.5rem 1rem rgba(30, 58, 95, 0.12);
  transform: translateY(-2px);
}

.card-link-cta {
  color: var(--aghora-azul);
  font-weight: 600;
  text-decoration: none;
}

.card-link-cta:hover,
.card-link-cta:focus {
  text-decoration: underline;
}

.site-footer {
  background-color: var(--aghora-azul);
  color: #ffffff;
}
