/* Homepage-only campaign artwork, based on the approved desktop/mobile mockups. */
.lo-home-banners { scroll-margin-top: 150px; }
.lo-home-banners article.lo-home-banner {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-width: 0;
    min-height: 232px;
    padding: 0;
    border: 0;
    background: #f1eae0;
    color: var(--d1-ink);
}
.lo-home-banners article.lo-home-banner--materials {
    background: #123a33;
    color: #fff;
}
.lo-home-banner__picture,
.lo-home-banner .lo-home-banner__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    pointer-events: none;
}
.lo-home-banner .lo-home-banner__image { object-fit: cover; object-position: center; }
.lo-home-banner__picture .lo-home-banner__image { z-index: auto; }
.lo-home-banner::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(90deg, #f1eae0 0%, #f1eae0 38%, rgba(241,234,224,.94) 48%, rgba(241,234,224,0) 67%);
}
.lo-home-banner--materials::after {
    background: linear-gradient(90deg, #123a33 0%, #123a33 38%, rgba(18,58,51,.94) 48%, rgba(18,58,51,0) 67%);
}
.lo-home-banner__copy { width: 59%; padding: 24px; }
.lo-home-banners .lo-d1-eyebrow { color: inherit; font-size: 10px; letter-spacing: .1em; margin: 0 0 8px; }
.lo-home-banners h2 { color: inherit; font-size: 28px; line-height: 1.1; letter-spacing: -.025em; margin: 0 0 8px; }
.lo-home-banner--materials h2 { max-width: 280px; text-wrap: balance; }
.lo-home-banners p:not(.lo-d1-eyebrow) { color: inherit; font-size: 16px; line-height: 1.35; margin: 0 0 16px; }
.lo-home-banners .lo-d1-button { width: auto; min-height: 44px; padding: 10px 16px; font-size: 14px; gap: 12px; white-space: normal; }
.lo-home-banners .lo-d1-button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px var(--d1-ink); }
@media (min-width: 768px) and (max-width: 1023px) {
    .lo-home-banners { grid-template-columns: 1fr; }
    .lo-home-banner__copy { width: 55%; padding: 28px; }
}
@media (max-width: 767px) {
    .lo-home-banners article.lo-home-banner { min-height: 244px; }
    .lo-home-banner__copy { width: 72%; padding: 20px 16px; }
    .lo-home-banners h2 { font-size: 24px; }
    .lo-home-banners .lo-d1-eyebrow { font-size: 10px; }
    .lo-home-banner .lo-home-banner__image { object-position: right center; }
    .lo-home-banner--cnc .lo-home-banner__image { object-position: 75% center; }
    .lo-home-banner::after { background: linear-gradient(90deg, #f1eae0 0%, #f1eae0 50%, rgba(241,234,224,.95) 65%, rgba(241,234,224,0) 90%); }
    .lo-home-banner--materials::after { background: linear-gradient(90deg, #123a33 0%, #123a33 50%, rgba(18,58,51,.95) 65%, rgba(18,58,51,0) 90%); }
    .lo-home-banners .lo-d1-button { padding-inline: 12px; }
}
