/* Text/link treatment and useful legacy category directories. */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 li.mega-menu-item-type-widget.widget_text .textwidget a.mega-block-title.benson-all-industries {
    display: inline-block;
    border-bottom: 2px solid currentColor !important;
    font-weight: 700 !important;
    padding-bottom: 5px;
}
.benson-category-directory {
    max-width: 1160px;
    margin: 0 auto;
    padding: 170px 24px 72px;
}
.benson-category-directory h1 { color: #311c65; margin-bottom: 24px; }
.benson-category-directory h2 { margin-top: 36px; }
.benson-category-directory p { max-width: 780px; }
.benson-category-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding-left: 24px; }
.benson-category-links a { display: inline-block; padding: 8px 0; text-decoration: underline; }
.benson-directory-cta { display: inline-block; background: #311c65; color: #fff; border-radius: 6px; padding: 14px 24px; }
.benson-directory-cta:hover, .benson-directory-cta:focus { background: #1f1240; color: #fff; }
@media (max-width: 767px) {
    .benson-category-directory { padding: 120px 20px 48px; }
    .benson-category-directory h1 { font-size: 36px; overflow-wrap: anywhere; }
    .benson-category-links { grid-template-columns: 1fr; }
}

/* Benson UI corrections H47, H48, H49 and H50. No asset URLs are changed. */

/* H47: the four native archives share this existing template structure. */
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main {
  width: min(100% - 40px, 1200px);
  margin-inline: auto;
  padding-top: 120px;
  padding-bottom: 48px;
}
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content > article.post {
  min-width: 0;
  padding: 24px;
  border: 1px solid #ded9e5;
  border-radius: 16px;
}
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content > article.post .entry-title {
  margin: 0 0 20px;
  font-size: 24px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content > article.post p {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.6;
}
body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .pagination {
  display: flex;
  justify-content: space-between;
  margin-top: 32px;
}
@media (max-width: 1024px) {
  body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  body:is(.post-type-archive-projects, .author-bensons, .category-uncategorized) main.site-main > .page-content {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* H48: E-Gallery's native masonry formula omits the in-flow captions.
   Keep its columns, photo ratios, ordering and lightbox; reserve caption space
   in the existing gap formula. JS measures wrapping, including on resize. */
.galleries-sub-page-gallery .elementor-gallery__container.e-gallery-masonry {
  --vgap: calc(var(--hgap, 10px) + var(--bs-gallery-caption-space, 54px)) !important;
  margin-bottom: calc(var(--bs-gallery-bottom-space, calc(var(--highest-column-gap-count, 0) * var(--vgap) + var(--bs-gallery-caption-space, 54px))) + var(--bs-gallery-extra-bottom, 0px));
}

/* H49: overwrite the exported -55px tablet / -24px mobile offsets.
   Mobile specification controls already have a separate centred layout. */
@media (min-width: 768px) and (max-width: 1280px) {
  .specification-slider > .slick-next { right: 0 !important; }
  .specification-slider > .slick-prev { left: 0 !important; }
}
@media (max-width: 767px) {
  .gallery-slider ul > .slick-next { right: 0 !important; }
  .gallery-slider ul > .slick-prev { left: 0 !important; }
}

/* H50: 6.72:1 against the measured #f1ebff accordion background. */
.section-maintenance-accordiyan .e-n-accordion-item:not([open]) > .e-n-accordion-item-title .e-n-accordion-item-title-text {
  color: #594a7b !important;
}
