/* Shared brand refinements: shorter paths to products and readable controls. */
.home-hero .hero-content { max-width: 920px; margin-inline: auto; padding: 0; }
.home-hero .container { width: 100%; padding-inline: 0; }
.home-hero { min-height: 640px; min-height: min(720px, calc(100svh - 80px)); padding: 76px 24px; }
.hero-brand { font-family: 'Roag', Arial, sans-serif; font-style: italic; font-size: clamp(1.4rem, 3vw, 2rem); letter-spacing: .04em; color: #fff; margin-bottom: 28px; }
.hero-title { font-family: 'MiSans', 'Segoe UI', Arial, sans-serif; font-weight: 700; font-size: clamp(2.25rem, 5vw, 4rem); line-height: 1.12; letter-spacing: -.025em; color: #fff; margin: 0 0 22px; }
.hero-summary { max-width: 720px; margin: 0 auto 32px; font-size: 18px; line-height: 1.65; color: #e6e6e6; }
.btn-brand { background: #26691e; border-color: #26691e; color: #fff; }
.btn-brand:hover { background: #1b4518; border-color: #1b4518; color: #fff; }
:where(a,button,input,select,summary):focus-visible { outline: 3px solid #2f8423; outline-offset: 4px; }
.filter-category h3 { cursor: pointer; }
.filter-category h3:focus-visible { outline: 2px solid #2f8423; outline-offset: 3px; }
.directory-filter-toggle { display: none; }
.mobile-nav { visibility: hidden; }
.mobile-nav.active { visibility: visible; }
@media (max-width: 767px) {
  .mobile-menu { display: block; padding: 0; }
  #menu-toggle { min-width: 44px; min-height: 44px; }
  .home-hero { min-height: 0; padding: 56px 20px; }
  .hero-brand { margin-bottom: 20px; }
  .hero-summary { font-size: 16px; }
  .product-directory .filter-sidebar { padding: 18px; }
  .product-directory .filter-sidebar .search-box { margin-bottom: 12px; }
  .product-directory .filter-actions { display: flex; gap: 10px; margin-bottom: 0; }
  .product-directory .filter-actions button { padding: 10px 12px; }
  .directory-filter-toggle { display: inline-flex; }
  .filter-sidebar:not(.filters-open) .filter-category { display: none; }
  .filter-sidebar.filters-open .filter-category:first-of-type { margin-top: 18px; }
  .product-directory .advanced-filter-container { gap: 20px; }
  .display-header { flex-wrap: wrap; gap: 12px; }
}

.cms-case-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.case-hero-image{position:relative}.cms-card-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
