@font-face  { font-family: 'rsi-Poppins-Bold'; src: url('../fonts/rsi-Poppins-Bold.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-BoldItalic'; src: url('../fonts/rsi-Poppins-BoldItalic.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-ExtraBold'; src: url('../fonts/rsi-Poppins-ExtraBold.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-Italic'; src: url('../fonts/rsi-Poppins-Italic.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-Light'; src: url('../fonts/rsi-Poppins-Light.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-Medium'; src: url('../fonts/rsi-Poppins-Medium.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-Regular'; src: url('../fonts/rsi-Poppins-Regular.ttf') format('truetype'); }
@font-face  { font-family: 'rsi-Poppins-SemiBold'; src: url('../fonts/rsi-Poppins-SemiBold.ttf') format('truetype'); }

html, body                                  { font-family: 'rsi-Poppins-Regular'; font-size: 18px; color: #414141; }
body.rsi-invisible                          { overflow: hidden; }
body.rsi-invisible main                     { opacity: 0.25; }
h3                                          { font-family: 'rsi-Poppins-Bold'; font-size: 18px; margin-bottom: 15px; }
figcaption                                  { font-family: 'rsi-Poppins-Light'; font-size: 12px; padding-top: 5px; text-align: right; color: #212121; background-color: #EFEFEF; padding-right: 25px; }
section.container-fluid.py-4                { padding-left: 45px; padding-right: 45px; }

header.rsi-fixed                            { position: fixed; left: 0; top: 0; width: 100%; height: 110px; z-index: 1; background-color: #ffffff; padding-bottom: 8px; }
header.rsi-fixed::after                     { content:""; position: absolute; bottom: 0; left: 0; width: 100%; height: 8px; background: rgb(0,157,226); background: linear-gradient(90deg, rgba(0,157,226,1) 11%, rgba(0,135,53,0.69) 42%, rgba(24,68,135,1) 78%, rgba(203,24,35,1) 97%); }
header ul                                   { margin-bottom: 0; }
header li                                   { font-family: 'rsi-Poppins-Medium'; font-size: 24px; color: #1E438A; list-style: none; display: inline-block; margin-right: 39px; margin-bottom: 0; }
header li:last-child                        { margin-right: 0; }
header li a                                 { color: #1E438A; text-decoration: none; }
header li a.rsi-active                      { font-family: 'rsi-Poppins-Bold'; }
header li a:hover                           { text-decoration: underline; }

main.rsi-fixed                              { margin: 110px 40px; }
main nav.rsi-breadC ul                      { padding: 15px 0 20px; }
main nav.rsi-breadC li                      { font-family: 'rsi-Poppins-Bold'; font-size: 17px; list-style: none; display: inline-block; color: #5B5A5A; }
main nav.rsi-breadC li:first-child::after   { content: "\002D"; margin-right: 9px; margin-left: 9px; }
main nav.rsi-breadC li a                    { font-family: 'rsi-Poppins-Medium'; color: #5B5A5A; text-decoration: none; }
main nav.rsi-breadC li a:hover              { text-decoration: underline; }
main nav.rsi-breadC li:last-child a         { font-family: 'rsi-Poppins-Bold'; color: #1066B1; }
main h1                                     { font-family: 'rsi-Poppins-Bold'; font-size: 26px; color: #1066B1; margin-bottom: 40px; }
main.rsi-fixed h1::after                    { content: "\007C"; margin-left: 18px; color: #1066B1; }
main.rsi-fixed h1::before                   { content: "\007C"; margin-right: 18px; color: #1066B1; }

footer                                      { font-family: 'rsi-Poppins-Regular'; font-size: 15px; padding: 40px 20px 10px; text-align: center; background-color: #F5F5F5; }
footer ul                                   { margin-bottom: 5px; padding: 0; }
footer li                                   { list-style: none; display: inline-block; }
footer li::before                           { content: "\007C"; margin-right: 12px; margin-left: 12px; }
footer li a:has(> img)                      { margin-left: 15px; }
footer li a                                 { font-family: 'rsi-Poppins-SemiBold'; text-decoration: none; color: #1E438A; font-size: 16px; }
footer li a:hover                           { text-decoration: underline; }
footer .rsi-policy                          { display: inline-block; margin-top: 25px; margin-left: 15px; }
footer .rsi-policy li:first-child::before   { content: none; }
footer .rsi-policy li a                     { font-family: 'rsi-Poppins-Medium'; color: #1066B1; font-size: 15px; }
footer a.rsi-newW                           { padding-right: 20px; display: inline-table; }
footer a.rsi-newW:hover                     { background-image: url('../img/rsi_newWindow.svg'); background-repeat: no-repeat; background-position: right top; width: 40px; height: 40px; }

#rsi-burger                                 { position: fixed; right: 0; top: 17px; border-radius: 8px 0px 0px 8px; background: url(../img/rsi_hamburguesa.png) #F5F5F7 22px center no-repeat; width: 87px; height: 70px; cursor: pointer; z-index: 9; }
#rsi-burger:hover                           { background-image: url('../img/rsi_hamburguesah.png'); background-color: #6B96CF; }
#rsi-menu                                   { background-color: #F5F5F7; width: 225px; position: absolute; right: -375px; overflow: hidden; top: -15px; cursor: default; }
#rsi-menu ul                                { list-style: none; padding: 25px 30px; }
#rsi-menu li                                { font-family: "rsi-Poppins-Regular"; font-size: 15px; letter-spacing: 1.6px; display: block; text-decoration: none; color: #303555; display: inline-flex; padding-top: 5px; align-items: center; cursor: pointer; width: 100%; font-weight: bold; }
#rsi-menu li a                              { text-decoration: none; color: unset; font-weight: normal; }
#rsi-menu p                                 { margin-bottom: 0; }
#rsi-menu .rsi-active > p                   { text-decoration: underline;  color: #184487; }
#rsi-menu li:hover p                        { text-decoration: underline; color: #184487; cursor: pointer; }
#rsi-close                                  { position: absolute; left: -87px; top: 7%; border-radius: 8px 0px 0px 8px; background: url(../img/rsi_close.png) #F5F5F7 22px center no-repeat; width: 87px; height: 70px; cursor: pointer; }
#rsi-close:hover                            { background-image: url('../img/rsi_closeh.png'); background-color: #6B96CF; }
.rsi-scroll                                 { position: fixed; right: 15px; bottom: 15px; z-index: 9; }
.rsi-scroll a                               { display: block; margin-top: 15px; }
.rsi-scroll a.rsi-inactive                  { opacity: 0.25; cursor: default; }

.rsi-home                                   { height: 100vh; object-fit: cover; background: url(../img/rsi_home.jpg) center/cover no-repeat; }
.rsi-home .logo-home                        { width: min(30vw, 36vh); max-width: 273px; margin: 2vh 0 4vh; }
.rsi-home .rsi-labels h1                    { font-family: 'rsi-Poppins-ExtraBold'; text-align: right; font-size: 48px; color: #fff; white-space: nowrap; padding: 8px 50px; text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5); background: rgb(0,157,226); background: linear-gradient(90deg, rgba(0,157,226,1) 11%, rgba(0,135,53,1) 42%, rgba(24,68,135,1) 78%, rgba(203,24,35,1) 97%); margin-bottom: 0; }
.rsi-home .rsi-labels span                  { font-family: 'rsi-Poppins-BoldItalic'; display: block; text-align: right; font-size: 28px; color: #333; white-space: nowrap; padding: 0px 50px; text-shadow: 1px 1px 3px rgba(99, 99, 99, 1); background-color: rgb(255,255,255,0.7); }
.rsi-home .rsi-labels .rsi-p p              { font-family: 'rsi-Poppins-Medium'; text-align: right; font-size: 22px; margin-top: 10vh; color: #fff; padding: 0px 40px; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); }
.rsi-home .rsi-logos                        { position: absolute; bottom: 0; width: 100%; }
.rsi-home .rsi-logos .row                   { padding-bottom: 10px; }
.rsi-home .rsi-logos img                    { max-width: 80%; }
.rsi-home img.rsi-white                     { filter: brightness(0) invert(1); }
.rsi-home header                            { background: linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 1)); }
.rsi-home nav li                            { padding-left: 22px; padding-bottom: 3px; }
.rsi-home h2                                { font-family: 'rsi-Poppins-ExtraBold'; font-size: 24px; color: #ffffff; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); padding: 40px 40px 0 40px; }
.rsi-home p                                 { font-family: 'rsi-Poppins-Medium'; font-size: 18px; color: #ffffff; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); padding: 0 40px; }
.rsi-home-news h3                           { font-family: 'rsi-Poppins-Bold'; font-size: 26px; color: #1066B1; margin: 60px 40px 40px; }                            
.rsi-home-news h3::after                    { content: "\007C"; margin-left: 18px; color: #1066B1; }
.rsi-home-news h3::before                   { content: "\007C"; margin-right: 18px; color: #1066B1; }
.rsi-home-news li                           { font-family: 'rsi-Poppins-SemiBold'; font-size: 22px; margin-bottom: 30px; list-style: none; display: flex; align-items: flex-start; }
.rsi-home-news img                          { margin-right: 30px; }
.rsi-home-news div                          { display: flex; flex-direction: column; }
.rsi-home-news a                            { color: #414141; text-decoration: none; }
.rsi-home-news a:hover                      { text-decoration: underline; }
.rsi-home-news span                         { display: block; color: #757575; white-space: nowrap; font-size: 19px; }

main .rsi-titles li                         { font-family: 'rsi-Poppins-SemiBold'; font-size: 22px; color: #414141; position: relative; padding-bottom: 12px; width: max-content; margin-bottom: 0; }
h2.rsi-ourcapabilities                      { font-family: 'rsi-Poppins-Bold'; font-size: 18px; margin-bottom: 15px; }
.rsi-capabilities ul                        { padding: 20px 10px 30px 50px; width: 100%; background: url(../img/rsi_bordeinf.png) #efefef repeat-x left bottom; }
.rsi-capabilities li                        { margin: 8px 0; }
#rsi-allcapabilities h3                     { font-family: 'rsi-Poppins-Bold'; font-size: 16px; background-color: #009de2; display: flex; align-items: center; padding: 8px; color: #fff; border-top-left-radius: 5px; border-top-right-radius: 5px; margin-bottom: 0; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); }
#rsi-allcapabilities h3 > img               { margin: 0 14px 0 6px;  }

.rsi-experience .rsi-separator              { height: 2px; margin: 0; background: rgb(0,157,226); background: linear-gradient(90deg, rgba(0,157,226,1) 11%, rgba(0,135,53,0.69) 42%, rgba(24,68,135,1) 78%, rgba(203,24,35,1) 97%); }
.rsi-experience img                         { max-width: 100%; height: auto; width: 100%; border: 1px solid #dddddd; }
.rsi-experience h2                          { font-family: 'rsi-Poppins-Bold'; font-size: 21px; background-color: #009de2; display: flex; align-items: center; min-height: 60px; padding-left: 25px; color: #fff; border-top-left-radius: 5px; border-top-right-radius: 5px; margin-bottom: 0; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); }
.rsi-experience div.rsi-block               { padding: 20px 25px; background: url(../img/rsi_bordeinf.png) #efefef repeat-x left bottom; }
.rsi-experience figure                      { margin-bottom: 0; }
.rsi-experience figure.rsi-mtop             { margin-top: 65px; }

.rsi-blog-tabla:first-of-type               { border-top: 1px solid #8b8a8a; }
.rsi-blog-tabla                             { padding: 12px 15px; font-family: 'rsi-Poppins-SemiBold'; font-size: 19px; color: #414141; border-bottom: 1px solid #8b8a8a; }
.rsi-blog-tabla a                           { color: #009DE2; background-image: url('../img/rsi_ver.png'); background-repeat: no-repeat; background-position: left center; padding-left: 40px; text-decoration: none; }
.rsi-blog-tabla a:hover                     { text-decoration: underline; }
.rsi-blog-tabla .rsi-fecha                  { color: #757575; white-space: nowrap; }

article h2                                  { font-family: 'rsi-Poppins-SemiBold'; font-size: 28px; text-align: center; background: none; }
article h2::after                           { content: none; }
article .rsi-fecha                          { font-family: 'rsi-Poppins-SemiBold'; color: #757575; text-align: center; margin: 40px 0; }
article svg                                 { padding-right: 6px; }

.rsi-about figure                           { display: flex; height: 90px; align-items: center; }
.rsi-about figure img                       { padding-left: 24px; width: auto; max-height: 50px; }
.rsi-about figure img.rsi-setec             { max-height: 80px; }
.rsi-about a                                { text-decoration: underline; }
.rsi-about > div > ul                       { list-style-type: none; padding: 0; }

.rsi-contact label                          { margin-top: 25px; }
.rsi-contact button                         { background-color: #009de2; border-color: #009de2; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.6); }
.rsi-contact button:hover                   { background-color: #008636; border-color: #008636; }
.rsi-contact .rsi-ok                        { display: block; color: #008000; margin-top: 15px; }
.rsi-contact .rsi-error                     { display: block; color: #cc0000; margin-top: 15px; }
.rsi-contact small                          { font-size: 11px; margin-left: 12px; }
.rsi-contact .rsi-messages                  { height: 50px; }

#rsi-bannerCookie                           { position: fixed; bottom: 0; left: 0; width: 100%; background-color: #f1f1f1; padding: 15px; color: #000; border-top: 1px solid #ccc; }
#rsi-bannerCookie a                         { font-weight: bold; color: #0000ff; }
#rsi-bannerCookie button                    { padding-left: 25px; padding-right: 25px; }
.modal .modal-header                        { height: 40px; color: #fff; background: linear-gradient(90deg, rgba(0,157,226,1) 11%, rgba(0,135,53,1) 42%, rgba(24,68,135,1) 78%, rgba(203,24,35,1) 97%); text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); }
.modal span                                 { font-weight: bold; }

@media (max-width: 1199px) {
    header li                               { font-size: 20px; margin-right: 29px; }
}

@media (max-width: 991px) {
    body, input, textarea                   { font-size: 16px !important; }
    header li                               { font-size: 16px; margin-right: 16px; }
    .rsi-capabilities li                    { margin: 3px 0; }
    .rsi-home .rsi-labels h1                { font-size: 40px; }
    .rsi-experience div.rsi-block           { background-image: none; }
}

@media (max-width: 767px) {
    .rsi-home .rsi-labels h1                { font-size: 30px; }
    .rsi-home .rsi-labels span              { font-size: 24px; }
    .rsi-home h2                            { font-size: 20px; }
    .rsi-home p                             { font-size: 16px; }
}

@media (max-width: 575px) {
    body, input, textarea                   { font-size: 14px !important; }
    section.container-fluid.py-4            { padding-left: 10px; padding-right: 10px; }
    h2                                      { font-size: 14px; padding-left: 10px; }
    h2::before                              { right: 0; }
    .rsi-home .rsi-labels h1                { font-size: 18px; }
    .rsi-home .rsi-labels span              { font-size: 16px; }
    .rsi-home .rsi-labels .rsi-p p          { font-size: 16px; }
    .rsi-experience h3                      { font-size: 16px; }
    .rsi-home .logo-home                    { width: min(50vw, 36vh); }
    .rsi-home h2                            { font-size: 18px; }
    .rsi-home p                             { font-size: 14px; }
}