/* DEYNU MOBILE UX 17.0.3.08.3
   Purpose: eliminate the oversized marketing footer where a mobile app tab bar
   is already present; prevent the floating booking action following users into
   the footer / beyond the property content. Mobile only; zero backend changes. */
@media (max-width:760px) {
  /* Main mobile app/pwa screens: bottom tabs replace the desktop editorial footer.
     :has() handles Chrome WebView/PWA independently of standalone UA detection;
     JS adds dn83-mobile-shell for installed clients and legacy fallbacks. */
  body.dn83-mobile-shell .deynu-luxury-footer,
  body.dn83-mobile-shell footer.deynu-luxury-footer,
  body.dn83-mobile-shell > footer.footer,
  body:has(.mobile-bottom-nav) .deynu-luxury-footer,
  body:has(.social-bottom-nav) .deynu-luxury-footer,
  body:has(.mobile-bottom-nav) > footer.footer,
  body:has(.social-bottom-nav) > footer.footer,
  html.deynu-r82-app-shell body .deynu-luxury-footer {
    display:none!important;
    visibility:hidden!important;
  }
  /* Keep all page content reachable while fixed app tabs are present. */
  body.dn83-mobile-shell main.container:not(:has(> .property-detail-page)) {
    padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
  }
  /* Booking CTA: one consistent safe gap above the R8.2 mobile tab bar. */
  body:has(.mobile-bottom-nav) main.container .property-detail-page .property-mobile-booking-bar.has-bottom-nav,
  body.dn83-mobile-shell main.container .property-detail-page .property-mobile-booking-bar.has-bottom-nav {
    position:fixed!important;
    z-index:880!important;
    bottom:calc(73px + env(safe-area-inset-bottom,0px))!important;
    max-width:calc(100vw - 16px)!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
  }
  /* Never paint a stuck booking call-to-action over the page's final content. */
  body.dn83-at-property-end main.container .property-detail-page .property-mobile-booking-bar,
  body.dn83-at-property-end .property-detail-page .property-mobile-booking-bar {
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(10px)!important;
  }
  body.dn83-mobile-shell .property-detail-page.has-site-bottom-nav {
    padding-bottom:148px!important;
  }
  /* Avoid phantom space from a nested standard editorial footer wrapper. */
  body.dn83-mobile-shell > footer.deynu-luxury-footer + * {scroll-margin-top:12px}
}
@media (prefers-reduced-motion:reduce) {
  body.dn83-at-property-end .property-mobile-booking-bar {transition:none!important}
}
