.tz-hero.tz-carousel .tz-hero__copy { position: relative; }
.tz-carousel__background { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; transition: opacity .8s ease; pointer-events: none; z-index: 0; }
.tz-carousel__background.is-active { opacity: 1; }
.tz-hero.tz-carousel .tz-hero__wash { z-index: 1; pointer-events: none; }
.tz-carousel__slide { transition: opacity .6s ease; opacity: 1; }
.tz-carousel__slide:not(:first-child) { position: absolute; inset: 0; }
.tz-carousel__slide[aria-hidden=true] { opacity: 0; visibility: hidden; pointer-events: none; }
.tz-carousel__controls { position: absolute; z-index: 4; left: 6.25%; bottom: 116px; display: flex; align-items: center; gap: 10px; }
.tz-carousel__controls button { display: grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid rgba(0,120,158,.45); border-radius: 50%; background: rgba(255,255,255,.88); color: #006789; cursor: pointer; font-size: 22px; line-height: 1; }
.tz-carousel__controls .tz-carousel__dot { width: 26px; height: 34px; border: 0; background: transparent; }
.tz-carousel__dot::after { content: ''; width: 9px; height: 9px; border-radius: 50%; background: #fff; border: 1px solid #008fac; }
.tz-carousel__dot[aria-pressed=true]::after { background: #009fbc; box-shadow: 0 0 0 3px rgba(0,159,188,.16); }
.tz-carousel__controls .tz-carousel__pause { font-size: 15px; }
.tz-carousel__controls button:hover { background-color: #dff5f9; }
.tz-carousel__controls button:focus-visible { outline: 3px solid #007fab; outline-offset: 3px; }
@media(max-width:900px) { .tz-carousel__controls { left: 50%; transform: translateX(-50%); bottom: 113px; }.tz-carousel__background { background-position: 58% center; } }
@media(max-width:600px) { .tz-carousel__controls { bottom: 94px; }.tz-carousel__background { background-position: 60% center; } }
@media(prefers-reduced-motion:reduce) { .tz-carousel__background,.tz-carousel__slide { transition: none; } }
