/**
 * Shared circular logo styling (media/logo.jpg).
 * Use on every page that shows the brand logo for industry-ready, consistent display.
 * Markup: <span class="logo-circle"><img src="/media/logo.jpg" alt="The Amazing General" class="brand-logo" onerror="this.style.display='none';"></span>
 * Or background: <span class="logo-circle" style="background-image: url('/media/logo.jpg');" role="img" aria-label="The Amazing General"></span>
 */
:root {
  --logo-size: 56px;
}

.logo-circle {
  display: inline-block;
  position: relative;
  width: var(--logo-size);
  height: var(--logo-size);
  min-width: var(--logo-size);
  min-height: var(--logo-size);
  max-width: var(--logo-size);
  max-height: var(--logo-size);
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  box-shadow: none;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  clip-path: circle(50% at 50% 50%);
  box-sizing: border-box;
}

/* Image fills circle completely – no inner rectangle; single circular crop */
.logo-circle img.brand-logo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
}

@media (max-width: 768px) {
  .logo-circle {
    --logo-size: 48px;
    width: 48px;
    height: 48px;
    min-width: 48px;
    min-height: 48px;
    max-width: 48px;
    max-height: 48px;
  }
}

@media (max-width: 480px) {
  .logo-circle {
    --logo-size: 40px;
    width: 40px;
    height: 40px;
    min-width: 40px;
    min-height: 40px;
    max-width: 40px;
    max-height: 40px;
  }
}
