.gacs-rider-card {
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.35s ease;
}

.gacs-rider-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 32px 90px -48px rgba(14, 165, 233, 0.35);
    border-color: rgba(56, 189, 248, 0.35);
}

.gacs-riders-carousel {
    display: flex;
    gap: 1.25rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.5rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(148, 163, 184, 0.4) transparent;
}

.gacs-riders-carousel > * {
    flex: 0 0 min(85vw, 300px);
    scroll-snap-align: start;
}

@media (min-width: 768px) {
    .gacs-riders-carousel > * {
        flex: 0 0 calc(33.333% - 0.85rem);
    }
}

.gacs-profile-quote {
    border-left: 3px solid rgb(14 165 233);
    font-family: 'Newsreader', ui-serif, Georgia, serif;
}

.gacs-rider-expand[open] summary .gacs-rider-expand-icon {
    transform: rotate(180deg);
}

.gacs-rider-expand summary {
    cursor: pointer;
    list-style: none;
}

.gacs-rider-expand summary::-webkit-details-marker {
    display: none;
}

.gacs-team-logo {
    object-fit: contain;
    filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.25));
}
