:root {
  --public-navbar-height: 104px;
}

@media (max-width: 1199.98px) {
  :root {
    --public-navbar-height: 68px;
  }
}

#main-content {
  padding-top: var(--public-navbar-height);
}

#main-content > section:first-of-type,
#main-content > div:first-of-type > section:first-of-type,
#main-content > div.tramites-page > section:first-of-type {
  margin-top: 0 !important;
}

/* Animación suave para la barra de navegación al hacer scroll */
nav.layout-navbar {
  transition: background-color 0.3s ease, box-shadow 0.3s ease !important;
}

nav.layout-navbar .landing-navbar {
  transition: padding 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

nav.layout-navbar .navbar-logo-wrapper {
  transition: padding 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

nav.layout-navbar .navbar-logo {
  transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  width: auto;
}

nav.layout-navbar .navbar-mobile-brand {
  transition: padding 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

nav.layout-navbar .navbar-nav .nav-link {
  transition: padding 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease !important;
}

/* Efecto de achicamiento (shrink) en scroll */
nav.layout-navbar.navbar-scrolled,
nav.layout-navbar.navbar-active {
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08) !important;
  background-color: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

@media (min-width: 1200px) {
  nav.layout-navbar.navbar-scrolled .landing-navbar,
  nav.layout-navbar.navbar-active .landing-navbar {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  nav.layout-navbar.navbar-scrolled .navbar-logo-wrapper,
  nav.layout-navbar.navbar-active .navbar-logo-wrapper {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  nav.layout-navbar.navbar-scrolled img.navbar-logo-ib,
  nav.layout-navbar.navbar-active img.navbar-logo-ib,
  nav.layout-navbar.navbar-scrolled img.navbar-logo-ms,
  nav.layout-navbar.navbar-active img.navbar-logo-ms {
    height: 42px !important;
  }

  nav.layout-navbar.navbar-scrolled .navbar-nav .nav-link,
  nav.layout-navbar.navbar-active .navbar-nav .nav-link {
    padding-top: 0.35rem !important;
    padding-bottom: 0.35rem !important;
  }
}

@media (max-width: 1199.98px) {
  nav.layout-navbar.navbar-scrolled .navbar-mobile-brand,
  nav.layout-navbar.navbar-active .navbar-mobile-brand {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }

  nav.layout-navbar.navbar-scrolled img.navbar-logo-ib-mobile,
  nav.layout-navbar.navbar-active img.navbar-logo-ib-mobile {
    height: 32px !important;
  }

  nav.layout-navbar.navbar-scrolled img.navbar-logo-ms-mobile,
  nav.layout-navbar.navbar-active img.navbar-logo-ms-mobile {
    height: 25px !important;
  }
}
