.site-skip-link {
    position: fixed;
    top: 1rem;
    left: 1rem;
    z-index: 100;
    transform: translateY(-200%);
    border-radius: 0.5rem;
    background: #ffffff;
    color: #1f2937;
    font-weight: 700;
    padding: 0.75rem 1rem;
    box-shadow: 0 10px 25px rgb(15 23 42 / 0.2);
}

.site-skip-link:focus {
    transform: translateY(0);
    outline: 3px solid #059669;
    outline-offset: 3px;
}

#site-menu-button {
    min-width: 2.75rem;
    min-height: 2.75rem;
}

.site-header-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding-block: 0.25rem;
    text-decoration: none;
}

.site-header-link::after {
    position: absolute;
    right: 0;
    bottom: -0.2rem;
    left: 0;
    height: 2px;
    border-radius: 9999px;
    background: #34d399;
    content: "";
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-header-link:hover::after,
.site-header-link:focus-visible::after,
.site-solutions-menu[data-open="true"] > .site-header-link::after {
    transform: scaleX(1);
}

.site-header-link:focus-visible {
    border-radius: 0.25rem;
    outline: 2px solid #ffffff;
    outline-offset: 4px;
}

.site-solutions-dropdown {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.375rem);
    transition:
        opacity 210ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 210ms cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 280ms;
}

.site-solutions-menu[data-open="true"] .site-solutions-dropdown {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

.site-solution-item {
    opacity: 0;
    transform: translateY(-0.25rem);
    transition:
        background-color 180ms ease,
        color 180ms ease,
        opacity 140ms ease,
        transform 140ms ease;
    transition-delay: calc(var(--solution-reverse-index) * 30ms);
}

.site-solutions-menu[data-open="true"] .site-solution-item {
    opacity: 1;
    transform: translateY(0);
    transition-delay: calc(var(--solution-index) * 40ms);
}

.site-solution-copy {
    transition: transform 200ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-solution-item:hover .site-solution-copy,
.site-solution-item:focus-visible .site-solution-copy {
    transform: translateX(3px);
}

.site-solution-item:focus-visible {
    outline: 2px solid #059669;
    outline-offset: -2px;
}

@media (prefers-reduced-motion: reduce) {
    .site-header-link::after,
    .site-solutions-dropdown,
    .site-solution-item,
    .site-solution-copy {
        transition-delay: 0s;
        transition-duration: 0.01ms;
    }
}
