/**
 * @file
 * This contains global @media query for easy replacement.
 *
 * See ultimenu.css for details.
 */

/**
 * We are here at desktop up.
 * 944px = 58.999em with 16px base font.
 * We still have .ultimenu__caret to toggle flyout here.
 */
@media (hover: hover) {
  .is-ultimenu .is-ultihover .ultimenu__flyout,
  .is-ultimenu:not(.is-ultimenu--active) .is-ulticaret .ultimenu__flyout {
    position: absolute;
  }

  .is-ultimenu .is-ultihover li .is-ulink-active + .ultimenu__flyout {
    padding: var(--ultispace) 0;
  }

  /* Hide mobile menu, if off-canvas is DISABLED for desktop. */
  html.is-ultimenu--hover .button.button--ultiburger {
    display: none;
  }

  /* Ultimenu items. */
  /* stylelint-disable */
  .is-ultimenu .is-ultihover:not(.is-ulticaret) li .ultimenu__flyout:focus,
  .is-ultimenu .is-ultihover:not(.is-ulticaret) li:hover > .ultimenu__flyout,
  .is-ultimenu .is-ultihover:not(.is-ulticaret) li a:active + .ultimenu__flyout,
  .is-ultimenu .is-ultihover:not(.is-ulticaret) li a:focus + .ultimenu__flyout {
    height: auto;
    max-height: none;
    min-height: 64px;
    padding: var(--ultispace) 0;
    overflow: visible;
    opacity: 1;
    transition-delay: 0.1s;
    visibility: visible;
  }

  /** Ultimenu placed in the footer, htt: horizontal to top. */
  .is-ultimenu .ultimenu--htt:not(.is-ulticaret) li .ultimenu__flyout:focus,
  .is-ultimenu .ultimenu--htt:not(.is-ulticaret) li:hover > .ultimenu__flyout,
  .is-ultimenu
    .ultimenu--htt:not(.is-ulticaret)
    li
    a:active
    + .ultimenu__flyout,
  .is-ultimenu
    .ultimenu--htt:not(.is-ulticaret)
    li
    a:focus
    + .ultimenu__flyout {
    height: auto;
    bottom: 100%;
    max-height: none;
    top: auto;
  }

  /* stylelint-enable */
  /**
   * .is-ultihover is for when off-canvas is disabled for desktop.
   */
  .is-ultimenu .is-ultihover > li {
    display: inline-block;
    vertical-align: bottom;
  }

  /* Carets. */
  /* .is-ultihover is for when off-canvas is disabled for desktop. */
  .is-ultimenu .is-ultihover:not(.is-ulticaret) .ultimenu__link {
    padding-right: 1.5em;
  }

  .is-ultimenu .is-ultihover .ultimenu__caret {
    background-color: transparent;
  }

  /**
   * These rules should work without javascript.
   * Unless you want to show caret for laptop up, hide the caret.
   * Remove this if you want to have clickable Ultimenu for all devices.
   * Be sure to remove the hover rules above. */
  .is-ultimenu .ultimenu--htt:not(.is-ulticaret) .ultimenu__caret,
  .is-ultimenu .ultimenu--vertical:not(.is-ulticaret) .ultimenu__caret,
  .is-ultimenu .is-ultihover:not(.is-ulticaret) .ultimenu__caret {
    display: none;
  }

  .is-ultimenu .ultimenu .ultimenusub .ultimenu__caret {
    display: block;
  }
}

/**
 * We are here at mobile devices.
 * 944px = 58.999em with 16px base font.
 */
@media (hover: none) {
  /** The #header alike element. This ensures it always kicks in. */
  html.is-ultimenu .is-ultimenu__canvas-off {
    /* Intentionally dup to avoid FOUC with dynamic options. */
    position: fixed;
    overflow: hidden;
    max-width: 80%;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
  }

  /* Ultimenu items. */
  html.is-ultimenu .ultimenu > li,
  html.is-ultimenu .ultimenu .ultimenu__link {
    width: 100%;
    min-width: 100%;
  }
}
