.ohio-floating-contact {
    position: fixed;
    right: max(18px, env(safe-area-inset-right));
    bottom: calc(80px + env(safe-area-inset-bottom));
    z-index: 9900;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ohio-floating-contact .ohio-floating-contact__button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-width: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 50%;
    background: var(--primary-color, #0c5457);
    color: #fff;
    box-shadow: 0 2px 8px #0002;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .2s, box-shadow .2s;
}

.ohio-floating-contact__button[hidden] {
    display: none !important;
}

.ohio-floating-contact .ohio-floating-contact__button:hover {
    background: var(--gold-color, #603913);
    color: #fff;
    box-shadow: 0 3px 10px #0003;
}

.ohio-floating-contact__button:focus-visible {
    outline: 2px solid var(--primary-color, #0c5457);
    outline-offset: 3px;
}

.ohio-floating-contact__button svg {
    display: block;
    width: 23px;
    height: 23px;
}

.ohio-floating-contact__zalo {
    font: 800 14px/1 var(--font-sans);
    letter-spacing: -.4px;
}

@media (max-width: 767px) {
    .ohio-floating-contact {
        right: max(10px, env(safe-area-inset-right));
        gap: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ohio-floating-contact .ohio-floating-contact__button {
        transition: none;
    }
}
