.amGallery {
    padding: clamp(64px, 7vw, 110px) 0 64px;
    overflow: hidden;
    background: #f5f6f8;
    color: #111820;
}
.amGallery button { font: inherit; color: inherit; cursor: pointer; }
.amGallery__intro { max-width: 900px; margin: 0 auto 54px; padding: 0 24px; text-align: center; }
.amGallery__eyebrow { display: block; margin-bottom: 14px; color: #5b6b79; font-size: 13px; letter-spacing: .13em; text-transform: uppercase; }
.amGallery__intro h2 { margin: 0; font-size: clamp(30px, 3.6vw, 52px); line-height: 1.15; font-weight: 500; letter-spacing: -.035em; }
.amGallery__stage {
    position: relative;
    max-width: 1440px;
    margin: auto;
    padding: 20px;
    display: grid;
    gap: 45px;
    border-inline: 1px dashed #d4d8dd;
    background: repeating-linear-gradient(to bottom, #ccd1d7 0, #ccd1d7 .5px, transparent .5px, transparent 12px);
    touch-action: pan-y;
}
.amGallery .amGallery__card {
    position: relative;
    display: block;
    width: 100%;
    padding: 6px;
    border: 0;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 32px #17233114;
}
.amGallery__card img { display: block; width: 100%; height: auto; border: 1px solid #e5e7eb; border-radius: 10px; user-select: none; }
.amGallery__tag { position: absolute; bottom: calc(100% - 1px); left: 50%; transform: translateX(-50%); padding: 9px 20px 10px; border-radius: 10px 10px 0 0; background: #fff; font-size: 16px; font-weight: 500; white-space: nowrap; }
.amGallery.is-ready .amGallery__stage { display: block; width: calc(100% - 64px); height: clamp(410px, 46vw, 660px); padding: 0; }
.amGallery.is-ready .amGallery__card {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 54%;
    transform: translate(-50%, -50%);
    transition: none;
    will-change: transform;
}
.amGallery.is-animated .amGallery__card { transition: transform 800ms cubic-bezier(.6, 0, .35, 1), opacity 500ms ease, box-shadow 400ms ease; }
.amGallery__card[data-position="0"] { z-index: 3; box-shadow: 0 20px 45px #17233124; cursor: default; }
.amGallery.is-ready .amGallery__card[data-position="-1"] { z-index: 2; transform: translate(-96%, -50%) scale(.85); }
.amGallery.is-ready .amGallery__card[data-position="1"] { z-index: 2; transform: translate(-4%, -50%) scale(.85); }
.amGallery__card[data-position="-1"] .amGallery__tag { left: 18px; transform: none; }
.amGallery__card[data-position="1"] .amGallery__tag { left: auto; right: 18px; transform: none; }
.amGallery.is-ready .amGallery__card[data-position="-2"] { z-index: 1; transform: translate(-110%, -50%) scale(.75); opacity: 0; pointer-events: none; }
.amGallery.is-ready .amGallery__card[data-position="2"] { z-index: 1; transform: translate(10%, -50%) scale(.75); opacity: 0; pointer-events: none; }
.amGallery__controls { display: flex; justify-content: center; align-items: center; gap: 24px; padding: 32px 24px 0; }
.amGallery__controls[hidden] { display: none; }
.amGallery__choices { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.amGallery .amGallery__choice { display: flex; align-items: center; gap: 8px; background: transparent; border: 1px solid transparent; border-radius: 24px; padding: 10px 14px; font-size: 14px !important; }
.amGallery__choice[aria-pressed="true"] { background: #fff; border-color: #dce1e7; box-shadow: 0 2px 5px #17233108; }
.amGallery__dot { width: 5px; height: 5px; border-radius: 50%; background: #a8b3bf; }
.amGallery__choice[aria-pressed="true"] .amGallery__dot { background: #cf28ba; }
.amGallery .amGallery__arrow { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; padding: 0; border: 1px solid #d4dbe2; border-radius: 50%; background: #fff; }
.amGallery__arrow svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.amGallery button:focus-visible, .amGallery a:focus-visible { outline: 3px solid #176bad; outline-offset: 5px; }
.amGallery__details { max-width: 860px; padding: 24px 24px 0; margin: auto; text-align: center; }
.amGallery__status { margin-bottom: 18px; font-size: 12px; letter-spacing: .06em; color: #526170; }
.amGallery__copy .bScreenSlider__text { margin: 0 0 12px; font-size: 16px; line-height: 1.65; color: #526170; opacity: 1; }
.amGallery__enlarge { display: inline-block; margin-top: 10px; font-size: 13px; color: #365a78; text-underline-offset: 4px; text-decoration: underline; }
@media (hover: hover) and (pointer: fine) {
    .amGallery.is-ready .amGallery__card[data-position="-1"]:hover { transform: translate(-97%, -50%) scale(.875); }
    .amGallery.is-ready .amGallery__card[data-position="1"]:hover { transform: translate(-3%, -50%) scale(.875); }
    .amGallery__arrow:hover, .amGallery__choice:hover { background: #e9edf2; }
}
@media (max-width: 900px) {
    .amGallery.is-ready .amGallery__stage { width: 100%; height: 64vw; }
    .amGallery.is-ready .amGallery__card { width: 72%; }
    .amGallery__controls { gap: 12px; }
    .amGallery .amGallery__choice { padding: 10px; }
    .amGallery__card[data-position="-1"] .amGallery__tag, .amGallery__card[data-position="1"] .amGallery__tag { visibility: hidden; }
}
@media (max-width: 600px) {
    .amGallery { padding: 54px 0 40px; }
    .amGallery__intro { margin-bottom: 48px; }
    .amGallery.is-ready .amGallery__stage { height: 78vw; }
    .amGallery.is-ready .amGallery__card { width: 88%; padding: 4px; border-radius: 11px; }
    .amGallery__card img { border-radius: 7px; }
    .amGallery__tag { font-size: 14px; padding: 7px 16px; }
    .amGallery__controls { padding-top: 22px; gap: 14px; }
    .amGallery__choices { gap: 0; flex-wrap: nowrap; }
    .amGallery .amGallery__choice { min-width: 36px; min-height: 44px; justify-content: center; padding: 10px; border: 0; }
    .amGallery__choice span:last-child { display: none; }
    .amGallery__choice[aria-pressed="true"] { background: transparent; box-shadow: none; }
    .amGallery__dot { width: 7px; height: 7px; }
    .amGallery__details { padding-top: 18px; }
    .amGallery__copy .bScreenSlider__text { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
    .amGallery.is-animated .amGallery__card { transition: none; }
}
