/* MRO Page Extras Styles: phone booking bar and back-to-top button. */

/* ---- Phone booking bar (shows between the hero and the contact section) ---- */
.mro-mobile-cta {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: var(--wp--custom--z--sticky);
  display: none;
  padding: var(--wp--preset--spacing--30) var(--wp--custom--layout--gutter);
  background: var(--wp--preset--color--base);
  border-top: 1px solid var(--wp--preset--color--line);
  box-shadow: var(--wp--preset--shadow--lg);
  transform: translateY(110%);
  transition: transform var(--wp--custom--duration--base) var(--wp--custom--ease--standard);
}
.mro-mobile-cta.is-visible { transform: translateY(0); }
.mro-mobile-cta .mro-mobile-cta__btn { width: 100%; }

/* ---- Back to top ---- */
.mro-to-top {
  position: fixed;
  right: var(--wp--custom--layout--gutter);
  bottom: var(--wp--preset--spacing--60);
  z-index: var(--wp--custom--z--sticky);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--wp--custom--icon--box);
  height: var(--wp--custom--icon--box);
  padding: 0;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--full);
  background: var(--wp--preset--color--base);
  color: var(--wp--preset--color--accent-deep);
  font-size: var(--wp--custom--icon--sm);
  box-shadow: var(--wp--preset--shadow--md);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(var(--wp--preset--spacing--30));
  transition: opacity var(--wp--custom--duration--base) var(--wp--custom--ease--standard),
              transform var(--wp--custom--duration--base) var(--wp--custom--ease--standard),
              visibility 0s linear var(--wp--custom--duration--base),
              bottom var(--wp--custom--duration--base) var(--wp--custom--ease--standard),
              background-color var(--wp--custom--duration--fast) var(--wp--custom--ease--standard),
              color var(--wp--custom--duration--fast) var(--wp--custom--ease--standard);
}
.mro-to-top[hidden] { display: none; }
.mro-to-top .mro-icon { transform: rotate(-90deg); }
.mro-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}
.mro-to-top:hover {
  border-color: var(--wp--preset--color--accent-strong);
  background: var(--wp--preset--color--accent-strong);
  color: var(--wp--preset--color--base);
}

@media (max-width: 767.98px) {
  .mro-mobile-cta { display: block; }
  /* Sit above the booking bar while it is showing */
  .has-mobile-cta .mro-to-top { bottom: calc(var(--wp--custom--icon--box) + var(--wp--preset--spacing--30) * 2 + var(--wp--preset--spacing--40)); }
}
