/* Inicio */
section.banner-inicio h1 {
    font-size  : 40px;
    font-weight: 700;
    margin     : 0;
}

.banner-inicio .card-img-overlay p {
    font-size  : 16px;
    font-weight: 400;
    font-style : italic;
    text-align : end;
    padding-top: 1rem;
}

section .valor {
    width          : 100%;
    display        : flex;
    justify-content: center;
    align-items    : center;
    margin-bottom  : 20px;
}

section .card-container {
    position     : relative;
    width        : 100%;
    height       : 270px;
    overflow     : hidden;
    border-radius: 20px;
    box-shadow   : 0 4px 10px rgba(0, 0, 0, 0.1);
    transition   : background-color 0.3s ease;
}

section .card-container:hover {
    background-color: #0C26A3;
}

section .card-container a {
    font-size      : 14px;
    font-weight    : 400;
    font-style     : italic;
    text-decoration: none;
    color          : inherit;
}

section .card-container:hover a {
    color: #fff;
}

section .card-container:hover .container-logo {
    background-color: #fff;
}

section .card-container:hover .logo-tarj {
    filter: invert(27%) sepia(100%) saturate(7470%) hue-rotate(225deg) brightness(50%) contrast(105%);
}

section .parte-uno {
    flex           : 1;
    display        : flex;
    justify-content: center;
    align-items    : center;
    text-align     : center;
    padding        : 10px;
}

.container-logo {
    display         : flex;
    justify-content : center;
    align-items     : center;
    width           : 80px;
    height          : 80px;
    background-color: #0C26A3;
    border-radius   : 50%;
    margin-bottom   : 20px;
}

.logo-tarj {
    width : 47px;
    height: 47px;
}

.titulo-cod {
    font-size  : 34px;
    font-weight: 500;
    color      : #0C26A3;
}

.descrip-cod {
    font-size  : 18px;
    font-weight: 400;
    color      : #453D3B;

}

.linea-container {
    background    : #0C26A3;
    padding-top   : 60px;
    padding-bottom: 60px;
    border-radius : 20px;
}

.linea-row {
    height: 400px;
}

.linea-overlay {
    left: -80px;
}

.linea-card {
    border-radius : 20px;
    padding       : 3.5rem;
    padding-bottom: 7.5rem;
}

.linea-title {
    font-size  : 42px;
    font-weight: 600;
    line-height: normal;
    color      : #0C26A3;
    padding    : 1rem 3rem 0 3rem;
}

.linea-text {
    padding: 0rem 3rem;
}

.linea-header {
    background-color       : #FCC200;
    margin-top             : 20px;
    border-top-right-radius: 40px;
}

.linea-header-title {
    font-family: Poppins, sans-serif;
    font-size  : 36px;
    font-weight: 700;
    line-height: normal;
    color      : #0C26A3;
    padding    : 0.5rem 0 0.5rem 2.5rem;
    margin     : 0;
}

.linea-info {
    padding: 1rem 1.5rem 0 1.5rem;
}

.linea-subtitle {
    color      : #FFF;
    font-family: Poppins, sans-serif;
    font-size  : 20px;
    font-weight: 600;
    line-height: normal;

}

.linea-description {
    color      : #FFF;
    font-family: Poppins, sans-serif;
    font-size  : 18px;
    font-weight: 400;
    line-height: normal;
}

.linea-contact {
    font-size    : 14px;
    border-radius: 5px;
    background   : #0074C9;
    color        : #FFF;
    padding      : 0.5rem;
    margin-right : 1.5rem;
}


.actos-riesgo .container {
    border-radius: 20px;
    padding      : 0px;
}

.card-eti {
    border-radius: 20px 0 0 20px;
    height       : 100%;
}

.card-eti-img {
    border-radius: 20px 0 0 20px;
    object-fit   : cover;
    height       : 100%;
    width        : auto;
}

.card-eti-overlay {
    display    : flex;
    align-items: end;
}

.card-eti-content {
    padding      : 0.5rem 1rem;
    border-radius: 15px;
}

.card-eti-title {
    font-size  : 20px;
    font-style : normal;
    font-weight: 500;
    line-height: normal;
    color      : #0C26A3;
}

.card-eti-text {
    font-size  : 14px;
    font-style : normal;
    font-weight: 400;
    line-height: normal;
}

.tit-rgs {
    font-size  : 27px;
    font-style : normal;
    font-weight: 500;
    line-height: normal;
    color      : #0C26A3;
}

.tabs {
    display      : inline-flex;
    padding      : 6px;
    border-radius: 999px;
    gap          : 4px;
}

.tab {
    display        : inline-flex;
    align-items    : center;
    justify-content: center;
    padding        : 10px 18px;
    border-radius  : 999px;
    border         : none;
    background     : transparent;
    font-weight    : 600;
    font-size      : 14px;
    cursor         : pointer;
    white-space    : nowrap;
    transition     : all 0.3s ease;
    color          : #1f3a8a;
}

.tab.active {
    background: #1e40af;
    color     : #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.tab:hover:not(.active) {
    background: rgba(30, 64, 175, 0.1);
}

.timeline {
    list-style  : none;
    padding-left: 30px;
    position    : relative;
}

.timeline li {
    position: relative;
}

.timeline li::before {
    content   : "";
    position  : absolute;
    left      : -18px;
    top       : 6px;
    width     : 2px;
    height    : 100%;
    background: #d4d8e5;
}

.timeline li::after {
    content      : "";
    position     : absolute;
    left         : -22px;
    top          : 6px;
    width        : 10px;
    height       : 10px;
    background   : #1e40af;
    border-radius: 50%;
}

.timeline li:last-child::before {
    display: none;
}

.timeline li h5 {
    font-size  : 18px;
    font-style : normal;
    font-weight: 500;
    line-height: normal;
    color      : #1e40af;
}

.timeline li p {
    font-size  : 14px;
    font-style : normal;
    font-weight: 400;
    line-height: normal;
    color      : #1e40af;
}





/* Título del documento */
.programas-cumplimiento .titulo-documento {
    font-size  : 14px;
    font-style : italic;
    font-weight: 400;
    line-height: normal;
    color      : #0C26A3;
    transition : color 0.3s ease;
}

.programas-cumplimiento .parte-uno:hover .titulo-documento {
    color: #fff;
}

.programas-cumplimiento .btn-documento {
    background-color: #e0e0e0;
    color           : #0C26A3;
    border-radius   : 8px;
    padding         : 8px 16px;
    font-weight     : 500;
    transition      : all 0.3s ease;
    text-decoration : none;
}

.programas-cumplimiento .parte-uno:hover .btn-documento {
    background-color: #fff;
    color           : #0C26A3;
}


/* Sección Línea Ética */
.linea-etica .tarjeta-etica {
    border-radius   : 20px !important;
    background-color: #0C26A3;
}

/* Icono */
.linea-etica .icono-etica {
    display         : flex;
    justify-content : center;
    align-items     : center;
    width           : 92px;
    height          : auto;
    border-radius   : 70.3px;
    padding         : 20px;
    background-color: #fff;
}

.linea-etica .icono-etica svg {
    width     : 47px;
    height    : 47px;
    object-fit: cover;
}

.linea-etica .imagen-icono-etica {
    width : 47px;
    height: 47px;
}

/* Contenido */
.linea-etica .contenido-etica {
    flex: 1;
}

/* Título */
.linea-etica .titulo-etica {
    font-size  : 24px;
    font-weight: 700;
    color      : #fff;
}

/* Descripción */
.linea-etica .descripcion-etica {
    font-size  : 16px;
    font-weight: 400;
    color      : #fff;
}