/* ===== HERO: MOBILE-ONLY TUNING ===== */
@media (max-width: 767.98px) {
  .banner.banner-section {
    background-size: cover;
    background-position: 60% center;       /* show more fence, less sky */
  }

  .banner.banner-section .banner-filter {
    /* subtle darkening for readability over the image */
    background: linear-gradient(0deg, rgba(0,0,0,.55), rgba(0,0,0,.55));
  }

  .banner.banner-section .home-banner-height {
    min-height: 68vh;                       /* keep it tall-but-not-massive */
    padding: 56px 0;
  }

  .banner.banner-section h1 {
    text-transform: uppercase;               /* match the art direction */
    font-weight: 800;
    font-size: clamp(28px, 9vw, 44px);       /* scales nicely on small screens */
    line-height: 1.05;
    letter-spacing: .5px;
    margin-bottom: 12px;
    text-wrap: balance;                      /* prettier line breaks on mobile */
    text-shadow: 0 1px 2px rgba(0,0,0,.5);
  }

  .banner.banner-section h1 .over {
    display: block;
    color: #fff;                              /* keep company line white */
    font-weight: 700;
    font-size: clamp(12px, 3.6vw, 16px);
    letter-spacing: .08em;
    margin-bottom: 6px;
  }

  .banner.banner-section p {
    max-width: 30rem;
    margin: 0 auto;
    padding: 0 8px;
    font-size: clamp(13px, 3.7vw, 16px);
    line-height: 1.45;
    text-shadow: 0 1px 2px rgba(0,0,0,.5);
  }
}


/* === Mills family image — mobile-only fix === */
@media (max-width: 767.98px) {
  .banner img.center-image {
    display: block;
    width: 100% !important;      /* fill the column */
    max-width: 100% !important;  /* override inline 500px */
    height: auto !important;     /* maintain aspect ratio */
    object-fit: contain;         /* absolutely no crop */
    margin: 0 auto;
  }

  /* safety: ensure no parent clips it */
  .banner .col-lg-6.col-md-10 { 
    overflow: visible !important;
  }
}
