/* Logo Styles */
.logo {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}

.shield {
  position: relative;
  width: 3.2rem;
  height: 4rem;
}

.shield-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: var(--color-navy);
  border-radius: 50% 50% 0 0;
}

.shield-body {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%;
  background-color: var(--color-navy);
  clip-path: polygon(0 0, 100% 0, 100% 60%, 50% 100%, 0 60%);
}

.shield::before {
  content: '';
  position: absolute;
  top: 20%;
  left: 20%;
  width: 60%;
  height: 60%;
  background-color: var(--color-royal-blue);
  clip-path: polygon(0 0, 100% 0, 100% 60%, 50% 100%, 0 60%);
  z-index: 1;
}

.shield::after {
  content: '★';
  position: absolute;
  top: 40%;
  left: 0;
  width: 100%;
  text-align: center;
  color: var(--color-white);
  font-size: 1.6rem;
  z-index: 2;
}

.logo-text {
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-navy);
  letter-spacing: 0.1rem;
}

/* Footer Logo */
footer .logo-text {
  color: var(--color-white);
}

footer .shield-top,
footer .shield-body {
  background-color: var(--color-white);
}

footer .shield::before {
  background-color: var(--color-royal-blue);
}