/* ==========================================================================
   Clio One Gate — Modal styles
   ========================================================================== */

:root {
    --clio-og-blue: #064E88;
}

/* Overlay */
.clio-og-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.clio-og-overlay.is-visible {
    opacity: 1;
}

.clio-og-overlay[hidden] {
    display: none;
}

.clio-og-overlay.is-opening {
    display: flex;
}

/* Modal box */
.clio-og-modal {
    position: relative;
    background: #fff;
    border-radius: 6px;
    border-top: 4px solid var(--clio-og-blue);
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);
    width: 100%;
    max-width: 520px;
    max-height: 90vh;
    overflow-y: auto;
    transform: translateY(16px);
    transition: transform 0.25s ease;
}

.clio-og-overlay.is-visible .clio-og-modal {
    transform: translateY(0);
}

/* Close button */
.clio-og-close {
    position: absolute;
    top: 0.6rem;
    right: 0.6rem;
    width: 2rem;
    height: 2rem;
    background: var(--clio-og-blue);
    border: none;
    border-radius: 4px;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    transition: background 0.15s, transform 0.15s;
}

.clio-og-close:hover {
    background: #053e6e;
    transform: scale(1.08);
}

/* Modal body */
.clio-og-modal-body {
    padding: 2rem 2rem 1.5rem;
}

.clio-og-modal-body .gform_wrapper {
    margin-top: 0;
}

/* Prevent body scroll when modal open */
body.clio-og-open {
    overflow: hidden;
}
