.image_swiper-layout {
    padding-block: max(3rem, calc(6 * var(--su)));
}

.image_swiper-layout.has-background {
    background: var(--avoord-white);
    border-radius: var(--border-radius);
}

.image_swiper-layout .image_swiper-top {
    width: 100%;
    align-items: center;
    gap: max(1rem, calc(2 * var(--su)));
    margin-bottom: max(1.5rem, calc(2.5 * var(--su)));
}

.image_swiper-layout .image_swiper-title .pk-heading {
    margin-bottom: 0;
}

.image_swiper-layout .image_swiper-controls {
    display: flex;
    justify-content: flex-end;
}

.image_swiper-layout .image_swiper-swiper {
    overflow: visible;
}

.image_swiper-layout .image_swiper-slide {
    position: relative;
    height: auto;
}

.image_swiper-layout .image_swiper-card {
    position: relative;
    margin: 0;
    border-radius: var(--border-radius);
    overflow: hidden;
    height: 100%;
    aspect-ratio: 1;
}

.image_swiper-layout .image_swiper-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.image_swiper-layout .image_swiper-info {
    position: absolute;
    top: max(0.75rem, calc(1 * var(--su)));
    right: max(0.75rem, calc(1 * var(--su)));
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: max(2.25rem, calc(2.25 * var(--su)));
    height: max(2.25rem, calc(2.25 * var(--su)));
    border: 0;
    border-radius: max(0.5rem, calc(0.5 * var(--su)));
    background: var(--avoord-white);
    color: var(--avoord-dark-blue);
    cursor: pointer;
    transition: background var(--duration-slow) var(--style-smooth), color var(--duration-slow) var(--style-smooth);
}

.image_swiper-layout .image_swiper-info:hover {
    background: var(--avoord-purple);
    color: var(--avoord-white);
}

.image_swiper-layout .image_swiper-info .material-symbols-outlined {
    font-size: max(1.125rem, calc(1.125 * var(--su)));
    font-variation-settings: 'FILL' 1;
    transition: color var(--duration-slow) var(--style-smooth);
}

.image_swiper-layout .image_swiper-scrollbar {
    position: relative;
    height: 2px;
    margin-top: max(2rem, calc(3 * var(--su)));
    background: hsla(0, 0%, 0%, 0.1);
}

.flex-content:has(.detail_content-layout + .image_swiper-layout) .image_swiper-layout .image_swiper-scrollbar {
    margin-inline: calc(3.25 * var(--su));
}

.image_swiper-layout .image_swiper-scrollbar .swiper-scrollbar-drag {
    background: var(--avoord-purple);
}

/* Dialog */
.image_swiper-dialog {
    width: min(92vw, max(40rem, calc(41.375 * var(--su))));
    max-width: 92vw;
    max-height: 88vh;
    padding: 0;
    border: 0;
    border-radius: var(--border-radius);
    background: var(--avoord-purple);
    color: var(--avoord-white);
    overflow: hidden;
}

.image_swiper-dialog::backdrop {
    background: hsla(216, 100%, 8%, 0.3);
    backdrop-filter: blur(2px);
}

.image_swiper-dialog .image_swiper-dialog-inner {
    position: relative;
    padding: max(1.75rem, calc(3.5 * var(--su)));
}

.image_swiper-dialog .image_swiper-dialog-close {
    position: absolute;
    top: max(1rem, calc(1.75 * var(--su)));
    right: max(1rem, calc(1.75 * var(--su)));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: max(1.75rem, calc(1.75 * var(--su)));
    height: max(1.75rem, calc(1.75 * var(--su)));
    border: 0;
    border-radius: 50%;
    background: var(--avoord-neon-purple);
    color: var(--avoord-purple);
    cursor: pointer;
    transition: transform var(--duration) var(--style-snappy);
}

.image_swiper-dialog .image_swiper-dialog-close:hover {
    transform: scale(1.05);
}

.image_swiper-dialog .image_swiper-dialog-close .material-symbols-outlined {
    font-size: max(1.125rem, calc(1.125 * var(--su)));
}

.image_swiper-dialog .image_swiper-dialog-pill {
    display: inline-flex;
    align-items: center;
    gap: max(0.5rem, calc(0.5 * var(--su)));
    padding: max(0.75rem, calc(0.75 * var(--su))) max(0.875rem, calc(0.875 * var(--su)));
    border-radius: 1500px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    font-size: var(--desktop-body-xs);
    color: var(--avoord-white);
    line-height: 1;
    max-width: calc(100% - max(3rem, calc(3 * var(--su))));
}

.image_swiper-dialog .image_swiper-dialog-pill::before {
    content: "";
    flex: 0 0 auto;
    width: max(0.625rem, calc(0.625 * var(--su)));
    height: max(0.625rem, calc(0.625 * var(--su)));
    border-radius: 50%;
    background: var(--avoord-neon-purple);
}

.image_swiper-dialog .image_swiper-dialog-heading {
    width: 85%;
    color: var(--avoord-white);
    font-size: var(--scaling-h3);
    margin-block: max(1.5rem, calc(2.5 * var(--su))) max(1rem, calc(1 * var(--su)));
}

.image_swiper-dialog .image_swiper-dialog-text {
    color: var(--avoord-white);
    font-size: var(--desktop-body-sm);
}

.image_swiper-dialog .image_swiper-dialog-text p {
    margin-block: 0 max(0.75rem, calc(1 * var(--su)));
}

.image_swiper-dialog .image_swiper-dialog-text p:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 992px) {
    .image_swiper-layout .image_swiper-controls {
        justify-content: flex-start;
    }

    .image_swiper-dialog .image_swiper-dialog-heading {
        width: 100%;
    }

    .flex-content:has(.detail_content-layout + .image_swiper-layout) .image_swiper-layout .image_swiper-scrollbar {
        margin-inline: 0;
    }
}