.button {
    min-height: 54px;
    padding: 0.82rem 1.42rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.72rem;
    border: 1px solid transparent;
    border-radius: var(--radius-control);
    font-family: inherit;
    font-size: 0.93rem;
    font-weight: 650;
    letter-spacing: -0.012em;
    cursor: pointer;
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 220ms var(--ease), box-shadow 220ms ease;
}

.button:hover {
    transform: translateY(-2px);
}

.button-primary {
    color: #ffffff;
    background: rgba(0, 113, 227, 0.96);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 12px 26px rgba(0, 89, 184, 0.18);
}

.button-primary:hover {
    background: var(--color-accent-dark);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 16px 32px rgba(0, 89, 184, 0.23);
}

.button-secondary {
    color: var(--color-text);
    background: rgba(255, 255, 255, 0.7);
    border-color: rgba(15, 23, 42, 0.08);
}

.button-secondary:hover {
    background: rgba(255, 255, 255, 0.98);
    border-color: rgba(15, 23, 42, 0.15);
}

.back-to-top {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 50%;
    transition: color 180ms ease, transform 220ms var(--ease);
}

.back-to-top:hover {
    color: var(--color-accent);
    transform: translateY(-2px);
}
