.gallery-swiper .swiper-button-prev {
    background-image: url("../img/gallery-arrow-prev.svg");
  }
  .gallery-swiper .swiper-button-next {
    background-image: url("../img/gallery-arrow-next.svg");
  }
  main a {
    color: #fff;
  }
  main a.underline {
    color: #c00a28;
  }
  .breadcrumb-wrapper .breadcrumb a {
    color: #fff !important;
  }
  .breadcrumb-wrapper.no-banner .breadcrumb a {
    color: #000 !important;
  }
  .breadcrumb-item.active:not(:has(:scope .hero)) {
    color: #fff !important;
  }
  .five-icons-section.padded:has(.five-icons-button.active) {
    padding-bottom: 0;
  } 
@media (max-width: 768px) {
    .five-icons-buttons .five-icons-button {
        flex: auto;
        width: 100%;
    }
}

.bg-white a,
.swiper-container a,
.news-article-content a,
.content-page a,
.case-study-content a,
.case-study-at-a-glance .content a,
.case-study-lower .content a {
    color: #000;
}

.news-article-content a,
.content-page a,
.case-study-content a,
.case-study-at-a-glance .content a,
.case-study-lower .content a {
   text-decoration: underline;
}

@media (min-width: 992px) {
  .hero:not(.home-hero):has(img) .overlay {
      display: flex;
  }
}

.grid.no-gap {
  gap: 0;
}

/* Alternative: apply to all elements with IDs for smoother scrolling */
#addresses {
  scroll-margin-top: 100px;
}

/* Utility class for contact grid items that should span 2 columns */
@media (min-width: 576px) {
  .contact-detail.span-2 {
    grid-column: span 2;
  }
}

.left_right_groups .group img:not(.quote).contain {
  object-fit: contain;
}


.team-grid {
  background-color: #000;
}

table.table.table-striped td p {
  margin-bottom: 0;
}

.content-page h2 {
  font-weight: 600;
}
.content-page h3 {
  font-size: 28px;
}
.content-page img {
  max-width: 100%;
  height: auto;
}

.content-page table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
}

.content-page table th {
  background-color: #151D22;
  color: #fff;
  font-weight: 600;
  text-align: left;
  padding: 0.75rem 1rem;
  vertical-align: middle;
  border-bottom: 1px solid #151D22;
}

.content-page table th p {
  margin-bottom: 0;
}

.content-page table td {
  padding: 0.75rem 1rem;
  vertical-align: middle;
  background-color: #F2F2F2;
  border-bottom: 1px solid #F2F2F2;
}

.content-page table td p {
  margin-bottom: 0;
}

.content-page table tbody tr:nth-child(even) td {
  background-color: #F2F2F2;
  border-bottom: 1px solid #F2F2F2;
}

.content-page table tbody tr:nth-child(odd) td {
  background-color: #E6E6E6;
  border-bottom: 1px solid #E6E6E6;
}

#contactAccordionMain .accordion-body h4.strong a {
  color: rgb(192, 10, 40);
}

/* Scroll to top button at bottom of page */
.scroll-button-wrapper-bottom {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 333ms ease;
}

.scroll-button-wrapper-bottom.visible {
  opacity: 1;
  pointer-events: all;
}

@media (min-width: 1980px) {
  .container-xxxl.no-max-width,
    .container-xxl.no-max-width,
    .container-xl.no-max-width,
    .container-lg.no-max-width,
    .container-md.no-max-width,
    .container-sm.no-max-width,
    .container.no-max-width {
      max-width: none;
  }
}

/* Case study testimonial: full width content when no image */
.case-study-lower .container.no-image {
  grid-template-columns: 1fr;
}
.case-study-lower .container.no-image .content {
  grid-column: 1 / -1;
}

.map-national a {
  color: #c00a28;
}

.map-section-heading {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}