:root{
    --brand-blue: #283579;
}

.main-slider-block{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    max-width: 100%;
    overflow-x: clip;
}

@supports not (overflow: clip) {
    .main-slider-block {
        overflow-x: hidden;
    }
}

.main-slider-block.slider-design-cards-pagos{
    min-height: 674px;
    padding-top: 80px;
    padding-left: 80px;
    padding-right: 80px;
}

.main-slider-block.slider-design-cards-pagos > .col-md-12{
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 992px){
    .main-slider-block.slider-design-cards-pagos{
        min-height: auto;
        padding-top: 40px;
        padding-left: 16px;
        padding-right: 16px;
    }
}

.web-swiper,
.cards-swiper,
.cards-pagos-swiper,
.equipo-swiper {
    margin-bottom: 0 !important;
    max-width: 100%;
}

.cards-swiper,
.cards-pagos-swiper,
.equipo-swiper {
    padding-left: 12px !important;
    padding-right: 12px !important;
}

@media (min-width: 480px) {
    .cards-swiper,
    .cards-pagos-swiper,
    .equipo-swiper {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

@media (min-width: 768px) {
    .cards-swiper,
    .cards-pagos-swiper,
    .equipo-swiper {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}

@media (min-width: 992px) {
    .cards-swiper,
    .cards-pagos-swiper,
    .equipo-swiper {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}

@media (min-width: 1200px) {
    .cards-swiper,
    .cards-pagos-swiper,
    .equipo-swiper {
        padding-left: 56px !important;
        padding-right: 56px !important;
    }
}

@media (min-width: 1400px) {
    .cards-swiper,
    .cards-pagos-swiper,
    .equipo-swiper {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }
}

.web-swiper .col-md-12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.web-swiper { width:100%; }
.web-swiper .swiper-slide { height:auto; }

.hero-img { width:100%; height:100%; object-fit:cover; display:block; }

.marcas-img {
    width:100%;
    height:120px;
    object-fit:cover;
    filter: grayscale(1);
    opacity:.9;
    border-radius:16px;
}
@media (max-width: 480px) {
    .marcas-img { height: 92px; border-radius: 14px; opacity: .95; }
}
@media (min-width: 481px) and (max-width: 768px) {
    .marcas-img { height: 105px; }
}

.ws-heading, .ws-heading * { color: var(--ws-heading-color, var(--brand-blue)); }
.ws-heading .ws-title{
    font-size: 48px;
    line-height: 1.1;
    font-weight: 800;
    margin: 0;
    letter-spacing: -0.5px;
}

@media (max-width: 768px) {
    .ws-heading .ws-title { font-size: 36px; }
}
@media (max-width: 480px) {
    .ws-heading .ws-title { font-size: 28px; }
}

.ws-heading .ws-subtitle{
    margin-top: var(--ws-heading-gap, 12px);
    margin-bottom: 0;
    opacity: .9;
    font-size: 15px;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .ws-heading .ws-subtitle { font-size: 14px; }
}

.ws-heading{
    text-align:center;
    padding-top: var(--ws-heading-pt, 50px);
    padding-bottom: var(--ws-heading-pb, 18px);
}

.cards-slide { display:flex; justify-content:center; }

.cards-card{
    width: 420px;
    max-width: 96%;
    border-radius: 18px;
    background:#fff;
    box-shadow: 0 10px 28px rgba(0,0,0,.10);
    overflow:hidden;
    color: var(--brand-blue);
}

@media (max-width: 640px) {
    .cards-card {
        width: 340px;
        max-width: 100%;
    }
    .cards-card .thumb {
        height: 180px !important;
    }
}

.cards-card .thumb { height: 220px; background:#eef1f5; position:relative; }
.cards-card .thumb img { width:100%; height:100%; object-fit:cover; }

.cards-card .body {
    padding: 18px 20px;
    text-align: center;
}
.cards-card .body h5, .cards-card .body p {
    color: var(--brand-blue);
}

.cards-card .badge{
    font-size:13px;
    background:#e9eefb;
    padding:5px 12px;
    border-radius:999px;
    display:inline-block;
    margin-bottom:12px;
    color: var(--brand-blue);
}

.cards-card .badge.badge-over{
    position:absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    margin: 0;
    background: rgba(233, 238, 251, .95);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.cards-card .btn,
.cards-card .btn-body {
    border-radius:999px;
    padding:10px 20px;
    text-decoration:none;
    margin: 0 auto;
}

.cards-swiper,
.cards-pagos-swiper{
    padding-top: 10px;
    padding-bottom: calc(var(--ws-nav-bottom, 22px) + var(--ws-nav-size, 44px) + 14px);
    overflow: visible !important;
}

@media (max-width: 480px){
    .cards-swiper,
    .cards-pagos-swiper{
        padding-bottom: calc(14px + 36px + 12px) !important;
    }
    .cards-card{
        width: 92vw !important;
        max-width: 92vw !important;
        border-radius: 16px;
    }
    .cards-card .thumb{
        height: 200px !important;
    }
}

.cards-swiper .swiper-wrapper,
.cards-pagos-swiper .swiper-wrapper{ overflow: visible !important; }

.cards-swiper .swiper-button-prev,
.cards-swiper .swiper-button-next,
.cards-pagos-swiper .swiper-button-prev,
.cards-pagos-swiper .swiper-button-next{
    top:auto;
    bottom: var(--ws-nav-bottom, 22px);
    width: var(--ws-nav-size, 44px);
    height: var(--ws-nav-size, 44px);
    border-radius:999px;
    border: 2px solid var(--brand-blue);
    background: rgba(255,255,255,.95);
    box-shadow: 0 10px 22px rgba(0,0,0,.08);
    left: 50%;
    right:auto;
    margin-top:0;
}

@media (max-width: 768px) {
    .cards-swiper .swiper-button-prev,
    .cards-swiper .swiper-button-next,
    .cards-pagos-swiper .swiper-button-prev,
    .cards-pagos-swiper .swiper-button-next {
        width: 36px !important;
        height: 36px !important;
        bottom: 16px !important;
    }

    .cards-swiper .swiper-button-prev,
    .cards-pagos-swiper .swiper-button-prev {
        transform: translateX(calc(-1 * (10px + 36px))) !important;
    }

    .cards-swiper .swiper-button-next,
    .cards-pagos-swiper .swiper-button-next {
        transform: translateX(10px) !important;
    }

    .cards-swiper .swiper-button-prev:after,
    .cards-swiper .swiper-button-next:after,
    .cards-pagos-swiper .swiper-button-prev:after,
    .cards-pagos-swiper .swiper-button-next:after {
        font-size: 14px !important;
    }
}

.cards-swiper .swiper-button-prev,
.cards-pagos-swiper .swiper-button-prev{
    transform: translateX(calc(-1 * (var(--ws-nav-gap, 14px) + var(--ws-nav-size, 44px))));
}
.cards-swiper .swiper-button-next,
.cards-pagos-swiper .swiper-button-next{
    transform: translateX(var(--ws-nav-gap, 14px));
}

.cards-swiper .swiper-button-prev:after,
.cards-swiper .swiper-button-next:after,
.cards-pagos-swiper .swiper-button-prev:after,
.cards-pagos-swiper .swiper-button-next:after{
    font-size: 16px;
    color: var(--brand-blue);
}

.cards-swiper .swiper-slide,
.cards-pagos-swiper .swiper-slide{
    overflow: visible;
    display:flex;
    justify-content:center;
}

.cards-swiper .cards-card,
.cards-pagos-swiper .cards-card{
    transition: transform .35s ease, opacity .35s ease, box-shadow .35s ease;
    will-change: auto;
}

.cards-swiper .swiper-slide-active .cards-card,
.cards-swiper .swiper-slide-prev .cards-card,
.cards-swiper .swiper-slide-next .cards-card,
.cards-pagos-swiper .swiper-slide-active .cards-card,
.cards-pagos-swiper .swiper-slide-prev .cards-card,
.cards-pagos-swiper .swiper-slide-next .cards-card{
    will-change: transform;
}

.cards-swiper .swiper-slide-active .cards-card{
    box-shadow: 0 18px 50px rgba(0,0,0,.16);
    outline: 2px solid rgba(40,53,121,.18);
}

.cards-pagos-swiper .swiper-slide-active .cards-card{
    box-shadow: 0 18px 50px rgba(0,0,0,.16);
    outline: 2px solid rgba(40,53,121,.18);
}

.cards-pagos-swiper .cards-card{
    width: var(--card-w, 260px) !important;
    max-width: 96% !important;
    border-radius: 18px;
}
.cards-pagos-swiper .cards-card .thumb{
    height: var(--thumb-h, 150px) !important;
}
.cards-pagos-swiper .cards-card .body{
    padding: 14px 14px !important;
    text-align: center;
}
.cards-pagos-swiper .cards-card .body h5{
    font-size: 18px;
    margin: 0 !important;
    font-weight: 700;
}
.cards-pagos-swiper .swiper-slide{
    width: auto !important;
}

.equipo-swiper{
    padding-top: 14px;
    padding-bottom: calc(var(--ws-nav-bottom, 22px) + var(--ws-nav-size, 44px) + 28px);
    min-height: var(--team-render-min-h, 420px);
    overflow: visible !important;
}
.equipo-swiper .swiper-wrapper{ overflow: visible !important; }

.equipo-swiper .swiper-slide{
    display:flex;
    justify-content:center;
    align-items: center;
    min-height: 220px;
}

.team-slide{
    display:flex;
    justify-content:center;
    width:100%;
}

.team-card{
    width: 520px;
    max-width: 92%;
    background:#fff;
    border-radius: 14px;
    box-shadow: 0 18px 44px rgba(0,0,0,.14);
    display:flex;
    align-items:center;
    gap: var(--team-gap, 18px);
    padding: var(--team-py, 18px) var(--team-px, 22px);
    overflow:hidden;
    color: var(--brand-blue);
    transition: transform .35s ease, opacity .35s ease, box-shadow .35s ease;
    will-change: auto;
}

@media (max-width: 640px) {
    .team-card {
        width: 380px;
        max-width: 100%;
        padding: 14px 16px;
        gap: 14px;
    }

    .team-avatar {
        width: 70px !important;
        height: 70px !important;
    }

    .team-name {
        font-size: 16px !important;
    }

    .team-role {
        font-size: 14px !important;
    }
}

.team-avatar{
    width: var(--team-avatar, 92px);
    height: var(--team-avatar, 92px);
    border-radius: 999px;
    overflow:hidden;
    flex: 0 0 auto;
    background:#eef1f5;
    box-shadow: inset 0 0 0 4px rgba(40,53,121,.10);
}
.team-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.team-body{ min-width:0; }
.team-name{
    font-weight: 800;
    font-size: 18px;
    color: var(--brand-blue);
    line-height: 1.15;
    margin-bottom: 6px;
}
.team-role{
    font-weight: 700;
    color: #E95C28;
    line-height: 1.1;
}

.equipo-swiper .swiper-button-prev,
.equipo-swiper .swiper-button-next{
    top:auto;
    bottom: var(--ws-nav-bottom, 22px);
    width: var(--ws-nav-size, 44px);
    height: var(--ws-nav-size, 44px);
    border-radius:999px;
    border: 2px solid var(--brand-blue);
    background: rgba(255,255,255,.95);
    box-shadow: 0 10px 22px rgba(0,0,0,.08);
    left: 50%;
    right:auto;
    margin-top:0;
}

.equipo-swiper .swiper-button-prev{
    transform: translateX(calc(-1 * (var(--ws-nav-gap, 14px) + var(--ws-nav-size, 44px))));
}
.equipo-swiper .swiper-button-next{
    transform: translateX(var(--ws-nav-gap, 14px));
}

.equipo-swiper .swiper-button-prev:after,
.equipo-swiper .swiper-button-next:after{
    font-size: 16px;
    color: var(--brand-blue);
}

@media (max-width: 768px) {
    .equipo-swiper{
        min-height: 340px;
        padding-bottom: calc(16px + 36px + 18px) !important;
    }

    .equipo-swiper .swiper-button-prev,
    .equipo-swiper .swiper-button-next{
        width: 36px !important;
        height: 36px !important;
        bottom: 16px !important;
    }

    .equipo-swiper .swiper-button-prev{
        transform: translateX(calc(-1 * (10px + 36px))) !important;
    }
    .equipo-swiper .swiper-button-next{
        transform: translateX(10px) !important;
    }

    .equipo-swiper .swiper-button-prev:after,
    .equipo-swiper .swiper-button-next:after{
        font-size: 14px !important;
    }
}

.marcas-card{
    --m-card-w: 320px;
    --m-card-h: 180px;
    --m-logo-scale: 70%;
    --m-bg-opacity: .25;
    --m-bg-gray: 1;

    width: var(--m-card-w) !important;
    height: var(--m-card-h) !important;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    background: #f3f3f3;
}

.marcas-card img.bg{
    width:100%;
    height:100%;
    object-fit:cover;
    opacity: var(--m-bg-opacity) !important;
    filter: grayscale(var(--m-bg-gray)) !important;
    transform: scale(1.05);
}

.marcas-card img.logo{
    position:absolute;
    inset:0;
    margin:auto;
    max-width: var(--m-logo-scale) !important;
    max-height: var(--m-logo-scale) !important;
    object-fit: contain;
    filter:none !important;
    opacity:1 !important;
    z-index: 3;
    pointer-events: none;
}

.marcas-card::after{
    content:"";
    position:absolute;
    inset:0;
    background: rgba(255,255,255,.12);
    z-index:2;
    pointer-events:none;
}

@media (max-width: 480px){
    .marcas-card{
        --m-card-w: 240px;
        --m-card-h: 140px;
        --m-logo-scale: 82%;
        --m-bg-opacity: .15;
        --m-bg-gray: .6;
        border-radius: 14px;
    }

    .marcas-swiper{
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .marcas-swiper .swiper-slide{
        width: auto !important;
    }
}

@media (min-width: 481px) and (max-width: 992px){
    .marcas-card{
        --m-card-w: 280px;
        --m-card-h: 160px;
        --m-logo-scale: 78%;
        --m-bg-opacity: .20;
        --m-bg-gray: .8;
    }
}
.marcas-swiper.marcas-top{
    padding-top: 18px !important;
    padding-bottom: 0 !important;
}

.marcas-swiper.marcas-bottom{
    padding-top: 0 !important;
    padding-bottom: 18px !important;
    margin-bottom: 26px !important;
}

@media (max-width: 480px){
    .marcas-swiper.marcas-top{ padding-top: 14px !important; }
    .marcas-swiper.marcas-bottom{
        padding-bottom: 14px !important;
        margin-bottom: 20px !important;
    }
}
