/* ==========================================================
   BADGES — Compliance / Trust Badges + Partner Logos
   ========================================================== */

/* ==========================================================
   TRUST BADGES
   ========================================================== */

.badges-strip{

    padding:56px 0;

    background:var(--ink);

    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);

}

.badges-row{

    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;

}

.badge{

    display:flex;
    align-items:center;
    gap:10px;

    padding:12px 20px;

    border:1px solid rgba(255,255,255,.15);
    border-radius:var(--radius-pill);

    background:rgba(255,255,255,.08);

    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);

    font-size:13.5px;
    font-weight:700;

    color:var(--white);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        background .25s ease;

}

.badge:hover{

    transform:translateY(-4px);

    background:rgba(255,255,255,.15);

    border-color:var(--crimson);

    box-shadow:0 12px 28px rgba(0,0,0,.25);

}

.badge svg{

    color:var(--crimson);

    flex-shrink:0;

}

/* Tablet */

@media (max-width:768px){

    .badges-row{

        gap:16px;

    }

}

/* Mobile */

@media (max-width:480px){

    .badge{

        width:100%;
        justify-content:center;

        padding:14px 18px;

        font-size:13px;

    }

}

/* ==========================================================
   PARTNER LOGOS
   ========================================================== */

.partners-heading{

    text-align:center;

    color:var(--white);

    font-size:15px;
    font-weight:800;

    letter-spacing:.05em;
    text-transform:uppercase;

    margin:48px 0 0;

}

.partners-track-wrap{

    margin-top:28px;

    overflow:hidden;

    -webkit-mask-image:linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
            mask-image:linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);

}

.partners-track{

    display:flex;

    width:max-content;

    animation:partners-scroll 30s linear infinite;

}

.partners-track-wrap:hover .partners-track{

    animation-play-state:paused;

}

.partners-set{

    display:flex;

    align-items:center;

    gap:28px;

    padding-right:28px;

}

/* Large logo cards */

.partner-logo{

    display:flex;

    align-items:center;

    justify-content:center;

    width:220px;
    height:110px;

    flex-shrink:0;

    padding:18px;

    background:#fff;

    border:1px solid rgba(255,255,255,.18);

    border-radius:var(--radius-md);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;

}

.partner-logo:hover{

    transform:translateY(-5px) scale(1.03);

    border-color:var(--crimson);

    box-shadow:0 18px 36px rgba(0,0,0,.30);

}

/* Bigger logos */

.partner-logo img{

    width:auto;
    height:auto;

    max-width:95%;
    max-height:85%;

    object-fit:contain;

    transition:transform .3s ease;

}

.partner-logo:hover img{

    transform:scale(1.08);

}

@keyframes partners-scroll{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}

@media (prefers-reduced-motion: reduce){

    .partners-track{

        animation:none;

    }

    .partners-track-wrap{

        overflow-x:auto;

    }

}

/* Tablet */

@media (max-width:768px){

    .partner-logo{

        width:180px;
        height:90px;

        padding:14px;

    }

    .partner-logo img{

        max-width:92%;
        max-height:82%;

    }

}

/* Mobile */

@media (max-width:480px){

    .partners-heading{

        font-size:13px;

        margin-top:36px;

    }

    .partner-logo{

        width:150px;
        height:80px;

        padding:12px;

    }

    .partner-logo img{

        max-width:90%;
        max-height:80%;

    }

}