/* Logo original de 1600 × 800: o quadro 5:2 remove apenas 80 px de
   margem branca acima e abaixo, preservando o símbolo e o slogan. */
.landing-brand img,
.of-login-brand img,
.clean-register .clean-brand img,
.auth-form-logo,
.footer-brand img,
.product-window-title img,
.of-login-symbol img {
  display: block;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 12px;
}

.landing-nav-shell {
  grid-template-columns: 240px 1fr auto;
  gap: 20px;
}

.landing-brand,
.of-login-brand,
.clean-register .clean-brand {
  flex-shrink: 0;
  height: auto;
}

.landing-brand img,
.of-login-brand img,
.clean-register .clean-brand img {
  width: 240px;
  height: 96px;
}

.landing-brand img,
.clean-register .clean-brand img,
.product-window-title img,
.of-login-symbol img,
.auth-form-logo {
  mix-blend-mode: multiply;
}

.footer-brand img {
  width: 260px;
  height: 104px;
}

.product-window-title img {
  width: 100px;
  height: 40px;
  border-radius: 0;
}

.final-cta-orca {
  bottom: 4%;
  mix-blend-mode: luminosity;
}

.final-cta-orca img {
  border-radius: 24px;
}

.of-login-card-head {
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.of-login-symbol {
  grid-row: auto;
  width: 200px;
  max-width: 100%;
  height: 80px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.of-login-symbol img {
  width: 200px;
  height: 80px;
}

.of-login-card-head > p {
  grid-column: 1;
}

.auth-form-logo {
  width: min(280px, 100%);
  height: auto;
  aspect-ratio: 5 / 2;
}

.app-sidebar .brand.system-brand {
  padding: 6px;
  background: #fff;
}

.app-sidebar .brand.system-brand img {
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 2;
  object-fit: cover;
}

.topbar-company-logo.system-brand {
  display: flex;
  width: 140px;
  height: 56px;
  padding: 0;
  background: #fff;
}

.topbar-company-logo.system-brand img {
  min-width: 0;
  min-height: 0;
  object-fit: cover;
}

.has-system-brand .print-company-logo {
  width: 190px;
  height: 76px;
  max-height: 76px;
  object-fit: cover;
}

@media print {
  .has-system-brand .print-sheet .print-company-logo {
    width: 50mm !important;
    max-width: 50mm !important;
    height: 20mm !important;
    max-height: 20mm !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .landing-nav-shell {
    grid-template-columns: 200px 1fr auto;
    gap: 12px;
  }

  .landing-brand img {
    width: 200px;
    height: 80px;
  }
}

@media (max-width: 991px) {
  .landing-nav-shell {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 10px;
  }

  .landing-brand img,
  .of-login-brand img,
  .clean-register .clean-brand img {
    width: 200px;
    height: 80px;
  }

  .topbar-company-logo.system-brand {
    width: 100px;
    height: 40px;
  }

  .landing-hero {
    padding-top: 140px;
  }
}

@media (max-width: 575px) {
  .system-brand-header .topbar-company > strong,
  .system-brand-header .topbar-user-info > strong {
    display: none;
  }

  .system-brand-header .btn-logout {
    white-space: nowrap;
  }

  .landing-brand img,
  .of-login-brand img,
  .clean-register .clean-brand img {
    width: 150px;
    height: 60px;
  }

  .of-login-nav {
    gap: 10px;
  }

  .landing-brand {
    min-width: 0;
  }

  .landing-brand img {
    height: auto;
    aspect-ratio: 5 / 2;
  }

  .landing-hero {
    padding-top: 118px;
  }

  .of-login-back {
    width: 36px;
  }

  .of-login-register {
    padding-inline: 8px;
  }
}
