BODY.suma {
    font-family: "Nunito", sans-serif;
    background-color: #F4F4F4 !important;
}

.suma MAIN {
    padding-top: 32px;
    margin-bottom: 32px;
}

.suma HEADER {
    display: block;
}

.suma a, a:hover, a:active {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

.suma HR {
    height: 1px;
    background-color: #6D6E73;
    border: 0;
    opacity: 1;
    margin: 20px 0;
}

.suma HR.doble {
    height: 2px;
    background-color: #6D6E73;
    border: 0;
    opacity: 1;
}

.suma H1 {
    font-size: 48px;
    line-height: 60px;
    font-weight: 700;
    text-align: left;
    color: #1F1A17;
}

.suma H2 {
    font-size: 32px;
    font-weight: 700;
    line-height: 44px;
    text-align: left;
    color: #1F1A17;
}

.suma H3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    text-align: left;
}

.suma H4 {
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
    text-align: left;
    color: #303030;
}

.suma LABEL {
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    text-align: left;
    margin-bottom: 8px;
}

.suma P {
    font-size: 18px;
    font-weight: 300;
}

.suma .red-text {
    color: #E41010;
}

.suma STRONG {
    font-weight: 500;
}

.suma .text-justify {
    text-align: justify;
}

.suma .weight-600 {
    font-weight: 600;
}

.suma .weight-400 {
    font-weight: 400;
}

.suma .cursor-pointer {
    cursor: pointer;
}

/********** FOOTER *******/
.suma FOOTER {
    background-color: #1F1A17;
    padding: 8px 96px;
}

@media (max-width: 991.98px) {
    .suma FOOTER {
        padding: 8px 40px;
    }
}

@media (max-width: 575.98px) {
    .suma FOOTER {
        padding: 8px 24px;
    }
}

.suma FOOTER .logo-footer {
    width: 100%;
    max-width: 100px;
    height: auto;
}

.suma FOOTER .links {
    display: flex;
    padding: 16px 0;
}

.suma FOOTER .links div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.suma FOOTER .links div:first-child {
    padding-right: 16px;
    margin-right: 16px;
    border-right: 1px solid rgba(255,255,255,120);
}

.suma FOOTER A,
.suma FOOTER A:hover {
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 400;
    text-align: left;
}

.suma FOOTER IMG.icono-redes {
    margin-left: 5px;
}

/********** HOME **********/

.carousel-inner {
    position: relative;
    width: 100%;
}

.carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel-indicators-container {
    position: relative;
    display: flex !important;
    justify-content: center;
    align-items: center;
}

.carousel-indicators-container button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #F0F0F0;
    transition: opacity 0.3s ease;
    margin: 24px 6px 0 6px;
    padding: 0;
    cursor: pointer;
    border: 0.5px solid #1F1A17;
}

.carousel-indicators-container button:hover {
    opacity: 1;
}

.carousel-indicators-container button.active {
    width: 11px;
    height: 11px;
    border: 1px solid #1F1A17;
    background-color: #E41010;
}

.quienes-somos-home {
    background-color: #FFFFFF;
    top: 472px;
    gap: 0px;
    border-radius: 0px 0px 56px 56px;
    box-shadow: 0px 8px 6px 0px #00000040;

}
.quienes-somos-home H2 {
    font-size: 32px;
    font-weight: 700;
    line-height: 43px;
}

.quienes-somos-home P {
    font-size: 18px;
    font-weight: 400;
}

.quienes-somos-home A, .ver-mas-novedades A{
    font-size: 16px;
    font-weight: 700;
    color: #E41010;
    margin-right: 15px;
}

.cotizacion{
    padding: 32px 56px 32px 56px;
    border-radius: 24px;
    box-shadow: 0px 8px 8px 0px #00000040;
    background-color: #FFFFFF;
}

.cotizacion H2{
    font-size: 32px;
    font-weight: 800;
    text-align: left;
    color: #E41010;
}
.cotizacion P{
    font-size: 16px;
    font-weight: 600;
}
.cotizacion A {
    padding: 12px 16px 12px 16px;
    border-radius: 14px ;
    background-color: #E41010;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 700;
}

/***********************/
/***** CALCULADORA *****/
/***********************/

.suma .bloques-calculadora {
    text-align: center;
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
    border-radius: 24px;
}

.suma .bloques-calculadora .plan-label {
    font-weight: 300;
}
.suma INPUT.customized {
    height: 48px;
    font-size: 24px;
    font-weight: 300;
    line-height: 32px;
    text-align: center;
    border: 0;
    box-shadow: 0 3px 3px 0 #00000040;
}

.suma INPUT.customized.with-error {
    border:1px solid #E41010;
}

.suma .btn-selector {
    height: 48px;
    width: 100%;
    background-color: #FFFFFF;
    text-align: left;
    padding-right: 0;
    box-shadow: 0 3px 3px 0 #00000040;
    font-size: 24px;
    font-weight: 300;
}

.suma .btn-selector.show,
.suma .btn-selector:hover {
    background-color: #FFF;
}

.suma .btn-selector::after {
    content: "";
    display: block;
    position: relative;
    float: right;
    width: 40px;
    height: 34px;
    background-image: url("../images/arrow-down.svg");
    background-repeat: no-repeat;
    background-position: center center;
    border-left: 1px solid #303030;
}

.suma .btn-selector.show::after {
    background-image: url("../images/arrow-up.svg");
}

.suma .dropdown-item:hover, .suma .dropdown-item:focus {
    background-color:#f8f9fa;
}

.suma .dropdown-item.active, .suma .dropdown-item:active {
    background-color:#e6e6e6;
    color: inherit;
}

.suma .btn-volver {
    display: block;
    height: 44px;
    color: #1F1A17;
    font-weight: 400;
    background-color: transparent;
    padding: 0px;
    font-size: 24px;
    line-height: 44px;
    border: 2px solid transparent;
    border-radius: 0;
    box-shadow: unset;
}

.suma .btn-calculadora {
    color: #FFF;
    font-weight: 600;
    background-color: #E41010;
    padding: 0 16px;
    font-size: 20px;
    line-height: 44px;
    border: 2px solid transparent;
    border-radius: 14px;
    box-shadow: 0 2px 4px 0 #00000040;
}

.suma .btn-calculadora:hover {
    color: #FFF;
    background-color: #D21212;
    border-color: transparent;
}

.suma .btn-calculadora:active,
.suma .btn-calculadora:active:focus {
    color: #FFF;
    background-color: #9F1010;
    border-color: transparent;
    box-shadow: 0px 0px 4px 0px #00000040 inset;
}

.suma .btn-calculadora:focus {
    color: #FFF;
    background-color: #D21212;
    border: 2px solid transparent;
}

.suma .btn-calculadora:disabled {
    color: #E9E6E6;
    background-color: #868585;
    box-shadow: unset;
}

.suma .btn-calculadora.btn-black {
    background-color: #1F1A17;
}

.suma .btn-calculadora.btn-black:disabled {
    color: #FFFFFF;
    background-color: #6F6F6F;
    border-color: transparent;
}

/***********************/
/****** COMERCIOS ******/
/***********************/

.suma .modal-content {
    border-radius: 25px;
}

.suma .modal-content .modal-body {
    padding: 22px 40px 22px 40px;
}

.suma .card-comercio {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 80%;
    position: relative;
    text-align: center;
    padding-top: 16px;
    padding-right: 43px;
    padding-bottom: 8px;
    padding-left: 43px;
    margin-bottom: 44px;
    border-radius: 8px;
    box-shadow: 0 4px 4px 0 #00000040;
    background: #FFFFFF;
}

.suma .card-comercio img {
    display: inline;
    width: 100%;
    height: auto;
    max-width: 250px;
    max-height: 125px;
    margin-bottom: 16px;
    margin-left: auto;
    margin-right: auto;
}

.suma .card-comercio p {
    font-size: 14px;
    font-weight: 500;
    color: #1F1A17;
    margin-bottom: 0;
}

.suma .card-comercio a {
    display: block;
    position: absolute;
    top: 8px;
    right: 8px;
    width: 24px;
    height: 24px;
    background-image:url('../images/icono-location-comercios.svg');
    background-repeat: no-repeat;
}

.suma .filtrar-container {
    position: relative;
    height: 100%;
}

.suma .filtrar-comercios {
    position: absolute;
    bottom: 0;
    right: 0;
    background-image: url('../images/icono-filtro.svg');
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 25px;
    cursor: pointer;
    margin: 0;
}

.suma .filtrar-comercios.active-filters {
    background-image:url('../images/icono-filtro-red.svg');
    color: #E41010;
}

.suma #applied-filters {
    margin: 24px 0;
    text-align: right;
}

.suma #applied-filters .filter-badge {
    color: #000;
    border-radius: 5px;
    border: 1px solid #000;
    height: 32px;
    line-height: 32px;
    font-size: 18px;
    font-weight: 400;
    padding-left: 8px;
    padding-right: 24px;
    cursor: pointer;
    display: inline-block;
    background-size: 16px;
    background-image:url('../images/icono-cerrar.svg');
    background-repeat: no-repeat;
    background-position: calc(100% - 4px) center;
    text-transform: uppercase;
    margin-left: 10px;
    margin-bottom: 10px;
}

.suma #applied-filters .filter-badge:hover {
    background-color: #FFFFFF99;
}

.suma #filtersModal .filter-close-btn {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 24px;
    height: 24px;
    border: 0;
    overflow: hidden;
    color: transparent;
    background-color: transparent;
    background-image:url('../images/icono-cerrar.svg');
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.suma #filtersModal .filter-btn {
    height: 32px;
    background-color: transparent;
    border: 1px solid #1F1A17;
    padding: 0 8px;
    border-radius: 8px;
    font-size: 18px;
    line-height: 32px;
    font-weight: 400;
    text-transform: uppercase;
    margin-right: 10px;
    margin-bottom: 10px;
}

.suma #filtersModal .filter-btn.active {
    background-color: #E41010;
    color: #FFF;
    font-weight: 600;
}

.suma #filtersModal H3 {
    margin-top: 24px;
}

@media (max-width: 767px) {
    .suma .filtrar-container {
        height: 27px;
    }

    .suma .filtrar-comercios {
        left: 0;
        right: unset;
    }

    .suma #applied-filters {
        text-align: left;
    }

    .suma #applied-filters .filter-badge {
        margin-right: 10px;
        margin-left:0;
    }
}

/**********  NOVEDADES *******/

.bloques {
    position: relative;
    background-color: #FFFFFF;
    padding: 24px;
    border-radius: 16px;
    box-shadow: 0 8px 10px 0 #00000040;
    height: 100%;
}

.bloques IMG {
    border-radius: 16px;
    box-shadow: 0 2px 4px 0 #00000040;
}

.bloques .date {
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 300;
    text-align: right;
}

.bloques .date.absolute {
    position: absolute;
    bottom: 24px;
    right: 24px;
}

.bloque-redes {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

.contacto {
    font-size: 20px;
    border: 1px solid #303030;
    border-radius: 16px;
    height: 56px;
    padding: 8px 16px;
    gap: 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 4px 4px 0 #00000040;
}

.img-clickable {
    border-radius: 5px !important;
    transition: transform 0.3s ease; /* Hace que el zoom sea suave */
    cursor: pointer; /* Cambia el cursor cuando el mouse está sobre la imagen */
    margin-bottom: 16px;
}

.zoom-container {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.7); /* Fondo oscuro */
    display: none; /* Oculto inicialmente */
    justify-content: center;
    align-items: center;
    z-index: 9999; /* Asegura que esté encima de otros elementos */
}

.zoom-container img {
    max-width: 90%;
    max-height: 90%;
    transition: transform 0.3s ease; /* Hace que el zoom sea suave */
}

.icons {
    display: flex;
    gap: 24px;
}

.icons img {
    width: 30px;
    height: auto;
}

/*** SUCURSALES ***/

.bloque-sucursales {
    background-color: #FFFFFF;
    padding: 12px 8px 0 8px;
    border-radius: 16px;
    box-shadow: 0 8px 10px 0 #00000040;
    height: 100%;
}

.bloque-sucursales H2 {
    color: #FFF;
    text-align: center;
    border-radius: 16px;
    background-color: #E41010;
    margin-bottom: 24px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;   
    padding: 4px 12px;
}

.bloque-sucursales IMG {
    box-shadow: 0px 0px 4px 1px #00000040;
    border-radius: 5px;
    margin-bottom: 24px;
}

.bloque-sucursales P.location-icon,
.bloque-sucursales P.telefono-icon,
.bloque-sucursales P.email-icon {
    height: 24px;
    line-height: 24px;
    font-size: 20px;
    font-weight: 400;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 20px;
    margin-left: 4px;
    margin-right: 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.bloque-sucursales P.location-icon {
    background-image:url('../images/icono-location.svg');
}

.bloque-sucursales P.telefono-icon {
    background-image:url('../images/icono-telefono.svg');
}

.bloque-sucursales P.email-icon {
    background-image:url('../images/icono-mail.svg');
}

/***********************/
/****** PRESTAMOS ******/
/***********************/

.suma .custom-card {
    border-radius: 32px;
    box-shadow: 0 6px 6px 4px #00000040;
    margin-bottom: 48px;
}

.suma .custom-card .card-body {
    padding: 20px 32px 20px 32px;
}

.suma .custom-card .card-body .floating-button {
    position: absolute;
    right: 32px;
    bottom: 20px;
}

.suma .prestamos UL {
    list-style-type: none;
    padding: 0;
}

@media (max-width: 991px) {
    .suma .custom-card {
        border-radius: 24px;
        box-shadow: 0 6px 6px 0 #00000040;
        margin-bottom: 24px;
    }

    .suma .custom-card .card-body {
        padding: 20px 24px 20px 24px;
    }

    .suma .custom-card .card-body .floating-button {
        right: 24px;
    }
}

@media (max-width: 575px) {
    .suma .custom-card {
        border-radius: 16px;
        box-shadow: 0 4px 4px 0 #00000040;
        margin-bottom: 16px;
    }

    .suma .custom-card .card-body {
        padding: 20px 16px 20px 32px;
    }

    .suma .custom-card .card-body .floating-button {
        right: 20px;
    }

    .suma .custom-card .card-body .floating-button {
        margin-top: 16px;
        position: relative;
        right: unset;
        bottom: unset;
        text-align: right;
    }
}

/*** QUIENES SOMOS ***/
.bloque-historia{
    background-color: #FFFFFF;
}

@media (max-width: 575px){
    .cotizacion, .quienes-somos-home-mobile {
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    .cotizacion p{
        order: 1;
    }
    .cotizacion h2 {
        order: 1;
        text-align: center;
    }

    .cotizacion a {
        order: 3;
        text-align: center;
        font-size: 20px;

    }

    .cotizacion p {
        order: 2;
    }

    .quienes-somos-home h2{
        order: 1;
    }
    .quienes-somos-home A{
        order: 2;
        text-align: left;
        margin-left: 0px !important;
    }
    .quienes-somos-home p{
        order: 3;
    }
}

@media (max-width: 768px) {
    .quienes-somos-home{
        padding: 0 20px;
    }
    .img-order{
        order: 2
    }
    .contenido-order{
        order: 1;
    }

}
@media (max-width: 1024px){
    .cotizacion{
        padding: 32px 16px 32px 16px;
    }
}

/*************/
/*** OTHER ***/
/*************/

.suma .m-auto {
    margin: 0 auto;
}

.w-xs-25 { width: 25% !important; }
.w-xs-50 { width: 50% !important; }
.w-xs-75 { width: 75% !important; }
.w-xs-100 { width: 100% !important; }

@media (min-width: 576px) {
    .w-sm-25 { width: 25% !important; }
    .w-sm-40 { width: 40% !important; }
    .w-sm-45 { width: 45% !important; }
    .w-sm-50 { width: 50% !important; }
    .w-sm-75 { width: 75% !important; }
    .w-sm-100 { width: 100% !important; }
}

@media (min-width: 768px) {
    .w-md-25 { width: 25% !important; }
    .w-md-50 { width: 50% !important; }
    .w-md-60 { width: 60% !important; }
    .w-md-75 { width: 75% !important; }
    .w-md-100 { width: 100% !important; }
}

@media (min-width: 992px) {
    .w-lg-25 { width: 25% !important; }
    .w-lg-50 { width: 50% !important; }
    .w-lg-75 { width: 75% !important; }
    .w-lg-90 { width: 90% !important; }
    .w-lg-100 { width: 100% !important; }
}

@media (min-width: 1200px) {
    .w-xl-25 { width: 25% !important; }
    .w-xl-50 { width: 50% !important; }
    .w-xl-75 { width: 75% !important; }
    .w-xl-100 { width: 100% !important; }
}



/* Container for the custom radio button */
.custom-radio {
    position: relative;
    display: inline-block;
    width: 24px;
    height: 24px;
    cursor: pointer;
    margin: 4px 0;
}

/* Hide the default radio button */
.custom-radio input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    z-index: -1; /* Keeps it behind the pseudo-elements */
}

/* Outer black circle */
.custom-radio::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    border: 1px solid black;
    border-radius: 50%;
    background: white;
}

/* Middle white circle */
.custom-radio::after {
    content: '';
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #FFF;
}

.custom-radio:checked::after {
    background: #E41010;
}

.custom-radio:disabled::after {
    /* background: rgba(118, 118, 118, 0.3); */
    cursor: not-allowed;
}

/* Inner red circle (only when selected) */
.custom-radio input[type="radio"]:checked ~ .inner-circle {
    display: block;
}

.inner-circle {
    position: absolute;
    top: 9px; /* Positioned inside the middle white circle */
    left: 9px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: red;
    display: none; /* Hidden by default */
}