/* Premier Pet Carers: small visual repairs, October 2026. */
body { color: #555; }
p.smaller, .three__blocks p.smaller { color: #555; }
footer p { color: #555; }
.main__middle__container p a, footer p a, .orange { color: #b54712; }
.copyright { color: #ddd; }
.main-content h2 { line-height: 1.25; margin-bottom: 24px; }
.main-content img { max-width: 100%; height: auto; }
.main__middle__container > .row { margin-left: 0; margin-right: 0; }
.main__header { position: relative; }
.main__header .navbar-header.with__logo {
  position: static; float: none; width: 100%; text-align: center;
  left: auto; top: auto; z-index: 2;
}
.main__header .navbar-header .navbar-brand {
  display: inline-block; width: auto; max-width: 100%; height: auto;
  margin: 0; padding: 8px 20px; line-height: 1.25; font-size: 28px;
  white-space: normal;
}
.slider.boxess { top: 0; height: auto; margin-bottom: 30px; }
@media (max-width: 767px) {
  .main__header .container { position: relative; }
  .main__header .navbar-default { min-height: 72px; margin-bottom: 0; padding: 0; }
  .main__header .navbar-header.with__logo {
    position: absolute; left: 15px; top: 8px; width: calc(100% - 90px);
    text-align: left;
  }
  .main__header .navbar-header .navbar-brand {
    width: 100%; padding: 8px 10px; font-size: clamp(19px, 5.2vw, 25px);
    text-align: center;
  }
  a.submenu { top: 17px; right: 15px; z-index: 3; }
  .menuBar { margin-top: 72px; max-height: none; overflow: visible; }
  .menuBar li a { line-height: 1.4; }
  .main-content h2 { font-size: 28px; }
  .contact-us iframe { display: block; max-width: 100%; }
}
@media (max-width: 440px) {
  .slider .carousel-caption {
    display: block; position: static; padding: 12px 15px;
    background: #333; text-shadow: none;
  }
  .slider .carousel-caption h1, .slider .carousel-caption p:last-child { display: none; }
  .slider .carousel-caption p { margin: 0; color: #fff; font-size: 14px; line-height: 1.5; }
}

@media (min-width: 768px) {
  .menuBar > ul.menu { display: flex; justify-content: space-between; padding: 0; }
  .menuBar > ul.menu > li { min-width: 0; }
  .menuBar > ul.menu > li > a { padding: 24px 12px; line-height: 1.4; }
}
@media (min-width: 1200px) {
  .menuBar > ul.menu > li > a { padding: 26px 30px; }
}
/* A nested fixed-width Bootstrap container was spilling beyond the tablet slider. */
.slider .carousel-inner > .item > .container { width: 100%; max-width: 100%; padding: 0; }
/* Keep long contact addresses within the existing footer columns. */
footer .black-text { overflow-wrap: anywhere; }
/* Give every hero caption a consistent backdrop independent of the photograph. */
.slider .carousel-caption h1,
.slider .carousel-caption p {
  background: rgba(0, 0, 0, .78);
  color: #fff;
  text-shadow: 0 1px 2px #000;
}
.slider .carousel-caption p { padding: 10px 14px; }
.mobile-site-title { display: none; }
@media (max-width: 767px) {
  .main__header { margin-top: 0; height: auto; min-height: 72px; }
  .main__header .navbar-header.with__logo { display: block; }
  .mobile-site-title { display: block; }
  .main__header .navbar-header .navbar-brand { background: transparent; text-align: left; }
  .slider .carousel-caption { display: block; }
}
@media (max-width: 767px) {
  .main__header .navbar-header.with__logo { z-index: 1000; }
  .main__header a.submenu { z-index: 1001; }
}

.slider .carousel-caption p:has(a.btn) { background: transparent; padding: 0; }
@media (max-width: 767px) {
  .slider .carousel-caption {
    position: relative; top: auto; left: auto; right: auto;
    margin: 0; padding: 12px 15px; background: #222;
  }
  .slider .carousel-caption h1, .slider .carousel-caption p:has(a.btn) { display: none; }
  .slider .carousel-caption p { margin: 0; padding: 0; background: #222; }
}
/* Align the mobile wordmark with the 34px menu icon and tighten the hero gap. */
@media (max-width: 767px) {
  .main__header .navbar-header.with__logo { top: 17px; }
  .main__header .navbar-header .navbar-brand,
  .main__header .navbar-header .navbar-brand:hover {
    height: 34px; padding: 0 10px; line-height: 34px;
    box-shadow: none; border: 0; background: transparent;
  }
  .slider.boxess { margin-bottom: 0; }
  .slider.boxess + .main__middle__container > .headings {
    padding-top: 24px; margin-top: 0;
  }
  .slider.boxess + .main__middle__container > .headings h1 { margin-top: 0; }
}
