/* ultra-mobile-fixes v1.4 */
@media (max-width: 991px) {
  .ultra-hamburger { margin-left: auto !important; }
  .ultra-mega-grid { display: block !important; }
  .ultra-mega-promo { display: none !important; }
  .ultra-mega-col { padding: 0 !important; margin-bottom: 8px !important; }
  .ultra-mega-col-header { color: rgba(255,255,255,0.5) !important; font-size: 11px !important; padding: 8px 0 4px !important; }
  .ultra-mega-item { display: flex !important; align-items: center !important; padding: 8px 0 !important; }
  .ultra-mega-title { color: rgba(255,255,255,0.85) !important; }
  .ultra-mega-desc { color: rgba(255,255,255,0.45) !important; }
  .ultra-dropdown-item { padding: 10px 0 !important; color: rgba(255,255,255,0.85) !important; }
  .ultra-dropdown-item i { color: #4da6e8 !important; }
  .ultra-has-dropdown > a { touch-action: manipulation !important; -webkit-tap-highlight-color: transparent !important; }
  .ultra-hamburger { touch-action: manipulation !important; }
}

/* Kill hover on touch devices - match exact properties from nav CSS */
.touch-device .ultra-nav-links > li.ultra-has-dropdown:hover > .ultra-mega,
.touch-device .ultra-nav-links > li.ultra-has-dropdown:hover > .ultra-dropdown {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  max-height: 0 !important;
  pointer-events: none !important;
}

/* is-open overrides everything on touch devices */
.touch-device .ultra-nav-links > li.ultra-has-dropdown.is-open > .ultra-mega,
.touch-device .ultra-nav-links > li.ultra-has-dropdown.is-open > .ultra-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  max-height: 500px !important;
  overflow-y: auto !important;
  pointer-events: auto !important;
}

/* Footer mobile centering */
@media (max-width: 768px) {
  .ultra-footer-column-title { text-align: center !important; }
  .ultra-footer-subsection-title { text-align: center !important; }
  .ultra-footer-links { align-items: center !important; }
}
@media (max-width: 480px) {
  .ultra-footer-column-title { text-align: center !important; }
  .ultra-footer-subsection-title { text-align: center !important; }
  .ultra-footer-flickr-column { text-align: center !important; }
  .ultra-footer-flickr-column .ultra-footer-column-title { text-align: center !important; }
  .ultra-footer-flickr-grid { margin-left: auto !important; margin-right: auto !important; }
  .ultra-footer-payments { justify-content: center !important; margin-left: auto !important; margin-right: auto !important; }
}
