/* =========================
   Home - Shared Headings
   ========================= */
.home-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:28px;
    flex-wrap:wrap;
}

.home-section-head__left{
    max-width:720px;
}

.home-section-head__eyebrow{
    display:inline-block;
    margin:0 0 10px;
    font-size:12px;
    line-height:1;
    letter-spacing:.14em;
    text-transform:uppercase;
    opacity:.7;
}

.home-section-head__title{
    margin:0;
    font-size:clamp(28px, 3vw, 42px);
    line-height:1.08;
    font-weight:400;
    letter-spacing:-0.03em;
    text-wrap:balance;
}

.home-section-head__desc{
    margin:12px 0 0;
    max-width:680px;
    font-size:15px;
    line-height:1.7;
    opacity:.82;
}

.home-section-head--news{
    margin-bottom:0;
}

.home-section-head--news .home-section-head__left{
    max-width:100%;
}

/* =========================
   Hero
   ========================= */
.hero__content{
    max-width:760px;
}

.hero__title h1{
    margin:0;
    line-height:1.02;
    letter-spacing:-0.04em;
    font-weight:400;
}

.hero__title h1 span{
    display:inline-block;
    max-width:12ch;
    text-wrap:balance;
}

.hero__content p{
    max-width:640px;
    font-size:16px;
    line-height:1.7;
    text-wrap:pretty;
}

/* =========================
   News
   ========================= */
.news-list-latest .card__title{
    margin:0;
    font-size:clamp(20px, 2.2vw, 28px);
    line-height:1.18;
    font-weight:400;
    letter-spacing:-0.02em;
}

.news-list-latest .card__title span{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-wrap:balance;
}

.news-list-latest .card .surtitle{
    margin-bottom:12px;
    font-size:12px;
    letter-spacing:.08em;
    text-transform:uppercase;
    opacity:.7;
}

/* =========================
   Partners Section
   ========================= */
.Partners{
    padding:72px 0;
    overflow:hidden;
}

.partners-slider-wrap{
    position:relative;
}

.partners-splide{
    margin-top:8px;
}

.partners-splide .splide__track{
    overflow:visible;
}

.partners-splide .splide__slide{
    height:auto;
}

/* =========================
   Partner Card
   ========================= */
.partner-card{
    height:100%;
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid rgba(15,23,42,.08);
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 16px 42px rgba(15,23,42,.06);
    transition:transform .28s ease, box-shadow .28s ease;
}

.partner-card:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 50px rgba(15,23,42,.10);
}

.partner-card__media{
    display:flex;
    align-items:center;
    justify-content:center;
    aspect-ratio:16 / 9;
    background:#fff;
    padding:22px;
    overflow:hidden;
    border-bottom:1px solid rgba(15,23,42,.06);
}

.partner-card__media img{
    width:100%;
    height:100%;
    max-width:78%;
    max-height:78%;
    object-fit:contain;
    object-position:center;
    display:block;
}

.partner-card__body{
    padding:18px 18px 20px;
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
}

.partner-card__title{
    margin:0 0 14px;
    font-size:18px;
    line-height:1.22;
    font-weight:400;
    letter-spacing:-0.02em;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-wrap:balance;
}

.partner-card__title a{
    color:inherit;
    text-decoration:none;
}

.partner-card__title a:hover{
    color:inherit;
    text-decoration:none;
}

.partner-card__actions{
    margin-top:auto;
}

.partner-card__actions .btn{
    align-self:flex-start;
}

/* =========================
   Partners Slider Controls
   ========================= */
.partners-splide .splide__arrows{
    position:absolute;
    top:-76px;
    right:0;
    display:flex;
    gap:10px;
}

.partners-splide .splide__arrow{
    position:static;
    transform:none;
    width:46px;
    height:46px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(15,23,42,.10);
    box-shadow:0 12px 28px rgba(15,23,42,.06);
    opacity:1;
}

.partners-splide .splide__arrow svg{
    fill:#111827;
    width:14px;
    height:14px;
}

.partners-splide .splide__pagination{
    position:static;
    margin-top:26px;
}

.partners-splide .splide__pagination li{
    line-height:1;
}

.partners-splide .splide__pagination__page{
    width:10px;
    height:10px;
    margin:0 5px;
    opacity:.35;
    transform:none;
}

.partners-splide .splide__pagination__page.is-active{
    transform:none;
    opacity:1;
}

/* =========================
   Responsive
   ========================= */
@media (max-width: 991.98px){
    .partners-splide .splide__arrows{
        top:-66px;
    }

    .partner-card__title{
        min-height:auto;
    }
}

@media (max-width: 767.98px){
    .Partners{
        padding:56px 0;
    }

    .home-section-head{
        margin-bottom:20px;
    }

    .partners-splide .splide__arrows{
        position:static;
        justify-content:flex-end;
        margin-bottom:14px;
    }

    .partner-card__media{
        padding:18px;
    }

    .partner-card__media img{
        max-width:82%;
        max-height:82%;
    }

    .partner-card__title{
        font-size:17px;
    }

    .hero__title h1 span{
        max-width:100%;
    }
}