/* Towerwall site changes, kept out of the compiled Sass (css/theme.min.css)
   so a rebuild of theme.css can't drop them. See TOWERWALL-CHANGES.md. */

/* ---- Header: Contact Us button (replaced the search icon, 2026-11-09) ----
   The theme sized the nav to leave room for the 15px search icon only; let it
   shrink so the wider button stays on the same row. */
header.header-section { flex-wrap: nowrap; }
.header-section > .navbar { flex: 1 1 auto; width: auto; max-width: none; min-width: 0; }
.header-section .tw-header-cta { flex: 0 0 auto; margin: 25px 0 0 16px; position: relative; z-index: 22; }
@media (max-width: 1199.98px) { .header-section .tw-header-cta { margin-top: 8px; } }
/* Menu items were 15px each side; 11px frees the room the button needs. */
@media (min-width: 1200px) {
  .header-section .navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item { padding: 0 11px !important; }
}
/* Laptop widths: the 280px home logo already pushed "Company" onto a second row
   at 1280px; a 210px logo keeps the menu and button on one row. */
@media (min-width: 1200px) and (max-width: 1439.98px) {
  .page-template-homepage .header-section .home-logo .whitelogo,
  .page-template-homepage .header-section .home-logo .blacklogo { width: 210px !important; }
  .header-section .navbar .navbar-brand { width: 230px !important; flex: 0 0 auto; }
  .header-section .navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item { padding: 0 8px !important; }
}
.tw-btn-green {
  display: inline-block; background: #70AE54; color: #fff !important;
  font-size: 15px; line-height: 1; padding: 13px 24px; border-radius: 4px;
  text-decoration: none !important; white-space: nowrap; transition: background .2s ease;
}
.tw-btn-green:hover, .tw-btn-green:focus-visible { background: #5e9845; }
.tw-btn-green:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
@media (max-width: 991.98px) { .tw-btn-green { padding: 10px 16px; font-size: 14px; } }

/* ---- Homepage hero (replaced the slider, 2026-11-09) ----
   The theme's hero styles do the rest; these are the new pieces only. */
.home-banner .hero-banner .hero-banner-content h1 .tw-hl { color: #70AE54; white-space: nowrap; }
.home-banner .hero-banner .hero-banner-content .tw-proof {
  margin: 34px 0 0; padding-top: 24px; border-top: 1px solid rgba(112, 174, 84, .45);
  text-transform: uppercase; letter-spacing: .12em;
}
.home-banner .hero-banner .hero-banner-content .tw-proof span { margin: 0 10px; }
/* The photo is landscape (3:2); crop it to the portrait frame the slides used (894x1333). */
.home-banner .hero-banner-img .hero-banner-img-bg img.tw-hero-photo {
  aspect-ratio: 894 / 1333; object-fit: cover; object-position: 72% 50%;
}
