/* One continuous scene: the copy floats over a softly lit wall, not a column. */
.abc-carousel__pause { position: absolute; bottom: 8px; right: 3%; z-index: 3; border: 1px solid #d5c9bc; border-radius: 20px; background: #fffdf9eb; color: #513b2b; padding: 6px 12px; font: inherit; font-size: 12px; cursor: pointer; }
.abc-hero { background: #f8f3ed; overflow: hidden; }
.abc-home .abc-hero { display: grid; min-height: max(480px, calc(100svh - 218px)); }
.abc-home .abc-hero__slide { display: block; grid-area: 1 / 1; visibility: hidden; pointer-events: none; }
.abc-home .abc-hero__slide.is-active { visibility: visible; pointer-events: auto; }
.abc-home .abc-hero__grid { height: 100%; }
@media(max-width:768px) { .abc-home .abc-hero { min-height: max(650px, calc(100svh - 110px)); } }
.abc-hero__slide { position: relative; isolation: isolate; }
.abc-hero__grid { display: flex; min-height: 480px; }
.abc-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; }
.abc-hero__image img { width: 100%; height: 100%; min-height: 0; max-height: none; object-fit: cover; object-position: right center; mix-blend-mode: normal; }
.abc-hero__slide::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, rgba(248,243,237,.87) 0%, rgba(248,243,237,.77) 25%, rgba(248,243,237,.70) 40%, rgba(248,243,237,.42) 54%, rgba(248,243,237,.11) 67%, rgba(248,243,237,0) 88%); }
.abc-hero__copy { width: 57%; padding: 48px 0 54px 4%; background: transparent; }
.abc-hero__copy h1, .abc-hero__copy h2 { font-size: clamp(2.6rem,4.4vw,4.7rem); }
.abc-hero__copy > p:not(.abc-eyebrow) { max-width: 420px; }
.abc-carousel__control, .abc-carousel__dots { z-index: 3; }
.abc-hero .abc-carousel__control { display: none; }
@media (max-width: 900px) and (min-width: 681px) {
 .abc-hero__copy { width: 65%; padding-left: 6%; }
 .abc-hero__grid { min-height: 460px; }
}
@media (max-width: 680px) {
 .abc-hero__grid { display: flex; min-height: 650px; justify-content: flex-start; }
 .abc-hero__copy { width: 100%; padding: 32px 5% 280px; }
 .abc-hero__copy h1, .abc-hero__copy h2 { font-size: clamp(2.35rem,8.3vw,3.2rem); }
 .abc-hero__image { top: auto; bottom: 0; height: 72%; }
 .abc-hero__image img { height: 100%; object-position: 75% bottom; }
 .abc-hero__slide::after { background: linear-gradient(180deg, #f8f3ed 0%, rgba(248,243,237,.87) 27%, rgba(248,243,237,.67) 43%, rgba(248,243,237,.21) 61%, rgba(248,243,237,0) 80%); }
 .abc-hero .abc-actions { gap: 10px; }
}
