    .tour-gallery-main {
        height: 400px;
    }

    .tour-thumb {
        width: 128px;
        height: 128px;
        border: 1px solid var(--light-20);
        background-color: var(--light-00);
        padding: 0;
    }

    .tour-thumb.is-active {
        border-color: var(--blue-70);
        box-shadow: 0 0 0 1px var(--blue-70);
    }

    .tour-list-icon {
        width: 16px;
        height: 16px;
        flex-shrink: 0;
        margin-top: 2px;
        color: var(--dark-70);
    }

    .tour-itinerary {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .tour-itinerary::before {
        content: "";
        position: absolute;
        left: 5px;
        top: 6px;
        bottom: 6px;
        width: 2px;
        background-color: var(--dark-70);
        border-radius: 2px;
    }

    .tour-itinerary-item {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding-left: 24px;
    }

    .tour-itinerary-item::before {
        content: "";
        position: absolute;
        left: -2.5px;
        top: 6px;
        width: 12px;
        height: 12px;
        border-radius: 9999px;
        border: var(--light-00) solid 2px;
        background-color: var(--dark-70);
    }

    .ct-main {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 16px;
    }

    .ct-resume-row-mod,
    .ct-main-row-mod {
        align-items: center;
        justify-content: flex-end;
        gap: 16px;
    }

    .ct-row-select-mod {
        max-width: 100px;
    }

    .ct-row-title {
        flex: 1;
    }

    .ct-row-total,
    .ct-row-unit {
        display: flex;
        justify-content: flex-end;
        min-width: 130px;
    }

    .sticky-aside {
        position: sticky;
        top: 24px;
        align-self: flex-start;
    }

    .glow-on-hover {
        transition: box-shadow 180ms ease, transform 180ms ease;
    }

    .glow-on-hover:hover,
    .glow-on-hover:focus-visible {
        box-shadow: 0 0 0 2px rgba(136, 229, 164, 0.6),
            0 0 12px 4px rgba(136, 229, 164, 0.45),
            0 0 24px 8px rgba(136, 229, 164, 0.3);
        transform: translateY(-1px);
    }

    @media screen and (max-width: 964px) {
        .tour-gallery-main {
            height: 320px;
        }

        .tour-thumb {
            width: 72px;
            height: 72px;
        }
    }


    .card-clickable {
        position: relative;
    }

    .card-overlay {
        display: block;
        position: absolute;
        inset: 0;
        background: transparent;
        z-index: 1;
        pointer-events: auto;
    }

    .card-clickable .border-button.small-button-mod {
        position: relative;
        z-index: 2;
    }

    /* Mobile card highlight */
    @@media (max-width: 767px) {
        .card-clickable {
            transition: box-shadow 120ms ease, transform 120ms ease, background-color 120ms ease;
        }

        .card-clickable:active,
        .card-clickable.is-active,
        .card-clickable:focus-within {
            box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.06), 0 4px 12px rgba(0, 0, 0, 0.12);
            background-color: #f8fafc;
            /* subtle tint */
            transform: translateY(1px);
        }
    }

    /* Overlay activo en todas las resoluciones; en mobile ya estaba habilitado */