/**
 * Shared sticky header offset. Skin CSS owns pinned chrome (logo scale, utility hide, etc.).
 */

@media (min-width: 992px) {
  body.is-header-stuck:not(.skin-tidewell) {
    padding-top: var(--dv-sticky-header-height, 0px);
  }

  body.admin-bar.is-header-stuck:not(.skin-tidewell) {
    padding-top: calc(var(--dv-sticky-header-height, 0px) + 32px);
  }

  @media (max-width: 782px) {
    body.admin-bar.is-header-stuck:not(.skin-tidewell) {
      padding-top: calc(var(--dv-sticky-header-height, 0px) + 46px);
    }
  }

  .site-header.is-sticky,
  .site-header.is-sticky-out {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    animation: none;
  }

  body.admin-bar .site-header.is-sticky {
    top: 32px;
  }

  @media (max-width: 782px) {
    body.admin-bar .site-header.is-sticky {
      top: 46px;
    }
  }

  /*
   * Tidewell (loads after skin.css + main.css): same pin as Esplanade - parent
   * sticky-header.js toggles .is-sticky. Override main.css 70px flex bar,
   * stickyIn animation, and scroll-linked body padding (fixed compact height).
   */
  body.skin-tidewell .site-header.is-sticky,
  body.skin-tidewell .site-header.is-sticky-out {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-top: 0 !important;
    transform: none !important;
    animation: none !important;
    flex: none !important;
  }

  body.admin-bar.skin-tidewell .site-header.is-sticky,
  body.admin-bar.skin-tidewell .site-header.is-sticky-out {
    top: 0 !important;
  }

  body.skin-tidewell {
    transition: padding-top var(--tw-header-sticky-duration, 0.45s)
      var(--tw-header-sticky-ease, cubic-bezier(0.4, 0, 0.2, 1));
  }

  body.skin-tidewell.is-header-stuck,
  body.admin-bar.skin-tidewell.is-header-stuck {
    padding-top: var(--tw-sticky-bar-height, 65px) !important;
  }
}
