/* LaranSys v6.0.29 HF4
   Logo sizing hierarchy by stage/location.
   Keeps the official full logo intact and only changes rendered dimensions. */

:root{
  /* The existing Admin logo scale remains respected, but bounded by safe clamps. */
  --ls-brand-top-w: clamp(96px, calc(92px * var(--ls-logo-scale, 1)), 108px);
  --ls-brand-sticky-w: clamp(72px, calc(70px * var(--ls-logo-scale, 1)), 82px);
  --ls-brand-solutions-w: clamp(128px, calc(128px * var(--ls-logo-scale, 1)), 152px);
  --ls-brand-footer-w: clamp(142px, calc(140px * var(--ls-logo-scale, 1)), 170px);
}

/* ============================================================
   STAGE 1 — HEADER AT TOP
   Full identity is visible, but the header does not dominate.
   ============================================================ */
header.public-header.ls-header-v609,
header.public-header[data-ls-header-v609]{
  min-height:100px !important;
  transition:min-height .24s ease, background-color .24s ease, box-shadow .24s ease !important;
}

header.public-header.ls-header-v609 .ls-header-v609__inner,
header.public-header[data-ls-header-v609] .ls-header-v609__inner{
  min-height:100px !important;
  transition:min-height .24s ease !important;
}

header.public-header.ls-header-v609 .ls-header-v609__brand,
header.public-header[data-ls-header-v609] .ls-header-v609__brand{
  width:var(--ls-brand-top-w) !important;
  min-width:var(--ls-brand-top-w) !important;
  max-width:var(--ls-brand-top-w) !important;
  height:auto !important;
  overflow:visible !important;
  transition:width .24s ease, min-width .24s ease, max-width .24s ease !important;
}

header.public-header.ls-header-v609 .ls-header-v609__brand img,
header.public-header[data-ls-header-v609] .ls-header-v609__brand img{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:left center !important;
  transition:width .24s ease, transform .24s ease, filter .24s ease !important;
}

/* ============================================================
   STAGE 2 — STICKY / AFTER SCROLL
   A dedicated JS class makes the reduction reliable regardless
   of which legacy scroll class earlier versions use.
   ============================================================ */
header.public-header.ls-header-v609.ls-brand-compact,
header.public-header[data-ls-header-v609].ls-brand-compact{
  min-height:72px !important;
  box-shadow:0 12px 28px rgba(0,0,0,.22) !important;
}

header.public-header.ls-header-v609.ls-brand-compact .ls-header-v609__inner,
header.public-header[data-ls-header-v609].ls-brand-compact .ls-header-v609__inner{
  min-height:72px !important;
}

header.public-header.ls-header-v609.ls-brand-compact .ls-header-v609__brand,
header.public-header[data-ls-header-v609].ls-brand-compact .ls-header-v609__brand{
  width:var(--ls-brand-sticky-w) !important;
  min-width:var(--ls-brand-sticky-w) !important;
  max-width:var(--ls-brand-sticky-w) !important;
}

header.public-header.ls-header-v609.ls-brand-compact .ls-header-v609__brand img,
header.public-header[data-ls-header-v609].ls-brand-compact .ls-header-v609__brand img{
  width:100% !important;
  filter:
    drop-shadow(0 0 9px rgba(160,255,18,.16))
    drop-shadow(0 6px 12px rgba(0,0,0,.30)) !important;
}

/* ============================================================
   STAGE 3 — HOME "SOLUCOES PARA SUA EMPRESA"
   Secondary identity: recognizable but below the section title.
   ============================================================ */
.ls-solutions-v601__logo{
  display:block !important;
  width:var(--ls-brand-solutions-w) !important;
  max-width:var(--ls-brand-solutions-w) !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  margin-bottom:18px !important;
  filter:
    drop-shadow(0 0 12px rgba(160,255,18,.13))
    drop-shadow(0 8px 18px rgba(0,0,0,.24)) !important;
}

/* ============================================================
   STAGE 4 — FOOTER
   Brand closes the page without overpowering the navigation.
   ============================================================ */
.public-footer.ls-footer-v617 .ls-footer-v617__logo,
.public-footer.ls-footer-v617 .ls-footer-v617__brand{
  width:auto !important;
  max-width:190px !important;
  overflow:visible !important;
}

.public-footer.ls-footer-v617 .ls-footer-v617__logo img,
.public-footer.ls-footer-v617 .ls-footer-v617__brand img{
  display:block !important;
  width:var(--ls-brand-footer-w) !important;
  min-width:0 !important;
  max-width:var(--ls-brand-footer-w) !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:left top !important;
  margin:0 0 14px !important;
  filter:
    drop-shadow(0 0 11px rgba(160,255,18,.12))
    drop-shadow(0 8px 18px rgba(0,0,0,.28)) !important;
}

/* ============================================================
   TABLET
   ============================================================ */
@media (max-width:1180px){
  :root{
    --ls-brand-top-w: clamp(88px, calc(84px * var(--ls-logo-scale, 1)), 98px);
    --ls-brand-sticky-w: clamp(70px, calc(66px * var(--ls-logo-scale, 1)), 78px);
    --ls-brand-solutions-w: clamp(116px, calc(112px * var(--ls-logo-scale, 1)), 132px);
    --ls-brand-footer-w: clamp(132px, calc(126px * var(--ls-logo-scale, 1)), 150px);
  }

  header.public-header.ls-header-v609,
  header.public-header[data-ls-header-v609],
  header.public-header.ls-header-v609 .ls-header-v609__inner,
  header.public-header[data-ls-header-v609] .ls-header-v609__inner{
    min-height:90px !important;
  }

  header.public-header.ls-header-v609.ls-brand-compact,
  header.public-header[data-ls-header-v609].ls-brand-compact,
  header.public-header.ls-header-v609.ls-brand-compact .ls-header-v609__inner,
  header.public-header[data-ls-header-v609].ls-brand-compact .ls-header-v609__inner{
    min-height:68px !important;
  }
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width:640px){
  :root{
    --ls-brand-top-w: clamp(76px, calc(72px * var(--ls-logo-scale, 1)), 86px);
    --ls-brand-sticky-w: clamp(64px, calc(60px * var(--ls-logo-scale, 1)), 72px);
    --ls-brand-solutions-w: clamp(94px, calc(90px * var(--ls-logo-scale, 1)), 106px);
    --ls-brand-footer-w: clamp(118px, calc(112px * var(--ls-logo-scale, 1)), 132px);
  }

  header.public-header.ls-header-v609,
  header.public-header[data-ls-header-v609],
  header.public-header.ls-header-v609 .ls-header-v609__inner,
  header.public-header[data-ls-header-v609] .ls-header-v609__inner{
    min-height:76px !important;
  }

  header.public-header.ls-header-v609.ls-brand-compact,
  header.public-header[data-ls-header-v609].ls-brand-compact,
  header.public-header.ls-header-v609.ls-brand-compact .ls-header-v609__inner,
  header.public-header[data-ls-header-v609].ls-brand-compact .ls-header-v609__inner{
    min-height:64px !important;
  }

  .ls-solutions-v601__logo{
    margin-bottom:14px !important;
  }

  .public-footer.ls-footer-v617 .ls-footer-v617__logo,
  .public-footer.ls-footer-v617 .ls-footer-v617__brand{
    max-width:150px !important;
  }
}

@media (max-width:390px){
  :root{
    --ls-brand-top-w:76px;
    --ls-brand-sticky-w:64px;
    --ls-brand-solutions-w:92px;
    --ls-brand-footer-w:116px;
  }
}

@media (prefers-reduced-motion:reduce){
  header.public-header.ls-header-v609,
  header.public-header[data-ls-header-v609],
  header.public-header .ls-header-v609__inner,
  header.public-header .ls-header-v609__brand,
  header.public-header .ls-header-v609__brand img{
    transition:none !important;
  }
}
