/* Small responsive and editing-friendly extras for the static copy.
   Original YOOtheme/UIkit styles stay in /assets/css/site.css and /assets/css/site-2.css */
img, video { max-width: 100%; height: auto; }
iframe { max-width: 100%; }
#wufoo-p7rp76x0l2rqvi,
#wufoo-p7rp76x0l2rqvi iframe { width: 100% !important; max-width: 100%; }
.tm-article-content table { display: block; width: 100%; overflow-x: auto; }

@media (max-width: 767px) {
  .uk-slideshow li { min-height: 0 !important; }
  .uk-slideshow img { width: 100%; height: auto; object-fit: cover; max-height: 280px; }
  #tm-top-b { height: 160px !important; background-attachment: scroll !important; }
  #tm-bottom-a { background-attachment: scroll !important; }
  .header-small {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
  }
  .header-small img { width: auto; height: 48px; }
  .phone-small a {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 20;
  }
}

/* Show service cards even if scrollspy/JS is late, and keep the footer below them */
#tm-bottom-b .uk-panel.uk-invisible { visibility: visible !important; }
#tm-bottom-b .uk-grid { min-height: 220px; }

/* background-attachment:fixed often fails in mobile and some browsers */
#tm-top-b, #tm-bottom-a {
  background-attachment: scroll !important;
}
#tm-top-b {
  height: 270px;
  background-size: cover;
  background-position: 50% 50%;
}
@media (max-width: 767px) {
  #tm-top-b { height: 160px; }
}

#tm-bottom-b { padding-bottom: 80px !important; overflow: visible; }
#tm-bottom-b .uk-extra-margin-top > .uk-grid > div > .uk-panel {
  visibility: visible !important;
  height: auto !important;
  min-height: 260px;
  position: relative;
  margin-bottom: 25px;
}
.tm-block-footer { clear: both; }
