@import url('https://fonts.googleapis.com/css?family=Karma:400,500,700');
@font-face { font-family: "BentonSans"; src: url("../fonts/benton-sans.eot"); src: url("../fonts/benton-sans.eot?") format("embedded-opentype"), url("../fonts/benton-sans.woff") format("woff"), url("../fonts/benton-sans.ttf") format("truetype"),url("../fonts/benton-sans.svg#web") format("svg"); font-style: normal; font-weight: normal; }
@font-face { font-family: "BentonSans-Book"; src: url("../fonts/benton-sans-book.eot"); src: url("../fonts/benton-sans-book.eot?") format("embedded-opentype"), url("../fonts/benton-sans-book.woff") format("woff"), url("../fonts/benton-sans-book.ttf") format("truetype"); font-style: normal; font-weight: 300; }
@font-face { font-family: "BentonSans-Medium"; src: url("../fonts/benton-sans-medium.eot"); src: url("../fonts/benton-sans-medium.eot?") format("embedded-opentype"), url("../fonts/benton-sans-medium.woff") format("woff"), url("../fonts/benton-sans-medium.ttf") format("truetype"); font-style: normal; font-weight: 600; }
@font-face { font-family: 'BentonSans-Light'; src: url('../fonts/BentonSans-Light.eot'); src: url('../fonts/BentonSans-Light.eot?#iefix') format('embedded-opentype'), url('../fonts/BentonSans-Light.woff') format('woff'), url('../fonts/BentonSans-Light.ttf') format('truetype'), url('../fonts/BentonSans-Light.svg#BentonSans-Light') format('svg'); font-weight: 200; font-style: normal; }
@font-face{font-family:'BentonSans-Bd'; src:local("Benton Sans Bold");src:url("../fonts/benton-sans-bd.eot");src:url("../fonts/benton-sans-bd.eot?") format("embedded-opentype"),url("../fonts/benton-sans-bd.woff") format("woff"),url("../fonts/benton-sans-bd.ttf") format("truetype"),url("../fonts/benton-sans-bd.svg#web") format("svg");}
@font-face{font-family:'BentonSans-Black';src:local("Benton Sans Black");src:url("../fonts/benton-sans-cond-black.ttf") format("truetype");src:url("../fonts/benton-sans-cond-black.eot");src:url("../fonts/benton-sans-cond-black.eot?") format("embedded-opentype"),url("../fonts/benton-sans-cond-black.woff") format("woff"),url("../fonts/benton-sans-cond-black.svg#web") format("svg");}

body{font-family: 'BentonSans', sans-serif;}
.axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__horizontalNav___4yi5G .axp-global-header__GlobalHeader__navContainer___1rC-J, .axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__verticalNav___1aQcq .axp-global-header__GlobalHeader__navContainer___1rC-J, .axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__searchBar___3Fr-v .axp-global-header__GlobalHeader__navContainer___1rC-J {max-width: 1320px;}


.swiper {width: 100%; height: 100%;}
.swiper-slide { text-align: center; background: transparent;}
.swiper-button-next, .swiper-rtl .swiper-button-prev { right: -40px !important;}
.swiper-button-prev, .swiper-rtl .swiper-button-next { left: -40px !important;}


.fw-light {font-family: "BentonSans-Light";}
.fw-medium {font-family: "BentonSans-Medium";}
.fw-bold {font-family: "BentonSans-Bd";}
.fw-black {font-family: "BentonSans-Black";}

.light{font-weight: 300;}
.regular{font-weight: 400;}
.medium{font-weight: 500;}
.bold{font-weight: 700;}
.bold800{font-weight: 800;}

.font9{font-size: 9px; line-height: normal;}
.font10{font-size: 10px; line-height: normal;}
.font11{font-size: 11px; line-height: normal;}
.font12{font-size: 12px; line-height: normal;}
.font13{font-size: 13px; line-height: normal;}
.font14{font-size: 14px; line-height: normal;}
.font16{font-size: 16px; line-height: normal;}
.font18{font-size: 18px; line-height: normal;}
.font22{font-size: 22px; line-height: normal;}
.font24{font-size: 24px; line-height: normal;}
.font28{font-size: 28px; line-height: normal;}
.font30{font-size: 30px; line-height: normal;}
.font36{font-size: 36px; line-height: normal;}
.font40{font-size: 40px; line-height: normal;}
.font50{font-size: 50px; line-height: normal;}
.font60{font-size: 60px; line-height: normal;}
.font80{font-size: 80px; line-height: normal;}
.font100{font-size: 100px; line-height: normal;}

h1{font-size: 52px; font-weight: 700;}
h2{font-size: 32px; font-weight: 500;}
h3{font-size: 24px; font-weight: 300;}

.color-0071D1{color: #0071D1;}
.color-00145C{color: #00145C ;}
.color-5B5B5B{color: #5B5B5B}
.color-7F7F7F {color: #7F7F7F;}
.color-707070 {color: #707070;}
.color-54565a {color: #54565a;}
.color-4D4D4D {color: #4D4D4D;}
.color-109729 {color: #109729;}

.border-end { border-right:  1px solid #7F7F7F; }
.border-start { border-left: 1px solid #7F7F7F; }
.border-top-54565a { border-top: 1px solid #54565a; }

.bg-D9D9D9{background-color: #D9D9D9;}
.bg-0071D1{background-color: #0071D1;}
.bg-7F7F7F{background-color: #7F7F7F;}
.bg-f4f4f4{background-color: #f4f4f4;}
.bg-54565a{background-color: #54565a;}
.bg-f2f2f3{background-color: #f2f2f3;}
.bg-5B5B5B{background-color: #5B5B5B !important;}
.bg-F5F5F5{background-color: #F5F5F5;}
.bg-109729{background-color: #109729;}
.bg-c1d9c5 {background-color: #c1d9c5;}
.bg-D9EAF8{background-color: #D9EAF8;}
.bg-d9d9d933 {background-color: #d9d9d933;}
.bg-006fcf{background-color: #006fcf; box-shadow:0 0 8px rgba(0,112,206,.3);}

.bg-00145C{background-color: #00145C;}
.bg-gradient {background: linear-gradient(90deg, rgba(217,217,217,1) 40%, rgba(255,255,255,1) 40%) !important;}
.bg-white-grey{background: linear-gradient(180deg,rgba(255, 255, 255, 1) 80%, #f4f4f4 80%);}
.bg-hero-grey{background: linear-gradient(180deg,rgba(255, 255, 255, 1) 35%, #f4f4f4 35%); min-height: 70vh;}

.box-shadow-card {
    box-shadow: 0 1px 8px 2px rgba(0, 0, 0, 0.2);
    border-radius: 16px;
}

.promo-off {
    padding: 8px 24px 8px 24px;
    border: 3px solid #4E4E4E;
    border-radius: 50px;
    color: #4E4E4E;
    font-size: 14px;
    vertical-align: super;
    font-weight: 700;
    background-color: #ffffff;
}
.promo-off-2 {
    padding: 8px 24px 8px 24px;
    border: 3px solid #0071D1;
    border-radius: 50px;
    color: #0071D1;
    font-size: 14px;
    vertical-align: super;
    font-weight: 700;
    background-color: #ffffff;
}
.btn-ffffff {
    background-color: #ffffff;
    padding: 12px 30px 12px 30px;
    color: #5B5B5B;
    border-radius: 25px;
    text-decoration: none;
}
.btn-0071D1 {
    background-color: #0071D1;
    padding: 12px 30px 12px 30px;
    color: #ffffff;
    border-radius: 60px;
    text-decoration: none;
}
.btn-0071D1:hover {
    background-color: #005bb5;
    color: #ffffff;
    text-decoration: none;
}
.btn-00145C {
    background-color: #00145C;
    padding: 12px 30px 12px 30px;
    color: #ffffff;
    border-radius: 6px;
    text-decoration: none;
}
.btn-296eb2 {
    background-color: #296eb2;
    padding: 12px 30px 12px 30px;
    color: #ffffff;
    border-radius: 6px;
    text-decoration: none;
}

.tarjetas-efect {border-radius: 6px;}
.tarjetas-efect.active {border: 2px solid #7f7f7f;}
.tarjetas-efect:hover {box-shadow: 0 0 5px 0 rgba(0, 0, 0, .5);}

.w-auto-mob{ width: auto!important;}

.centrar{ top: 50%; left: 50%; position: absolute; transform: translate(-50%, -50%);}

.accordion-button.edit::after{background-image: url('../img/icono-mas.png');}
.accordion-button.edit:not(.collapsed)::after{background-image: url('../img/icono-menos.png');}
.accordion-button.edit:focus {box-shadow: none !important;}
.accordion-button.edit:not(.collapsed) {background-color: transparent !important;}

.accordion-button:not(.collapsed) {background-color: #5B5B5B !important;}
.accordion-button::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");}
.accordion-button:not(.collapsed)::after{background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");}

.swiper-button-next, .swiper-button-prev { color: #0071d1 !important;}
a.row.align-items-center.mx-1.py-3.h-100.text-decoration-none.collapsed {border-bottom: none;}
a.row.align-items-center.mx-1.py-3.h-100.text-decoration-none {border-bottom: 5px solid #00145C;}


.fixed-text-main {
  position: fixed;
  left: 0px;
  bottom: 35vh;
  z-index: 100;
}
.fixed-text {
  background: #296ab2;
  color: #fff;
  width: 220px;
  border-radius: 0px 30px 30px 0px;
  transition: 0.3s ease;
}
.fixed-text:hover {
  width: 250px;
  background: #689cd7;
  transition: 0.3s ease;
}
.fixed-text a {
  color: #fff;
  display: block;
  padding: 15px 30px;
  font-size: 20px;
  font-family: 'BentonSans-Light', sans-serif;
}


.fixed-text-calcu-main {
  position: fixed;
  left: 0px;
  bottom: 22vh;
  z-index: 100;
}
.fixed-text-calcu {
  background: #7b7b7b;
  color: #fff;
  width: 220px;
  border-radius: 0px 50px 50px 0px;
  transition: 0.3s ease;
}
.fixed-text-calcu:hover {
  width: 250px;
  background: #a5a5a5;
  transition: 0.3s ease;
}
.fixed-text-calcu a {
  color: #fff;
  display: block;
  padding: 15px 30px;
  font-size: 20px;
  font-family: 'BentonSans-Light', sans-serif;
}

/* cards beneficio exclusivo */

.card-bene-exclu {
    border-radius: 30px;
    box-shadow: 0 4px 8px 2px rgba(0, 0, 0, 0.2);
    background: #ffffff;
    transition: 0.3s;
    overflow: hidden;
}

.img-bene-exclu {
    min-height: 230px;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease-in-out;
}

.card-bene-exclu:hover .img-bene-exclu {
    transform: scale(1.1);
}

.content-bene-exclu {
    text-align: left;
    padding: 20px 40px;
    min-height: 350px;
    color: #707070;
}

/* cards ofrecer */

.card-ofrecer {
    border-radius: 30px;
    background-position: center top;
    background-size: cover;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
    color: #707070;
    transition: all 0.4s ease;
}

.card-ofrecer.bg-viajes {
    background-image: url('../img/bg-viejes-25.jpg');
    transition: all 0.4s ease;
}

.card-ofrecer.bg-servicios {
    background-image: url('../img/bg-servicios-platinum.jpg');
    transition: all 0.4s ease;
}

.card-ofrecer.bg-recompensas {
    background-image: url('../img/bg-promo-recomenpensas.jpg');
    transition: all 0.4s ease;
}
.card-ofrecer.bg-seguros {
    background-image: url('../img/bg-seguros.jpg');
    transition: all 0.4s ease;
}
.card-ofrecer.bg-rewards {
    background-image: url('../img/bg-rewards.jpg');
    transition: all 0.4s ease;
}
.card-ofrecer.bg-programa-referidos {
    background-image: url('../img/bg-programa-referidos.jpg');
    transition: all 0.4s ease;
}

.content-ofrecer {
    background: #ffffffda;
    color: #707070;
    padding: 0 50px;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: all 0.5s ease;
}
.card-ofrecer.active .content-ofrecer {
    padding: 50px;
    max-height: 3000px; /* valor alto para que entre todo */
    opacity: 1;
    transition: all 0.4s ease;
}

.text-shadow-white {
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

.carousel-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    right: 0;
    bottom: 0;
    transform: translate(-50%, -50%);
    padding: 1.25rem;
    width: 100%;
    color: #fff;
    height: fit-content;
    text-align: center;
}


h2.fw-light.text-white.font40.p-5 {
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.38);
}

/* calculator */


.fancybox-slide {
    width: 600px;
    left: 50%;
    transform: translateX(-50%);
}

.calculator-container {
    background-color: rgba(245, 245, 245, 1);
}     
.calculation-section {
    background-color: rgba(0, 0, 0, 0.05);
    border-bottom: 1px solid #e2e8f0;
    padding: 2rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}     
.balance-amount {
    font-size: 2.5rem;
    font-weight: 900;
    letter-spacing: -0.025em;
    font-family: "BentonSans-Bold";
    font-variant-numeric: tabular-nums;
    line-height: 1;
    margin-bottom: 2rem;
    transition: color 0.5s;
} 
@media (min-width: 768px) {
    .balance-amount {
        font-size: 2.625rem;
    }
}  
.progress-bar-container {
    height: 14px;
    background-color: rgba(217, 217, 217, 1);
    border-radius: 9999px;
    overflow: hidden;
    margin: 0 auto;
}

.progress-bar-fill {
    height: 100%;
    transition: width 1s ease-out, background-color 0.3s;
}

.category-icon{
width:1.5rem;
height:1.5rem;
color:#94a3b8;
margin-bottom: 5px;
}

.category-toggle{
width:1.5rem;
height:1.5rem;
border:1px solid #006fcf;
color:#006fcf;
}

.category-header[aria-expanded="true"] .category-toggle{
background:#006fcf;
color:#fff;
}

.toggle-minus{display:none;}
.category-header[aria-expanded="true"] .toggle-plus{display:none;}
.category-header[aria-expanded="true"] .toggle-minus{display:block;}

.category-item:not(.is-selected) .font11{color:#94a3b8;font-weight:500;}
.category-item:not(.is-selected) .font11{color:#cbd5e1;}
.category-item.is-selected .font11, .category-item.is-selected .font11{color:#54565a;}

.dot{
width:.625rem;
height:.625rem;
border-radius:50%;
}

.card-image {
    width: 16rem;
    margin-bottom: 2.5rem;
    filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.2));
    transition: transform 0.7s;
}

.card-image:hover {
    transform: scale(1.05);
}

.apply-button {
    background-color: #4D4D4D;
    color: white;
    padding: 1rem 3.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    transition: all 0.3s;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    display: inline-block;
}

.apply-button:hover {
    background-color: black;
    color: white;
    transform: translateY(-1px);
}

.apply-button:active {
    transform: scale(0.95);
}

@media (max-width: 1920px) {
    .bg-hero-grey {
        min-height: 90vh !important;
    }
}

@media (max-width: 1400px) {
.axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__horizontalNav___4yi5G .axp-global-header__GlobalHeader__navContainer___1rC-J, .axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__verticalNav___1aQcq .axp-global-header__GlobalHeader__navContainer___1rC-J, .axp-global-header__GlobalHeader__globalHeader___MXh17 .axp-global-header__GlobalHeader__searchBar___3Fr-v .axp-global-header__GlobalHeader__navContainer___1rC-J{max-width: 1140px;}
.bg-hero-grey {
    min-height: 110vh !important;
}
.fixed-text-main {
    bottom: 40vh;
}
}
@media (max-width: 991px) {
    .bg-gradient {background: linear-gradient(180deg, rgba(217,217,217,1) 40%, rgba(255,255,255,1) 40%) !important;}
}

@media (max-width: 768px) {
    .swiper-button-next, .swiper-rtl .swiper-button-prev { right: 0px !important;}
    .swiper-button-prev, .swiper-rtl .swiper-button-next { left: 0px !important;}
    .card-ofrecer {
        background-position: right top;
        transition: all 0.4s ease;
    }
    .card-ofrecer.active {
        background-position: right top;
        background-size: auto;
        transition: all 0.4s ease;
    }
    .card-ofrecer.bg-servicios {
        background-position: center top;
    }
    .card-ofrecer.bg-seguros {
        background-position: left top;
    }
    .fixed-text-main {
    top: 20vh;
    }
    .fixed-text {
    width: 165px;
    }
    .fixed-text:hover {
    width: 170px;
    }
    .fixed-text a {
    font-size: 15px;
    }
    .fixed-text-calcu-main {
    top: 27vh;  
    }
    .fixed-text-calcu {
    width: 140px;
    }
    .fixed-text-calcu a {
    font-size: 12px;
    }
    .img-bene-exclu {
        min-height: auto;
    }
    .content-bene-exclu {
        padding: 30px;
    }
    h2 {font-size: 22px !important; line-height: 26px;}
    .font40 {
        font-size: 24px;
        line-height: normal;
    }
    .font30 {
        font-size: 18px;
        line-height: normal;
        line-height: 22px;
    }
    .font38-mob{font-size: 38px;}
    .font28-mob{font-size: 28px;}
    .font24-mob{font-size: 24px;}
    .font20-mob{font-size: 20px;}
    .font18-mob{font-size: 18px;}
    .font16-mob{font-size: 16px;}
    .font15-mob{font-size: 15px;}
    .font14-mob{font-size: 14px;}
    .font13-mob{font-size: 13px;}
    .font12{font-size: 12px;}
    .font11-mob{font-size: 11px;}
    .font10-mob{font-size: 10px;}
    .font9-mob{font-size: 9px;}
    .font8-mob{font-size: 8px; line-height: 12px;}
    .font7-mob{font-size: 7px; line-height: 11px;}

    .box-shadow-card {width: 80%;}

    .fancybox-slide {
        width: 100%;
        left: 50%;
        transform: translateX(-50%);
        padding: 10px;
    }
    .bg-hero-grey {
    min-height: 60vh !important;
    }


    .border-top-mob {border-top: 1px solid #7F7F7F !important;}
    .border-bottom-mob {border-bottom: 1px solid #7F7F7F !important;}
    .border-end { border-right: none !important; }
    .border-start { border-left: none !important; }

    .w-auto-mob{ width: 100%!important; }
    .w-100-mob{ width: 100% !important; }
}
