.gm-square-carousel{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#eee;isolation:isolate}.gm-square-carousel__track{display:flex;width:100%;height:100%;transition:transform var(--gm-speed,500ms) ease;will-change:transform}.gm-square-carousel__slide{display:block;flex:0 0 100%;width:100%;height:100%;cursor:zoom-in}.gm-square-carousel__slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.gm-square-carousel__arrows{position:absolute;right:15px;bottom:15px;display:flex;gap:12px;z-index:2}.gm-square-carousel__arrows button{appearance:none;border:1px solid #fff;border-radius:0;width:52px;height:52px;background:rgba(255,255,255,.24);color:#fff;display:grid;place-items:center;padding:12px;cursor:pointer;transition:background .2s}.gm-square-carousel__arrows button:hover,.gm-square-carousel__arrows button:focus-visible{background:rgba(0,0,0,.55)}.gm-square-carousel__arrows svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gm-square-carousel__arrows button:disabled{opacity:.35;cursor:default}.gm-square-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:55px 70px;box-sizing:border-box}.gm-square-lightbox img{display:block;max-width:100%;max-height:calc(100vh - 110px);object-fit:contain}.gm-square-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:36px;width:48px;height:52px;cursor:pointer;display:grid;place-items:center}.gm-square-lightbox__close{top:12px;right:16px}.gm-square-lightbox__prev{left:10px;top:50%;transform:translateY(-50%)}.gm-square-lightbox__next{right:10px;top:50%;transform:translateY(-50%)}.gm-square-lightbox__caption{position:absolute;bottom:12px;left:20px;right:20px;text-align:center;color:#fff;font-size:14px}@media(max-width:600px){.gm-square-carousel__arrows{right:10px;bottom:10px;gap:8px}.gm-square-carousel__arrows button{width:42px;height:42px;padding:9px}.gm-square-lightbox{padding:60px 42px}}

/* Lightbox navigation: scoped to the actual GM Square Carousel classes. */
.gm-square-lightbox .gm-square-lightbox__close,
.gm-square-lightbox .gm-square-lightbox__prev,
.gm-square-lightbox .gm-square-lightbox__next {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0 !important;
    background: rgba(25,25,25,.65) !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    cursor: pointer;
    transition: background .25s ease, border-color .25s ease;
}
.gm-square-lightbox .gm-square-lightbox__close:hover,
.gm-square-lightbox .gm-square-lightbox__prev:hover,
.gm-square-lightbox .gm-square-lightbox__next:hover {
    background: rgba(45,45,45,.95) !important;
    border-color: rgba(255,255,255,.5) !important;
}
.gm-square-lightbox button:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
}
.gm-square-lightbox button:focus-visible {
    outline: 2px solid #fff !important;
    outline-offset: 3px;
}
.gm-square-lightbox button[hidden] { display: none !important; }
.gm-square-lightbox button svg {
    display: block;
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.gm-square-lightbox .gm-square-lightbox__close { top: 16px; right: 16px; }
.gm-square-lightbox .gm-square-lightbox__prev { left: 16px; }
.gm-square-lightbox .gm-square-lightbox__next { right: 16px; }

/* Thumbnail navigation, four visible at a time */
.gm-square-carousel-thumbs{width:100%;margin-top:12px;box-sizing:border-box}
.gm-square-carousel-thumbs__viewport{overflow:hidden;width:100%}
.gm-square-carousel-thumbs__track{display:flex;align-items:stretch;transition:transform var(--gm-speed,500ms) ease}
.gm-square-carousel-thumbs__item{box-sizing:border-box;flex:0 0 calc(25% - 9px);aspect-ratio:1/1;min-width:0;margin:0 12px 0 0;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;cursor:pointer;overflow:hidden;position:relative;box-shadow:none!important}
.gm-square-carousel-thumbs__item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .2s ease}
.gm-square-carousel-thumbs__item[aria-pressed="false"] img{opacity:.65}
.gm-square-carousel-thumbs__item:hover img,.gm-square-carousel-thumbs__item[aria-pressed="true"] img{opacity:1}
.gm-square-carousel-thumbs__item[aria-pressed="true"]:after{content:"";position:absolute;inset:0;border:3px solid #fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.6);pointer-events:none}
.gm-square-carousel-thumbs__item:focus-visible{outline:2px solid #222!important;outline-offset:-3px}
