.tour-panel-hover {
    transition: box-shadow 0.2s ease;
}

.tour-panel-hover:hover {
    box-shadow: var(--bs-box-shadow);
}

details[open] .tour-open-icon {
    transform: scale(1.05);
}

details[open] .tour-chevron {
    transform: rotate(180deg);
}

.tour-open-icon,
.tour-chevron {
    transition: transform 0.3s ease;
}

/* values v29 - retro neon grid card, layout/motion only, no colors */
.values-neon-grid__decor {
    z-index: 0;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.values-neon-grid__card {
    z-index: 1;
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

.values-neon-grid__icon-box {
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
}

.values-neon-grid__card:hover {
    transition-duration: 300ms;
    transform: scale(1.05);
}

/* Grid + gap: @sem may obfuscate Tailwind grid/gap — stable class for Bootstrap */
.hover-principles-grid {
    display: grid;
    width: 100%;
    gap: 1.5rem;
    grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 768px) {
    .hover-principles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .hover-principles-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

.philosophy-hover-badge {
    width: 3rem;
    height: 3rem;
}

.philosophy-hover-corner {
    width: 2rem;
    height: 2rem;
}

.philosophy-bg__img {
    object-fit: cover;
}

.staff-zigzag-timeline__stage {
    height: 20rem;
}

