/* Wrapper & Button Containers */
.mib-81a9abec-wrapper {
    display: inline-block;
    vertical-align: middle;
}

.elementor-align-left .mib-81a9abec-wrapper {
    display: block;
    text-align: left;
}

.elementor-align-center .mib-81a9abec-wrapper {
    display: block;
    text-align: center;
}

.elementor-align-right .mib-81a9abec-wrapper {
    display: block;
    text-align: right;
}

.mib-81a9abec-container {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    cursor: pointer;
    border: none;
    margin: 0;
    padding: 0;
    transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1), 
                border-radius 0.35s cubic-bezier(0.4, 0, 0.2, 1), 
                background-color 0.35s ease, 
                border-color 0.35s ease, 
                box-shadow 0.35s ease;
}

.mib-81a9abec-content {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    white-space: nowrap;
    box-sizing: border-box;
}

.mib-81a9abec-icon-after .mib-81a9abec-content {
    flex-direction: row-reverse;
}

.mib-81a9abec-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mib-81a9abec-icon svg {
    display: block;
    transition: fill 0.35s ease;
}

.mib-81a9abec-text {
    opacity: 0;
    max-width: 0;
    visibility: hidden;
    transform: translateX(10px);
    transition: opacity 0.3s ease, 
                max-width 0.35s cubic-bezier(0.4, 0, 0.2, 1), 
                transform 0.3s ease,
                margin 0.35s ease,
                visibility 0.3s;
    font-weight: 500;
    margin-left: 0;
    margin-right: 0;
}

.mib-81a9abec-icon-after .mib-81a9abec-text {
    transform: translateX(-10px);
}

/* Hover States on Desktop & default morph */
.mib-81a9abec-container:hover .mib-81a9abec-text {
    opacity: 1;
    max-width: 400px;
    visibility: visible;
    transform: translateX(0);
}

.mib-81a9abec-icon-before .mib-81a9abec-container:hover .mib-81a9abec-text {
    margin-left: var(--gap-val, 10px);
}

.mib-81a9abec-icon-after .mib-81a9abec-container:hover .mib-81a9abec-text {
    margin-right: var(--gap-val, 10px);
}

/* Tablet Lock Logic */
@media (min-width: 768px) and (max-width: 1024px) {
    /* Lock Circle (Never Morph) */
    .mib-81a9abec-tablet-lock-circle .mib-81a9abec-container:hover {
        width: inherit !important;
        border-radius: 50% !important;
    }
    .mib-81a9abec-tablet-lock-circle .mib-81a9abec-container:hover .mib-81a9abec-text {
        opacity: 0 !important;
        max-width: 0 !important;
        visibility: hidden !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Lock Pill (Always Expanded) */
    .mib-81a9abec-tablet-lock-pill .mib-81a9abec-container {
        width: var(--hover-width-val, 220px) !important;
        border-radius: var(--radius-hover-val, 9999px) !important;
    }
    .mib-81a9abec-tablet-lock-pill .mib-81a9abec-text {
        opacity: 1 !important;
        max-width: 400px !important;
        visibility: visible !important;
        transform: translateX(0) !important;
    }
    .mib-81a9abec-tablet-lock-pill.mib-81a9abec-icon-before .mib-81a9abec-text {
        margin-left: var(--gap-val, 10px) !important;
    }
    .mib-81a9abec-tablet-lock-pill.mib-81a9abec-icon-after .mib-81a9abec-text {
        margin-right: var(--gap-val, 10px) !important;
    }
}

/* Mobile Lock Logic */
@media (max-width: 767px) {
    /* Lock Circle (Never Morph) */
    .mib-81a9abec-mobile-lock-circle .mib-81a9abec-container:hover {
        width: inherit !important;
        border-radius: 50% !important;
    }
    .mib-81a9abec-mobile-lock-circle .mib-81a9abec-container:hover .mib-81a9abec-text {
        opacity: 0 !important;
        max-width: 0 !important;
        visibility: hidden !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Lock Pill (Always Expanded) */
    .mib-81a9abec-mobile-lock-pill .mib-81a9abec-container {
        width: var(--hover-width-val, 220px) !important;
        border-radius: var(--radius-hover-val, 9999px) !important;
    }
    .mib-81a9abec-mobile-lock-pill .mib-81a9abec-text {
        opacity: 1 !important;
        max-width: 400px !important;
        visibility: visible !important;
        transform: translateX(0) !important;
    }
    .mib-81a9abec-mobile-lock-pill.mib-81a9abec-icon-before .mib-81a9abec-text {
        margin-left: var(--gap-val, 10px) !important;
    }
    .mib-81a9abec-mobile-lock-pill.mib-81a9abec-icon-after .mib-81a9abec-text {
        margin-right: var(--gap-val, 10px) !important;
    }
}
