.banner {
    width: 100%;
    height: 335px;
    padding-left: 50px;
    padding-right: 140px;
    background: linear-gradient(0deg, rgba(1, 44, 95, 0.70) 0%, rgba(1, 44, 95, 0.70) 100%), url(/img/banner-planes.jpg), lightgray 50% / cover no-repeat;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;

    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
}

.banner-info {
    height: 100%;
    width: 740px;
    padding-top: 80px;
}

.banner-info h1 {
    color: white;
    font-size: 53.41px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-align: left;
    text-transform: uppercase;
}

.banner-info p {
    color: #FFF;
    font-size: 27.34px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: lighter;
    line-height: normal;
}

.banner img {
    height: 90%;
}

.planes-container {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 10px;
    padding: 10px 60px;
    display: flex;
    flex-direction: row;
    align-items: start;
    justify-content: space-between;
}

.plan {
    width: 270px;
    height: 550px;
    border-radius: 5px;
    border: 5px;
    border-style: solid;

    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    justify-content: start;
}

.plan-encabezado {
    width: 270px;
    height: 90px;
    padding: 10px 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.plan-encabezado h3 {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    font-size: 27.34px;
    line-height: 37px;
    text-align: center;
    font-feature-settings: 'pnum' on, 'lnum' on;

    /* Fondo */

    color: #FFFFFF;
}

.plan-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.plan-info h2 {
    font-family: 'Open Sans';
    font-size: 42px;
    color: #000000;
}

.plan-info small {
    /* P5-Montserrat */
    font-family: 'Montserrat';
    font-weight: lighter;
    font-size: 16px;
    line-height: 20px;
    text-align: justify;
    color: #656869;
}

.plan-info button {
    margin-top: 20px;
    width: 220px;
    height: 40px;
    border-radius: 10px;
    border: none;

    font-family: 'Open Sans';
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    color: #FFFFFF;
}

.plan-info button.uno {
    background: #01387b;
}

.plan-info button.dos {
    background: #e46732;
}

.plan-info button.tres {
    background: #0090cd;
}

.plan-info button.cuatro {
    background: #8c00af;
}


.plan-info button.uno:hover {
    border: solid 2px #01387b;
    color: #01387b;
    background: #FFFFFF;
}

.plan-info button.dos:hover {
    border: solid 2px #e46732;
    color: #e46732;
    background: #FFFFFF;
}

.plan-info button.tres:hover {
    border: solid 2px #0090cd;
    color: #0090cd;
    background: #FFFFFF;
    box-shadow: none;
}

.plan-info button.cuatro:hover {
    border: solid 2px #8c00af;
    color: #8c00af;
    background: #FFFFFF;
}

.plan-servicios {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    color: #000000;
}

.plan-servicios ul li {
    list-style: none;
    /* Quita el estilo de viñeta predeterminado */
    padding-left: 20px;
    /* Espacio para la imagen de viñeta */
    position: relative;
    margin: 10px;
    margin-bottom: 20px;
}

.plan-servicios ul li::before {
    content: "";
    /* Crea un elemento pseudo-antes */
    background-image: url('/img/icon/check.png');
    /* Ruta a tu imagen */
    background-size: 20px 20px;
    /* Tamaño de la imagen */
    background-repeat: no-repeat;
    /* Evita que se repita la imagen */
    width: 20px;
    /* Ancho de la imagen */
    height: 20px;
    /* Alto de la imagen */
    position: absolute;
    margin-right: 5px;
    left: 0;
    /* Posición de la imagen a la izquierda */
    top: 50%;
    /* Alineación vertical en el centro */
    transform: translateY(-50%);
    /* Alineación vertical en el centro */
}

.uno {
    border-color: #01387b;
}

.dos {
    border-color: #e46732;
}

.tres {
    border-color: #0090cd;
}

.cuatro {
    border-color: #8c00af;
}

.recomendacion {
    margin-top: 20px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;

    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 20px;
}

.recomendacion a{
    text-decoration: underline;
}

.recomendacion a:hover {
    font-weight: bold;
}