/* Approved participation carousel, isolated from all other page components. */
.ah-participation{overflow:hidden}.ah-participation .section-heading{margin-bottom:0}.ah-participation .ah-participation-action>p{color:var(--muted);margin:0}.ah-participation-action .button{margin-top:26px}
.ah-carousel-stage:focus-visible{outline:3px solid #a02b55;outline-offset:-4px}
.ah-carousel{width:100%;margin:auto}.ah-carousel-stage{position:relative;height:610px;--card-width:clamp(310px,31vw,450px);--step:calc(var(--card-width) + 27px);perspective:1600px;touch-action:pan-y;user-select:none;outline-offset:-4px!important}.ah-slide{position:absolute;top:42px;left:50%;width:var(--card-width);height:520px;margin-left:calc(var(--card-width) / -2);border-radius:26px;overflow:hidden;box-shadow:0 14px 24px #38252e20;transform-origin:50% 50%;will-change:transform,opacity}.ah-slide>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 35%;pointer-events:none}.ah-slide:not(.is-active){cursor:pointer}
.ah-slide-copy{position:absolute;bottom:16px;left:14px;right:14px;background:#4c2435f0;color:#fff7f7;border-radius:20px;padding:20px 22px 23px;box-shadow:0 4px 20px #21151b10;backdrop-filter:blur(14px)}.ah-slide-number{margin:0 0 8px!important;letter-spacing:.14em;font-size:9px!important;opacity:.7}.ah-slide h3{margin:0 0 10px;font-weight:600;letter-spacing:-.035em;font-size:clamp(19px,1.8vw,25px);line-height:1.25}.ah-slide-copy>p{margin:0;font-size:12px;line-height:1.65}
/* Fluid cards: scale the cards themselves with the available stage, not only the gaps. */
.ah-carousel{max-width:3200px;container-type:inline-size}
.ah-carousel-stage{--card-width:30cqw;--card-height:clamp(510px,36cqw,650px);height:calc(var(--card-height) + 100px)}
.ah-slide{height:var(--card-height);background:#38252e}
.ah-slide>img{height:calc(100% - 125px);object-position:center 35%}
.ah-slide-copy{background:#4c2435;backdrop-filter:none}
.ah-slide h3{font-size:clamp(22px,1.5cqw,34px)}
.ah-slide-copy>p{font-size:clamp(12px,.78cqw,18px)}

@media(max-width:1023px){.ah-carousel-stage{--card-width:min(64cqw,480px);--card-height:560px}}
@media(max-width:560px){.ah-carousel-stage{--card-width:calc(100vw - 56px);--card-height:480px;height:560px}.ah-slide h3{font-size:21px}.ah-slide-copy>p{font-size:11px}.ah-slide>img{height:calc(100% - 150px)}.ah-slide:nth-child(4)>img{object-position:35% center}}
@media(max-width:360px){.ah-slide h3{font-size:19px}.ah-slide-copy>p{font-size:10.5px}}

/* Soft, neutral depth beneath each card, carried along with its orbit. */
.ah-slide{box-shadow:0 7px 12px -7px rgb(40 29 34 / .2),0 28px 32px -18px rgb(40 29 34 / .28),0 48px 54px -36px rgb(40 29 34 / .2)}
.ah-slide:nth-child(2)>img{object-position:40% top}

.ah-slide:nth-child(5)>img{object-position:80% center}
.ah-slide:nth-child(3)>img{object-position:45% top}

.ah-carousel{margin-top:36px}
@media(max-width:560px){.ah-carousel{margin-top:20px}}

.ah-slide-number{color:inherit;display:block;font-weight:400}
.ah-carousel:not(.is-ready) .ah-carousel-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;height:auto;padding:30px 24px}
.ah-carousel:not(.is-ready) .ah-slide{position:relative;top:auto;left:auto;width:100%;margin:0}
@media(max-width:850px){.ah-participation .section-heading{display:block}.ah-participation-action{margin-top:26px}.ah-carousel:not(.is-ready) .ah-carousel-stage{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ah-slide{top:36px;border-radius:23px}.ah-slide-copy{left:11px;right:11px;bottom:12px;padding:18px 18px 20px;border-radius:17px}.ah-carousel:not(.is-ready) .ah-carousel-stage{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ah-carousel *{transition:none!important;animation:none!important}}

/* Six compact slide selectors with comfortable pointer/touch targets. */
.ah-carousel-dots{display:flex;justify-content:center;gap:2px;margin:0 auto;padding:0 16px}
.ah-carousel-dots button{display:grid;place-items:center;width:36px;height:44px;padding:0;border:0;border-radius:6px;background:transparent;cursor:pointer;box-shadow:none}
.ah-carousel-dots button span{display:block;width:8px;height:8px;border-radius:5px;background:#cfb1bc;transition:width .25s,background .25s}
.ah-carousel-dots button[aria-current="true"] span{width:24px;background:#a02b55}
.ah-carousel-dots button:hover span{background:#a02b55}
.ah-carousel-dots button:focus-visible{outline:2px solid #a02b55;outline-offset:1px}
