.ri-formulario{
    padding:10px;
}

.ri-required{

    color:#00B9FF;

    font-weight:700;

}

.ri-titulo h2{
    color:#123f73;
    font-size:28px;
    margin-bottom:30px;
}


/* Contenedor de tarjetas */
.ri-tipos{
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap:20px;
}


/* Tarjeta */
.ri-card{
    position:relative;
    border:1px solid #e8e8e8;
    border-radius:14px;
    padding:25px;
    cursor:pointer;
    background:#ffffff;
    transition:all .3s ease;
    min-height:220px;
    box-shadow:
    0 8px 25px rgb(27 90 238 / 20%);
}


/* Ocultar radio */
.ri-card input{

    position:absolute;
    opacity:0;

}


/* Hover */
.ri-card:hover{
    border-color:#013AA1;
    transform:translateY(-3px);
    box-shadow:
    0 8px 25px rgb(27 90 238 / 20%);
}


/* Icono */
.ri-icono{

    font-size:35px;
    margin-bottom:15px;

}


/* Titulo */
.ri-card h3{

    color:#123f73;
    font-size:20px;
    margin-bottom:15px;

}


/* Descripción */
.ri-card p{

    color:#555;
    line-height:1.6;

}


/* Radio visual */
.ri-radio{

    position:absolute;
    bottom:18px;
    left:50%;
    transform:translateX(-50%);
    width:18px;
    height:18px;
    border-radius:50%;
    border:2px solid #999;

}

.ri-card.active{
    border:2px solid #013AA1;
    background:
    linear-gradient(
        145deg,
        #ffffff,
        #fff7ef
    );
    box-shadow:
    0 8px 25px rgb(27 90 238 / 20%);
}


.ri-card.active .ri-radio{

    background:#013AA1;
    border-color:#013AA1;

}

.ri-seccion{

    margin-top:30px;
    padding:25px;
    border:1px solid #eeeeee;
    border-radius:16px;
    background:#ffffff;
    box-shadow:
    0 8px 25px rgb(27 90 238 / 20%);

}


.ri-seccion-titulo{

    display:flex;
    align-items:center;
    gap:10px;

}


.ri-seccion-titulo h2{

    color:#123f73;
    font-size:20px;

}


.ri-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:20px;

}


.ri-campo label{

    display:block;
    color:#123f73;
    font-weight:600;
    margin-bottom:8px;

}


.ri-campo input,
.ri-campo select{

    width:100%;
    padding:12px;

    border:1px solid #ddd;
    border-radius:8px;

    font-size:14px;

}

/* ==========================
   SECCION DATOS PERSONALES
========================== */


.ri-seccion{

    margin-top:30px;
    padding:25px;

    border:1px solid #e6e6e6;
    border-radius:12px;

    background:#ffffff;

}


/* Titulo de secci��n */

.ri-seccion-titulo{

    display:flex;
    align-items:center;
    gap:12px;

    margin-bottom:25px;

}


.ri-seccion-titulo h2{

    margin:0;

    color:#123f73;

    font-size:22px;

    font-weight:600;

}


/* Icono */

.ri-seccion-icono{

    color:#013AA1;

    font-size:28px;

}


/* Grid de campos */

.ri-grid{

    display:grid;

    grid-template-columns:repeat(3, 1fr);

    gap:20px;

}


/* Campos */

.ri-campo{

    display:flex;

    flex-direction:column;

}


/* Labels */

.ri-campo label{

    color:#123f73;

    font-size:14px;

    font-weight:600;

    margin-bottom:8px;

}


/* Inputs y selects */

.ri-campo input,
.ri-campo select,
.ri-campo textarea{

    width:100%;
    min-height:46px;
    padding:12px 16px;
    border:1px solid #E2E8F0;
    border-radius:10px;
    font-size:14px;
    color:#123F73;
    background:#FFFFFF;
    outline:none;
    transition:all .25s ease;
    box-sizing:border-box;

}


/* Focus */

.ri-campo input:focus,
.ri-campo select:focus{

    border-color:#013AA1;

}


/* Placeholder */

.ri-campo input::placeholder{

    color:#999;

}

.ri-full{

    grid-column:1 / -1;

}

.ri-campo input,
.ri-campo select,
.ri-campo textarea{

    border:1px solid #d9dfe8;

    background:#fafafa;

    transition:.3s;

}


.ri-campo small{

    color:#777;

}


.ri-upload{

    height:140px;

    border:2px dashed #cfcfcf;

    border-radius:10px;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    color:#123f73;

}


.ri-upload span{

    font-size:35px;

}

.ri-upload{

    border:2px dashed #d8d8d8;
    border-radius:12px;

    padding:30px;

    text-align:center;

    cursor:pointer;

    background:#fafafa;

}


.ri-upload input{

    display:none;

}


.ri-upload label{

    cursor:pointer;

    display:flex;

    flex-direction:column;

    align-items:center;

}


.ri-upload-icono{

    font-size:40px;

    color:#123f73;

}


.ri-upload p{

    margin:10px 0;

    color:#123f73;

    font-weight:600;

}


.ri-contador{

    text-align:right;

    color:#777;

    font-size:12px;

}

.ri-tratamiento{

    margin-bottom:30px;

}


.ri-check-container{

    display:flex;

    flex-direction:column;

    gap:15px;

}


.ri-checkbox{

    display:flex;

    align-items:flex-start;

    gap:10px;

    color:#555;

    font-size:14px;

    cursor:pointer;

}


.ri-checkbox input{

    margin-top:4px;

    width:18px;

    height:18px;

}


.ri-checkbox span{

    line-height:1.5;

}

.ri-boton-container{

    margin-top:25px;

    text-align:center;

}


.ri-btn-radicar{

    width:80%;

    background:#013AA1;

    color:white;

    border:none;

    border-radius:5px;

    padding:14px;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}


.ri-btn-radicar:hover{

    background:#013AA1;

}


.ri-btn-icono{

    margin-right:10px;

}


.ri-seguridad{

    margin-top:10px;

    color:#777;

    font-size:12px;

}

/* SIDEBAR */

.ri-sidebar-wrapper{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.ri-sidebar-section{

    margin-top:18px;

}



.ri-sidebar-card{

    background:#ffffff;
    border-radius:16px;
    padding:25px;
    border:1px solid #edf0f5;
    box-shadow:
    0 8px 25px rgb(27 90 238 / 20%);

}

.ri-payment-card {
    background:#ffffff;
    border-radius:16px;
    padding:25px;
    border: 2px solid #013AA1;
    background: linear-gradient(145deg, #ffffff, #fff7ef);
    box-shadow: 0 8px 25px rgb(27 90 238 / 20%);
}



.ri-sidebar-header{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:15px;

}



.ri-sidebar-header h3{

    margin:0;

    color:#123f73;

    font-size:20px;

}



.ri-sidebar-icon{

    font-size:30px;

}



.ri-sidebar-card h4{

    color:#123f73;

    font-size:16px;

    margin-bottom:15px;

}



.ri-sidebar-list{

    padding-left:20px;
    padding-bottom: 10px;
    margin:0;

}

.display-type {
    display: flex;
    align-items: center;
    gap: 10px;
}

.title-type {
    display: flex;
    align-items: center;
    margin: 0 !important;
    font-weight: 700;
    color: #123f73;
}

.text-side {
    font-size: 13px;
    font-weight: 700;
    color: #123f73;
}


.phone-text{

    color:#123f73;
    font-size:13px;
    font-weight:600;

}

.subtitle {
    display: flex;
    align-items: center;
    margin: 0 !important;
    font-weight: 700;
    color: #123f73;
}

.ri-contact-item{

    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:8px;

}

.ri-sidebar-button{

    display:block;
    text-align:center;
    border:1px solid #013AA1;
    color:#013AA1;
    padding:10px;
    border-radius:8px;
    font-weight:600;
    margin-top:15px;

}

/* CARD PAGOS */

.ri-payment-button{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:12px 15px;

    margin-top:15px;

    border:1px solid #013AA1;

    border-radius:8px;

    color:#013AA1;

    font-weight:600;

    text-decoration:none;

}



.ri-payment-button:hover{

    background:#fff7ef;

}



/* UBICACION */

.ri-sidebar-location{

    display:flex;
    gap:12px;
    align-items:flex-start;
    margin-bottom: 15px;

}



.ri-sidebar-location p{

    margin:0;

}



/* AYUDA */

.ri-help-title{

    color:#123F73;

    font-size:18px;

}



.ri-help-button{

    display:block;

    border:1px solid #E2E8F0;

    border-radius:8px;

    padding:10px;

    margin-top:10px;

    color:#123F73;

    text-decoration:none;

}



/* SEGURIDAD */

.ri-security-card{

    background:#F8FBFF;

}


.ri-security-card p{

    margin:0;

}

.whatsApp {
    color: #25D366 !important;
}

.ri-paz-title{

    color:#013AA1 !important;

}


.phone-icon{

    color:#013AA1;

}


.ri-payment-box{

    border:1px solid #013AA1;

    border-radius:10px;

    padding:15px;

    text-align:center;

    margin-top:15px;

}


.ri-payment-title{

    display:flex;

    justify-content:center;

    gap:8px;

    color:#123F73;

}


.ri-payment-box h2{

    color:#013AA1;

    margin:10px 0;

    font-size:28px;

}


.ri-payment-methods{

    color:#123F73;

    font-weight:600;

}


.ri-info-card{

    background:#F8FBFF;

}

.orange-text {
    color: #013AA1;
    font-weight: 700;
}

.ri-error{

    border-color:#dc2626 !important;

    background:#fff5f5 !important;

}


.ri-error-text{

    color:#dc2626 !important;
    font-size:12px;
    margin-top:5px;

}


/*Cuerpo del modal*/

/* The overlay (background) */
.modal-overlay {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 999;
}

/* Show the modal */
.modal-overlay.show {
  display: block;
}

/* The modal box */
.modal-box {
  background: white;
  width: 90%;
  max-width: 400px;
  margin: 100px auto;
  padding: 20px;
  border-radius: 10px;
  position: relative;
}

/* Close button */
.modal-close {
  position: absolute;
  right: 12px;
  top: 8px;
  font-size: 24px;
  border: none;
  background: none;
  cursor: pointer;
}

/*MODAL INFORMACI�0�7N*/
.modal-informacion {
        width: 92%;
        max-width: 420px;
        background: #ffffff;
        border-radius: 12px;
        padding: 18px;
        box-sizing: border-box;
        font-family: Arial, Helvetica, sans-serif;
        max-height: 80vh;
        overflow-y: auto;
    } /*
========================= HEADER ========================= */
    .info-header {
        text-align: center;
        margin-bottom: 18px;
    }
    .info-main-icon {
        width: 58px;
        height: 58px;
        margin: 0 auto 10px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #edf4ff;
        border: 1px solid #d4e4ff;
    }
    .info-main-icon svg {
        width: 36px;
        height: 36px;
        fill: #0646c8;
    }
    .info-header h2 {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
        color: #072c80;
    }
    .info-header h3 {
        margin: 6px 0 8px;
        font-size: 14px;
        font-weight: 400;
        color: #16224a;
    }
    .info-header-line {
        width: 35px;
        height: 2px;
        margin: auto;
        background: #0a54c9;
    } /* ========================= CARDS
========================= */
    .info-card {
        border: 1px solid #cbdcf5;
        border-radius: 8px;
        padding: 14px;
        margin-bottom: 16px;
        background: #f0f6ff;
    }
    .info-row {
        display: flex;
        align-items: flex-start;
        gap: 14px;
    }
    .info-icon {
        width: 28px;
        min-width: 28px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .info-icon svg {
        width: 26px;
        height: 26px;
        display: block;
        fill: #0751c9;
        flex-shrink: 0;
    } /* ========================= TEXTO DE
CARDS ========================= */
    .info-row-content {
        flex: 1;
        min-width: 0;
    }
    .info-row-content strong {
        display: block;
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.45;
        color: #083b9e;
    }
    .info-row-content span {
        display: block;
        margin-bottom: 5px;
        font-size: 12px;
        color: #242424;
    }
    .info-row-content b {
        display: block;
        font-size: 13px;
        color: #092d89;
    }
    .info-row-content p {
        margin: 10px 0 0;
        font-size: 12px;
        line-height: 1.6;
        color: #222222;
    } /*
========================= DIVISOR ========================= */
    .info-divider {
        height: 1px;
        margin: 14px 0;
        border-top: 1px dashed #d2d2d2;
    } /*
========================= FOOTER ========================= */
    .info-footer-card {
        display: flex;
        align-items: center;
        gap: 14px;
        background: #f0f6ff;
    }
    .info-footer-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #edf5ff;
        border: 1px solid #d8e7fb;
    }
    .info-footer-icon svg {
        width: 28px;
        height: 28px;
        fill: #0751c9;
    }
    .info-footer-text {
        flex: 1;
    }
    .info-footer-text p {
        margin: 0 0 9px;
        font-size: 11px;
        line-height: 1.4;
        color: #262626;
    }
    .info-footer-text strong {
        display: block;
        font-size: 13px;
        color: #0751c9;
    } /*
========================= BOT�0�7N ========================= */
    .info-home-button {
        width: 100%;
        height: 46px;
        border: none;
        border-radius: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        background: #064fd4;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
        transition:
            background 0.2s ease,
            transform 0.15s ease;
    }
    .info-home-button:hover {
        background: #043fae;
    }
    .info-home-button:active {
        transform: scale(0.98);
    }
    .info-home-button svg {
        width: 22px;
        height: 22px;
        fill: #ffffff;
    } /*
========================= RESPONSIVE ========================= */
    @media (max-width: 480px) {
        .modal-informacion {
            width: 95%;
            padding: 15px;
        }
        .info-header h2 {
            font-size: 16px;
        }
        .info-header h3 {
            font-size: 13px;
        }
        .info-card {
            padding: 12px;
        }
        .info-row {
            gap: 10px;
        }
    }
    
    /*PAZ Y SALVO*/
/*========================= HEADER ========================= */
    .paz-salvo-header {
        text-align: center;
        margin-bottom: 18px;
    }
    .paz-salvo-main-icon {
        width: 58px;
        height: 58px;
        margin: 0 auto 10px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #efffed;
        border: 1px solid #efffed;
    }
    .paz-salvo-main-icon svg {
        width: 36px;
        height: 36px;
        fill: #164a17;
    }
    .paz-salvo-header h2 {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
        color: #005c27;
    }
    .paz-salvo-header h3 {
        margin: 6px 0 8px;
        font-size: 14px;
        font-weight: 400;
        color: #164a17;
    }
    .paz-salvo-header-line {
        width: 35px;
        height: 2px;
        margin: auto;
        background: #005c27;
    } /* ========================= CARDS
========================= */
    .paz-salvo-card {
        border: 1px solid #cef5cb;
        border-radius: 8px;
        padding: 14px;
        margin-bottom: 16px;
        background: #f1fff0;
    }
    .paz-salvo-row {
        display: flex;
        align-items: flex-start;
        gap: 14px;
    }
    .paz-salvo-icon {
        width: 28px;
        min-width: 28px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .paz-salvo-icon svg {
        width: 26px;
        height: 26px;
        display: block;
        fill: #005c27;
        flex-shrink: 0;
    } /* ========================= TEXTO DE
CARDS ========================= */
    .paz-salvo-row-content {
        flex: 1;
        min-width: 0;
    }
    .paz-salvo-row-content strong {
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.45;
        color: #005c27;
    }
    .paz-salvo-row-content span {
        display: block;
        margin-bottom: 5px;
        font-size: 12px;
        color: #242424;
    }
    .paz-salvo-row-content b {
        display: block;
        font-size: 13px;
    }
    .paz-salvo-row-content p {
        margin: 0;
        font-size: 12px;
        line-height: 1.6;
        color: #222222;
    } /*
========================= DIVISOR ========================= */
    .paz-salvo-divider {
        height: 1px;
        margin: 14px 0;
        border-top: 1px dashed #d2d2d2;
    } /*
========================= FOOTER ========================= */
    .paz-salvo-footer-card {
        display: flex;
        align-items: center;
        gap: 14px;
        background: #f1fff0;
    }
    .paz-salvo-footer-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #edf5ff;
        border: 1px solid #d8e7fb;
    }
    .paz-salvo-footer-icon svg {
        width: 28px;
        height: 28px;
        fill: #005c27;
    }
    .paz-salvo-footer-text {
        flex: 1;
    }
    .paz-salvo-footer-text p {
        margin: 0 0 9px;
        font-size: 11px;
        line-height: 1.4;
        color: #262626;
    }
    .paz-salvo-footer-text strong {
        display: block;
        font-size: 13px;
        color: #005c27;
    } /*
========================= BOT�0�7N ========================= */
    .paz-salvo-home-button {
        width: 100%;
        height: 46px;
        border: none;
        border-radius: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        background: #005c27;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
        transition:
            background 0.2s ease,
            transform 0.15s ease;
    }
    .paz-salvo-home-button:hover {
        background: #005c27;
    }
    .paz-salvo-home-button:active {
        transform: scale(0.98);
    }
    .paz-salvo-home-button svg {
        width: 22px;
        height: 22px;
        fill: #ffffff;
    } /*
========================= RESPONSIVE ========================= */
    @media (max-width: 480px) {
        .modal-informacion {
            width: 95%;
            padding: 15px;
        }
        .paz-salvo-header h2 {
            font-size: 16px;
        }
        .paz-salvo-header h3 {
            font-size: 13px;
        }
        .paz-salvo-card {
            padding: 12px;
        }
        .paz-salvo-row {
            gap: 10px;
        }
    }
    
    /* PQRSF */
/*
========================= HEADER ========================= */
    .pqrsf-header {
        text-align: center;
        margin-bottom: 18px;
    }
    .pqrsf-main-icon {
        width: 58px;
        height: 58px;
        margin: 0 auto 10px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #f8edff;
        border: 1px solid #f8edff;
    }
    .pqrsf-main-icon svg {
        width: 36px;
        height: 36px;
        fill: #7B349C;
    }
    .pqrsf-header h2 {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
        color: #7B349C;
    }
    .pqrsf-header h3 {
        margin: 6px 0 8px;
        font-size: 14px;
        font-weight: 400;
        color: #16224a;
    }
    .pqrsf-header-line {
        width: 35px;
        height: 2px;
        margin: auto;
        background: #7B349C;
    } /* ========================= CARDS
========================= */
    .pqrsf-card {
        border: 1px solid #d8cbf5;
        border-radius: 8px;
        padding: 14px;
        margin-bottom: 16px;
        background: #f0f0f0;
    }
    .pqrsf-row {
        display: flex;
        align-items: flex-start;
        gap: 14px;
    }
    .pqrsf-icon {
        width: 28px;
        min-width: 28px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .pqrsf-icon svg {
        width: 26px;
        height: 26px;
        display: block;
        fill: #7B349C;
        flex-shrink: 0;
    } /* ========================= TEXTO DE
CARDS ========================= */
    .pqrsf-row-content {
        flex: 1;
        min-width: 0;
    }
    .pqrsf-row-content strong {
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.45;
        color: #7B349C;
    }
    .pqrsf-row-content span {
        display: block;
        margin-bottom: 5px;
        font-size: 12px;
        color: #242424;
    }
    .pqrsf-row-content b {
        display: block;
        font-size: 13px;
    }
    .pqrsf-row-content p {
        margin: 0;
        font-size: 12px;
        line-height: 1.6;
        color: #222222;
    } /*
========================= DIVISOR ========================= */
    .pqrsf-divider {
        height: 1px;
        margin: 14px 0;
        border-top: 1px dashed #d2d2d2;
    } /*
========================= FOOTER ========================= */
    .pqrsf-footer-card {
        display: flex;
        align-items: center;
        gap: 14px;
        background: #f0f0f0;
    }
    .pqrsf-footer-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #f8edff;
        border: 1px solid #f8edff;
    }
    .pqrsf-footer-icon svg {
        width: 28px;
        height: 28px;
        fill: #7B349C;
    }
    .pqrsf-footer-text {
        flex: 1;
    }
    .pqrsf-footer-text p {
        margin: 0 0 9px;
        font-size: 11px;
        line-height: 1.4;
        color: #262626;
    }
    .pqrsf-footer-text strong {
        display: block;
        font-size: 13px;
        color: #7B349C;
    } /*
========================= BOT�0�7N ========================= */
    .pqrsf-home-button {
        width: 100%;
        height: 46px;
        border: none;
        border-radius: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        background: #7B349C;
        color: #ffffff;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
        transition:
            background 0.2s ease,
            transform 0.15s ease;
    }
    .pqrsf-home-button:hover {
        background: #7B349C;
    }
    .pqrsf-home-button:active {
        transform: scale(0.98);
    }
    .pqrsf-home-button svg {
        width: 22px;
        height: 22px;
        fill: #ffffff;
    } /*
========================= RESPONSIVE ========================= */
    @media (max-width: 480px) {
        .modal-informacion {
            width: 95%;
            padding: 15px;
        }
        .pqrsf-header h2 {
            font-size: 16px;
        }
        .pqrsf-header h3 {
            font-size: 13px;
        }
        .pqrsf-card {
            padding: 12px;
        }
        .pqrsf-row {
            gap: 10px;
        }
    }
    
    .warning-row-content strong {
        color: #FCAF06 !important;
    }
    
    .warning-card {
        border: 1px solid #FCAF06 !important;
        background: #fff5f0 !important;
    }
    
    .warning-icon svg {
        fill: #FCAF06 !important;
    }
    
    /* =========================================
   RESPONSIVE GENERAL - FORMULARIO
========================================= */

/* Tablet */
@media (max-width: 1024px) {

    .ri-tipos {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .ri-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .ri-card {
        min-height: 200px;
        padding: 20px;
    }

    .ri-seccion {
        padding: 20px;
    }

    .ri-sidebar-card,
    .ri-payment-card {
        padding: 20px;
    }
}


/* M��vil */
@media (max-width: 768px) {

    .ri-formulario {
        padding: 8px;
    }

    .ri-titulo h2 {
        font-size: 24px;
        margin-bottom: 22px;
    }


    /* TIPOS DE SOLICITUD */

    .ri-tipos {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .ri-card {
        min-height: auto;
        padding: 18px;
        border-radius: 12px;
    }

    .ri-card h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .ri-card p {
        font-size: 14px;
        line-height: 1.5;
    }

    .ri-icono {
        font-size: 30px;
        margin-bottom: 10px;
    }

    .ri-radio {
        transform: none;
        margin: 15px auto 0;
    }


    /* SECCIONES */

    .ri-seccion {
        margin-top: 20px;
        padding: 18px;
        border-radius: 12px;
    }

    .ri-seccion-titulo {
        gap: 10px;
        margin-bottom: 18px;
    }

    .ri-seccion-titulo h2 {
        font-size: 19px;
    }

    .ri-seccion-icono {
        font-size: 24px;
    }


    /* CAMPOS */

    .ri-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .ri-full {
        grid-column: auto;
    }

    .ri-campo input,
    .ri-campo select,
    .ri-campo textarea {
        width: 100%;
        min-height: 44px;
        padding: 11px 13px;
        font-size: 14px;
    }

    .ri-campo label {
        font-size: 13px;
    }


    /* ARCHIVOS */

    .ri-upload {
        height: auto;
        min-height: 125px;
        padding: 20px 15px;
    }

    .ri-upload-icono {
        font-size: 34px;
    }

    .ri-upload p {
        font-size: 14px;
        word-break: break-word;
    }

    .ri-upload small {
        font-size: 12px;
    }


    /* CHECKBOX */

    .ri-checkbox {
        font-size: 13px;
        gap: 8px;
    }

    .ri-checkbox input {
        width: 18px;
        height: 18px;
        min-width: 18px;
    }


    /* BOT�0�7N RADICAR */

    .ri-boton-container {
        margin-top: 20px;
    }

    .ri-btn-radicar {
        width: 100%;
        padding: 14px 12px;
        font-size: 15px;
    }


    /* SIDEBAR */

    .ri-sidebar-wrapper {
        gap: 12px;
    }

    .ri-sidebar-card,
    .ri-payment-card {
        padding: 18px;
        border-radius: 12px;
    }

    .ri-sidebar-header {
        gap: 10px;
    }

    .ri-sidebar-header h3 {
        font-size: 18px;
    }

    .ri-sidebar-card h4 {
        font-size: 15px;
    }

    .ri-sidebar-list {
        padding-left: 18px;
    }

    .display-type,
    .ri-contact-item,
    .ri-sidebar-location {
        align-items: flex-start;
    }

    .title-type,
    .subtitle,
    .text-side,
    .phone-text {
        font-size: 13px;
        line-height: 1.45;
    }

    .ri-sidebar-button,
    .ri-payment-button,
    .ri-help-button {
        width: 100%;
        box-sizing: border-box;
    }

    .ri-payment-button {
        gap: 10px;
        flex-wrap: wrap;
    }

    .ri-payment-box h2 {
        font-size: 24px;
    }
}


/* Celulares peque�0�9os */
@media (max-width: 480px) {

    .ri-formulario {
        padding: 5px;
    }

    .ri-titulo h2 {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .ri-card {
        padding: 15px;
    }

    .ri-card h3 {
        font-size: 17px;
    }

    .ri-card p {
        font-size: 13px;
    }

    .ri-seccion {
        padding: 14px;
        margin-top: 16px;
    }

    .ri-seccion-titulo {
        align-items: flex-start;
        margin-bottom: 15px;
    }

    .ri-seccion-titulo h2 {
        font-size: 17px;
        line-height: 1.3;
    }

    .ri-campo input,
    .ri-campo select,
    .ri-campo textarea {
        padding: 10px 12px;
        font-size: 16px;
    }

    /*
       16px evita que Safari iPhone haga zoom
       autom��tico al enfocar un input.
    */

    .ri-upload {
        min-height: 110px;
        padding: 16px 10px;
    }

    .ri-upload p {
        font-size: 13px;
    }

    .ri-checkbox {
        font-size: 12px;
    }

    .ri-sidebar-card,
    .ri-payment-card {
        padding: 14px;
    }

    .ri-sidebar-header h3 {
        font-size: 16px;
    }

    .ri-sidebar-icon {
        font-size: 25px;
    }

    .ri-payment-box {
        padding: 12px;
    }

    .ri-payment-box h2 {
        font-size: 21px;
    }

    .ri-btn-radicar {
        font-size: 14px;
    }
}