/* ========================= */
/* BASE */
/* ========================= */

body {
    margin: 0;
    overflow: hidden;
    background: #ffffff;
}

/* ========================= */
/* WRAPPER */
/* ========================= */

.wild-wrapper {
    height: calc(var(--vh, 1vh) * 100);
    overflow: hidden;
    padding: 0 40px;
    cursor: none;

    display: flex;
    align-items: stretch;
}

/* ========================= */
/* TRACK */
/* ========================= */

.swiper-wrapper {
    display: flex;
    gap: 15px;
    will-change: transform;
}

/* ========================= */
/* SLIDES */
/* ========================= */

.wild-slide {
    height: 100%;
    width: 30vw;
    max-width: 600px;

    padding-top: 0;

    flex-shrink: 0;
    display: flex;
}

/* ========================= */
/* CARD */
/* ========================= */

.wild-card {
    height: calc(100% - 16px);
    width: 100%;

    border-radius: 20px;
    overflow: hidden;
    background: #111;

    display: flex;
    flex-direction: column;
}

/* ========================= */
/* IMAGE */
/* ========================= */

.wild-img {
    flex: 1;
}

.wild-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ========================= */
/* CONTENT */
/* ========================= */

.wild-content {
    padding: 20px;
    color: #fff;
}

/* ========================= */
/* CURSOR */
/* ========================= */

.wild-cursor {
    position: fixed;
    transform: translate(-50%, -50%);
    background: #fff;
    color: #000;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 13px;
    pointer-events: none;
    opacity: 0;
    z-index: 9999;
    transition: opacity 0.3s ease;
}

.wild-cursor.active {
    opacity: 1;
}


/* ========================= */
/* MOBILE FIX */
/* ========================= */

@media (max-width: 768px) {

    .wild-wrapper {
        padding: 0 20px;
    }

    .wild-slide {
        width: 85vw; /* 👈 show ONE item */
        max-width: none;
    }

    .swiper-wrapper {
        gap: 15px;
    }

    /* hide custom cursor on mobile */
    .wild-cursor {
        display: none;
    }
}