/* ==========================================================
   TrueVitaHub
   Trusted Companies
========================================================== */

.tvh-trusted{

    position:relative;

    padding:90px 0;

    background:#ffffff;

    overflow:hidden;

}

.tvh-trusted::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        radial-gradient(circle at top left,
        rgba(37,99,235,.05),
        transparent 35%);

    pointer-events:none;

}

.tvh-trusted-heading{

    text-align:center;

    max-width:760px;

    margin:0 auto 60px;

}

.tvh-trusted-heading h2{

    margin:0 0 18px;

    font-size:42px;

    font-weight:800;

    color:#0f172a;

    line-height:1.15;

}

.tvh-trusted-heading p{

    margin:0;

    font-size:18px;

    color:#64748b;

    line-height:1.8;

}

/* ==========================================================
   LOGOS
========================================================== */

.tvh-trusted-logos{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:24px;

}

.tvh-trusted-logos span{

    display:flex;

    justify-content:center;

    align-items:center;

    height:84px;

    border-radius:18px;

    background:#ffffff;

    border:1px solid rgba(15,23,42,.06);

    box-shadow:
        0 12px 30px rgba(15,23,42,.05);

    color:#475569;

    font-size:18px;

    font-weight:700;

    transition:.30s ease;

    cursor:default;

}

.tvh-trusted-logos span:hover{

    transform:translateY(-6px);

    border-color:#2563eb;

    color:#2563eb;

    box-shadow:
        0 20px 50px rgba(37,99,235,.15);

}

/* ==========================================================
   Responsive
========================================================== */

@media(max-width:992px){

    .tvh-trusted{

        padding:70px 0;

    }

    .tvh-trusted-heading h2{

        font-size:34px;

    }

    .tvh-trusted-logos{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:576px){

    .tvh-trusted-heading h2{

        font-size:28px;

    }

    .tvh-trusted-heading p{

        font-size:16px;

    }

    .tvh-trusted-logos{

        grid-template-columns:1fr;

    }

    .tvh-trusted-logos span{

        height:72px;

        font-size:17px;

    }

}

/* ==========================================================
   Trusted Animation
========================================================== */

.tvh-trusted-visible{

    opacity:1 !important;

    transform:translateY(0) !important;

}

/* ==========================================================
   Trusted Responsive
========================================================== */

/* ---------- Large Laptop ---------- */

@media (max-width:1400px){

    .tvh-trusted-grid{

        gap:28px;

    }

}

/* ---------- Laptop ---------- */

@media (max-width:1200px){

    .tvh-trusted{

        padding:90px 0;

    }

    .tvh-trusted-grid{

        grid-template-columns:repeat(4,1fr);

        gap:24px;

    }

}

/* ---------- Tablet ---------- */

@media (max-width:992px){

    .tvh-trusted{

        padding:80px 0;

    }

    .tvh-trusted h2{

        font-size:38px;

    }

    .tvh-trusted-grid{

        grid-template-columns:repeat(3,1fr);

        gap:20px;

    }

}

/* ---------- Mobile ---------- */

@media (max-width:768px){

    .tvh-trusted{

        padding:70px 0;

    }

    .tvh-trusted h2{

        font-size:30px;

        line-height:1.3;

    }

    .tvh-trusted p{

        font-size:16px;

    }

    .tvh-trusted-grid{

        grid-template-columns:repeat(2,1fr);

        gap:18px;

    }

    .tvh-trusted-logo{

        padding:20px;

        min-height:90px;

    }

}

/* ---------- Small Mobile ---------- */

@media (max-width:480px){

    .tvh-trusted{

        padding:60px 0;

    }

    .tvh-trusted-grid{

        grid-template-columns:1fr;

        gap:16px;

    }

    .tvh-trusted-logo{

        min-height:80px;

        padding:18px;

    }

}