/* Keep category content and enquiry feedback readable at narrow widths. */
.category-intro p, .pipe-title, .form-status { overflow-wrap: anywhere; }
.pipe-grid { margin-top: 12px; }
.pipe-grid .pipe-wrapper { margin-bottom: 24px; }
.pipe-grid .pipe-title { padding: 8px; line-height: 1.5; }
.inquiry-form { scroll-margin-top: 100px; }
.inquiry-form textarea { min-height: 150px; width: 100%; resize: vertical; }
.inquiry-form [type="submit"]:disabled { opacity: .7; cursor: wait; }
.inquiry-form .form-status { padding: 12px 14px; background: #f4f4f4; border-left: 3px solid #555; line-height: 1.6; }
.inquiry-form .text-error { color: #8b1d1d; border-color: #8b1d1d; }
.inquiry-form .text-success { color: #195b2e; border-color: #195b2e; }
.inquiry-form input:focus-visible, .inquiry-form textarea:focus-visible, a.btn:focus-visible { outline: 3px solid #1d4f78; outline-offset: 3px; }
.category-toggle { display: none; }
.catalogue-actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; }
.catalogue-actions .catalogue-note { flex-basis: 100%; margin-top: 0 !important; }
@media (max-width: 767px) {
  .page-header { height: 200px; }
  .page-header .breadc-box .row { min-height: 200px; }
  .categories-enhanced > .widget-title { display: none; }
  .categories-enhanced > .category-toggle { display: block; width: 100%; padding: 15px 20px; text-align: left; border: 1px solid #d6d6d6; background: #f2f4f6; color: #03132b; font-size: 16px; }
  .categories-enhanced > .category-toggle::after { content: '+'; float: right; }
  .categories-enhanced.categories-open > .category-toggle::after { content: '\2212'; }
  .categories-enhanced:not(.categories-open) > ul { display: none; }
  .primary-sidebar [data-sticky] { position: static !important; top: auto !important; }
  .categories-title { font-size: 28px; line-height: 1.25; overflow-wrap: anywhere; }
  .category-intro { padding-left: 16px !important; padding-right: 16px !important; }
  .inquiry-form input, .inquiry-form textarea { font-size: 16px; }
  .pipe-title { font-size: 14px; }
  .primary-sidebar { margin-bottom: 24px; }
}
@media (max-width: 575px) {
  .catalogue-actions .btn { width: 100%; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .pipe-wrapper, .pipe-box > img { transition: none; }
}
