\
/* Serveflow MenuCard Premium Footer v56 */

.sfm-footer,
.sfm-direct-footer-v32,
.sfm-clean-footer,
.sfm-footer-actions,
.sfm-footer-actions-v32,
.sfm-footer-brand,
.sfm-serveflow-socials,
.sfm-powered-v32,
.sfm-banners-v32,
.sfm-ad-grid{
    display:none !important;
}

.sfm-premium-footer-v56{
    width:min(100% - 26px, 430px);
    max-width:430px;
    margin:30px auto 0;
    padding:0 0 26px;
    color:#f8fbff;
    text-align:center;
}

.sfm-premium-footer-v56,
.sfm-premium-footer-v56 *{
    box-sizing:border-box;
}

.sfm-v56-divider{
    height:1px;
    width:100%;
    background:linear-gradient(90deg,transparent,rgba(90,230,255,.34),transparent);
    margin:0 auto 24px;
}

.sfm-v56-section{
    margin:0 auto 22px;
}

.sfm-v56-kicker{
    margin:0 0 14px;
    color:#94a8c7;
    font-size:11px;
    font-weight:950;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.sfm-v56-socials{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
}

.sfm-v56-social{
    width:44px;
    height:44px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 12px 28px rgba(0,0,0,.34), 0 0 28px rgba(45,212,255,.14), inset 0 1px 0 rgba(255,255,255,.20);
}

.sfm-v56-social svg{
    width:21px;
    height:21px;
    display:block;
}

.sfm-v56-social.is-instagram,
.sfm-v56-brand-link.is-instagram .sfm-v56-brand-icon,
.sfm-v56-brand-link.is-instagram{
    background:radial-gradient(circle at 30% 110%,#feda75 0%,#fa7e1e 28%,#d62976 55%,#962fbf 78%,#4f5bd5 100%);
}

.sfm-v56-social.is-tiktok{
    background:linear-gradient(135deg,#07111f 0%,#111827 100%);
}

.sfm-v56-social.is-facebook{
    background:linear-gradient(135deg,#1877f2 0%,#0954c8 100%);
}

.sfm-v56-social.is-whatsapp{
    background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);
}

.sfm-v56-social.is-review{
    background:linear-gradient(135deg,#22c55e 0%,#2563eb 100%);
}

.sfm-v56-install-wrap{
    margin-bottom:24px;
}

.sfm-v56-install{
    width:100%;
    min-height:56px;
    border:0;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    color:#031220;
    background:linear-gradient(90deg,#6ff3e7 0%,#25cdf5 100%);
    box-shadow:0 18px 42px rgba(37,205,245,.22), inset 0 1px 0 rgba(255,255,255,.36);
    cursor:pointer;
}

.sfm-v56-install span,
.sfm-v56-install span svg{
    width:21px;
    height:21px;
    display:inline-flex;
}

.sfm-v56-install strong{
    font-size:14px;
    line-height:1;
    font-weight:950;
    letter-spacing:.02em;
    text-transform:uppercase;
}

.sfm-v56-info{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-bottom:24px;
}

.sfm-v56-pill{
    min-height:50px;
    padding:0 8px;
    border-radius:15px;
    border:1px solid rgba(116,171,229,.38);
    background:linear-gradient(180deg,rgba(15,32,59,.98),rgba(8,18,38,.98));
    color:#f8fbff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 12px 24px rgba(0,0,0,.22);
    cursor:pointer;
}

.sfm-v56-pill span,
.sfm-v56-pill svg{
    width:17px;
    height:17px;
    display:inline-flex;
    color:#dff7ff;
}

.sfm-v56-pill strong{
    font-size:11px;
    font-weight:950;
    letter-spacing:.02em;
    text-transform:uppercase;
}

.sfm-v56-brand{
    padding:24px 16px 22px;
    border-radius:24px;
    border:1px solid rgba(45,212,255,.30);
    background:
        radial-gradient(circle at 50% -10%,rgba(45,212,255,.16),transparent 35%),
        linear-gradient(180deg,rgba(10,24,49,.96),rgba(5,13,29,.92));
    box-shadow:0 22px 48px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.06);
}

.sfm-v56-brand-logo{
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#fff;
    gap:10px;
}

.sfm-v56-brand-logo img{
    width:190px;
    max-width:82%;
    height:auto;
    display:block;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.35));
}

.sfm-v56-brand-logo span{
    display:none;
    font-size:28px;
    font-weight:950;
    letter-spacing:-.04em;
}

.sfm-v56-brand-logo img[src=""]{
    display:none;
}

.sfm-v56-brand-logo img[src=""] + span{
    display:block;
}

.sfm-v56-powered{
    margin:16px auto 18px;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:12px;
    color:#aebfe0;
}

.sfm-v56-powered span{
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(174,191,224,.45));
}

.sfm-v56-powered span:last-child{
    background:linear-gradient(90deg,rgba(174,191,224,.45),transparent);
}

.sfm-v56-powered strong{
    font-size:10px;
    font-weight:950;
    letter-spacing:.24em;
    text-transform:uppercase;
    white-space:nowrap;
}

.sfm-v56-brand-links{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    gap:18px;
}

.sfm-v56-brand-link{
    width:58px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
    color:#dbeafe;
    text-decoration:none;
    background:transparent !important;
}

.sfm-v56-brand-link svg{
    width:38px;
    height:38px;
    padding:10px;
    color:#f8fbff;
    border-radius:999px;
    border:1px solid rgba(160,190,230,.36);
    background:linear-gradient(180deg,rgba(19,42,78,.96),rgba(8,19,40,.96));
    box-shadow:0 10px 22px rgba(0,0,0,.25);
}

.sfm-v56-brand-link small{
    color:#9fb0d2;
    font-size:8px;
    font-weight:950;
    letter-spacing:.10em;
    text-transform:uppercase;
}

.sfm-v56-banners{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin-top:26px;
}

.sfm-v56-banner{
    width:100%;
    overflow:hidden;
    border-radius:18px;
    background:linear-gradient(180deg,rgba(8,17,35,.98),rgba(3,10,23,.98));
    box-shadow:0 18px 40px rgba(0,0,0,.30);
}

.sfm-v56-banner-1{
    border:1px solid rgba(45,212,255,.55);
}

.sfm-v56-banner-2{
    border:1px solid rgba(245,185,61,.70);
}

.sfm-v56-banner a{
    display:block;
    text-decoration:none;
}

.sfm-v56-banner img{
    width:100%;
    max-width:100%;
    height:auto;
    max-height:172px;
    display:block;
    object-fit:contain;
}

.sfm-v56-banner-empty{
    min-height:118px;
    padding:18px;
    display:flex;
    align-items:center;
    gap:16px;
    text-align:left;
    color:#ffe59a;
    background:
        radial-gradient(circle at 82% 48%,rgba(45,212,255,.20),transparent 22%),
        linear-gradient(135deg,rgba(33,27,19,.98),rgba(6,13,28,.98));
}

.sfm-v56-banner-empty i{
    width:48px;
    height:48px;
    border-radius:14px;
    flex:0 0 auto;
    border:1px solid rgba(245,185,61,.75);
    background:linear-gradient(180deg,rgba(245,185,61,.24),rgba(245,185,61,.05));
    position:relative;
}

.sfm-v56-banner-empty i:before{
    content:"";
    position:absolute;
    inset:14px 10px 13px;
    background:linear-gradient(135deg,#f7c84f,#fff2ae);
    clip-path:polygon(0 100%,18% 30%,42% 58%,58% 22%,82% 58%,100% 30%,100% 100%);
}

.sfm-v56-banner-empty strong{
    display:block;
    color:#ffffff;
    font-size:18px;
    font-weight:950;
    line-height:1.15;
}

.sfm-v56-banner-empty span{
    display:block;
    margin-top:6px;
    color:#e4ca83;
    font-size:12px;
    font-weight:850;
}

.sfm-v56-legal{
    margin:20px auto 0;
    color:#8fa2bf;
    font-size:11px;
    line-height:1.55;
    text-align:center;
}

.sfm-v56-modal[hidden]{
    display:none !important;
}

.sfm-v56-modal{
    position:fixed;
    inset:0;
    z-index:1300;
}

.sfm-v56-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(2,8,20,.74);
    backdrop-filter:blur(9px);
}

.sfm-v56-modal-card{
    position:relative;
    width:min(100% - 28px,420px);
    margin:8vh auto 0;
    padding:24px;
    border-radius:24px;
    border:1px solid rgba(45,212,255,.30);
    background:linear-gradient(180deg,#0d1730 0%,#081126 100%);
    color:#f8fbff;
    box-shadow:0 30px 72px rgba(0,0,0,.50);
}

.sfm-v56-modal-card button{
    position:absolute;
    top:13px;
    right:13px;
    width:36px;
    height:36px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.07);
    color:#fff;
    font-size:22px;
    cursor:pointer;
}

.sfm-v56-modal-card h3{
    margin:0 0 16px;
    font-size:24px;
    font-weight:950;
}

.sfm-v56-modal-card p{
    margin:8px 0 0;
    color:#d7e4f6;
    line-height:1.6;
}

@media(max-width:520px){
    .sfm-premium-footer-v56{
        width:min(100% - 24px, 410px);
        margin-top:26px;
    }

    .sfm-v56-info{
        grid-template-columns:1fr;
    }

    .sfm-v56-pill{
        min-height:46px;
    }

    .sfm-v56-brand-logo img{
        width:170px;
    }

    .sfm-v56-banner img{
        max-height:156px;
    }
}

/* Serveflow Footer Modal Robustness v57 */
.sfm-v56-modal{
    position:fixed !important;
    inset:0 !important;
    z-index:9999 !important;
    opacity:0;
    pointer-events:none;
    transition:opacity .16s ease;
}

.sfm-v56-modal[hidden]:not(.is-open){
    display:none !important;
}

.sfm-v56-modal.is-open{
    display:block !important;
    opacity:1 !important;
    pointer-events:auto !important;
}

.sfm-v56-modal-open{
    overflow:hidden;
}

.sfm-v56-modal-backdrop{
    cursor:pointer;
}

.sfm-v56-modal-card{
    animation:sfmV56ModalIn .18s ease both;
}

@keyframes sfmV56ModalIn{
    from{opacity:0;transform:translateY(10px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
}
