.carousel-slides{display:grid}.carousel-slide{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 700ms ease,visibility 700ms}.carousel-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.home-carousel .hero-copy h2{font-size:clamp(36px,3.5vw,52px);line-height:1.2;letter-spacing:-.025em}.home-carousel .hero-copy h2 span{color:var(--green)}
.home-carousel{position:relative;padding-bottom:82px}
.carousel-controls{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:2px}
.carousel-controls[hidden]{display:none}
.carousel-direction{display:contents}
.carousel-controls button{display:grid;place-items:center;cursor:pointer;color:#dce4ef;background:transparent;border:0;border-radius:50%;width:44px;height:44px;padding:0;line-height:1;transition:color 160ms ease,background 160ms ease}
.carousel-controls button:hover{background:#ffffff12;color:var(--green)}
.carousel-controls button:focus-visible{outline:2px solid var(--green);outline-offset:0}
.carousel-direction button{font-size:24px}
.carousel-direction [data-carousel-prev]{order:0}
.carousel-dots{display:flex;order:1;gap:0}
.carousel-direction [data-carousel-next]{order:2}
.carousel-dots button:before{content:'';display:block;width:6px;height:6px;border:1px solid #dce4ef;border-radius:50%;transition:background 160ms ease,box-shadow 160ms ease}
.carousel-dots button[aria-current=true]:before{background:var(--green);border-color:var(--green);box-shadow:0 0 0 4px #c3de8426}
.carousel-count{display:none}
.carousel-controls .carousel-toggle{order:3;font-size:0;margin-left:8px}
.carousel-toggle:before{content:'';width:9px;height:11px;border-left:3px solid currentColor;border-right:3px solid currentColor}
.carousel-toggle[data-paused=true]:before{width:0;height:0;border:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;margin-left:2px}
.carousel-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.home-carousel .hero-copy h2{font-size:36px}.home-carousel{padding-bottom:78px}.carousel-controls{bottom:12px}}
@media(prefers-reduced-motion:reduce){.carousel-slide,.carousel-controls button,.carousel-dots button:before{transition:none}}

.carousel-progress{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);width:240px;max-width:calc(100% - 48px);height:4px;border-radius:4px;background:#ffffff40;pointer-events:none;overflow:hidden}.carousel-progress[hidden]{display:none}.carousel-progress span{display:block;width:100%;height:100%;background:var(--green);transform:scaleX(0);transform-origin:left center}

.carousel-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px;row-gap:24px;align-items:start}.carousel-layout .carousel-slides{grid-column:1;grid-row:1}.carousel-images{grid-column:2;grid-row:1 / span 2;display:grid;align-self:stretch}.carousel-photo{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transition:opacity 700ms ease,visibility 700ms}.carousel-photo.is-active{opacity:1;visibility:visible}.carousel-images .hero-image img{height:100%;max-height:490px;min-height:330px;object-fit:cover}.carousel-images .hero-image{display:flex;flex-direction:column}.carousel-images .image-caption{position:static}.hero-choices{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-self:start}.hero-choices>div{min-width:0}.hero-choices .button{display:flex;justify-content:center;gap:8px;padding:14px 10px;font-size:13px;text-align:center;min-height:54px}.hero-choices p{font-size:13px;line-height:1.6;margin:12px 0 6px}.hero-directions,.slide-detail a{color:#fff;text-decoration:underline;font-size:13px;text-underline-offset:3px}.hero-directions{display:inline-block;padding:6px 0}.slide-detail{margin:12px 0}.home-carousel .hero-copy .hero-note{font-size:13px;line-height:1.5}.home-carousel .hero-copy h2{font-size:clamp(32px,3.1vw,46px)}@media(max-width:900px){.carousel-layout{grid-template-columns:minmax(0,1fr);gap:24px}.carousel-images{grid-column:1;grid-row:3}.hero-choices{grid-row:2}.carousel-images .hero-image img{height:300px;min-height:0}.home-carousel .hero-copy{max-width:none}}@media(max-width:600px){.home-carousel{padding-top:28px}.home-carousel .hero-copy h2{font-size:32px}.hero-choices{gap:14px}.hero-choices .button{font-size:13px;min-height:66px}.hero-choices p,.hero-directions{font-size:12px}.carousel-images .hero-image img{height:230px}}@media(prefers-reduced-motion:reduce){.carousel-photo{transition:none}}

@media(min-width:901px){.carousel-layout{grid-template-rows:min-content 1fr}.carousel-images .hero-image img{height:410px;max-height:410px;min-height:0}}
