@import url(/menus/_b/fonts/ineicons/ineicons.css);
:root {
    --color1-150: #DDEEEC;
    --color1-125: #89BEBA;
    --color1-100: #666;
    --color1-090: #335B55;
    --color1-080: #203C37;
    --color1-075: #172B28;
    --color2-bg: #C8102E;
    --color2-text: #C8102E;
    --color3-bg: #e2e7f5;
    --color4-bg: #F4E7E1;
    --color5-bg: #F5E2E6;
    --text-color: #000000;
    --bg-color: #ffffff;
    --border-light: #cccccc
}
html                        { font-size: 16px; }
body                        { background-color: var(--bg-color); font-family: Arial, Helvetica, sans-serif; padding: 0 !important; margin: 0 !important; font-size: 14px; display: flex; flex-flow: column nowrap; min-height: 100vh; overflow-x: hidden; min-width: 320px; }
body *                      { box-sizing: border-box; }
body > *                    { padding: 10px; line-height: 1.5rem; }
body > header > section     { margin: 15px 0; display: flex; flex-flow: row nowrap; gap: 10px; }
body > header > section > * { flex: 1 1 auto; color: var(--text-color); }
body > header > section a   { color: var(--text-color); }

@media screen and (max-width: 639px) {
	body > header > section            { flex-flow: column nowrap; margin: 0; }
}

/* ESTILOS GENERALES PARA ELEMENTOS */
main                            { max-width: 1280px; margin: 0 auto; width: 100%; }
main a[target]::after           { content: "\e903"; font-family: 'INEIcons'; padding-left: 4px; font-weight: 400; text-decoration: none; display: inline-block; }
main h1                         { /* border: 1px solid var(--color1-125); */ /* padding: 4px 10px; */ margin: 0.5rem 1.5rem 1.5rem 0; color: var(--color2-text); }
/*main h1 + #ph1                { margin-bottom: 1.5rem; }*/
header h2                         { /* border: 1px solid var(--color1-125); */ /* padding: 4px 10px; */ margin: 0.5rem 1.5rem 1.5rem 0; color: var(--color2-text); }
/*main h1 + #ph1                { margin-bottom: 1.5rem; }*/
a,
a.w                             { color: var(--color2-bg); font-family: inherit; padding: 0; }
a.w:link,
a.w:active,
a.w:hover,
a.w:visited                     { font-size: 0.9rem; font-weight: 400; }
dl                              { display: grid; grid-template-columns: auto 1fr; line-height: 1.5rem; }
h1, h2, h3, h4, h5              { margin-top: 1em; margin-bottom: 0.0em; padding: 0; } 
h1                              { font-size: 1.30rem; font-weight: bold; }
h2                              { font-size: 1.20rem; font-weight: bold; margin: 0; /*color: #9E1834;*/ }
h3                              { font-size: 1.1rem; font-weight: bold; }
h1 ~ h2, h2 ~ h2                { margin-top: 1.5rem; }
h2 ~ h3, h3 ~ h3                { margin-top: 1rem; }
img                             { border: none; height: auto; }
input, select                   { font-size: 1em; }
input:focus,
select:focus                    { border: 2px solid #323452; background: #eaeaea; }
p                               { margin-top: 0.5rem; margin-bottom: 0.5rem; }
ul, ol                          { list-style: none; margin: 0; padding: 0; }
time                            { color: var(--text-color); }

input[type="button"], button, a.btn         { background: var(--color1-100); color: var(--bg-color); border: 1px solid var(--color1-100); cursor: pointer; min-height: 36px; min-width: 36px; font-weight: 600; padding: 0 10px; margin: 10px 0; }
input[type="button"] + input[type="button"],
button + input[type="button"],
input[type="button"] + button,
button + button,
a.btn + a.btn                               { margin-left: 5px; }
input[type="button"].secondary,
button.secondary                            { background-color: var(--color2-bg); color: var(--bg-color); }
input[type="button"].cancel,
button.cancel                               { background-color: var(--bg-color); color: var(--text-color); border: 1px solid var(--text-color); }
input[type="button"].lighting,
button.lighting                             { background-color: var(--color1-150); color: var(--text-color); border: 1px solid var(--color1-125); }
.btn-rounded button, 
button.btn-rounded                          { border-radius: 100%; }

input[type="button"]:hover, button:hover,
input[type="button"]:focus, button:focus
a.btn:hover, a.btn:focus                    { background: var(--color1-150); color: var(--text-color); box-shadow: 0 0 0px 1px var(--bg-color) inset; }
input[type="button"].lighting:hover, 
input[type="button"].lighting:focus, 
button.lighting:hover, button.lighting:focus,
input[type="button"].secondary:hover, 
input[type="button"].secondary:focus, 
button.secondary:hover, button.secondary:focus,
input[type="button"].cancel:hover, 
input[type="button"].cancel:focus, 
button.cancel:hover, button.cancel:focus    { background: var(--color1-100); color: var(--bg-color); border: 1px solid var(--color1-080); box-shadow: 0 0 0px 1px var(--bg-color) inset; }

a.btn                                       { background: var(--color1-150); color: var(--text-color); border: 1px solid rgba(0,0,0,0.2); text-align: center; width: auto; display: table !important; line-height: 32px; height: auto !important; margin: 1rem auto; position: relative; padding-right: 32px; }
a.btn::before                               { content: "\f0da"; font-family: 'INEIcons' !important; width: 32px; position: absolute; right: 0; top: 0; }

.showing-menu                   { overflow: hidden; }

.cuerpo_resaltado_titulo_normal a { /*color: var(--color1-080);*/ /*font-weight: 600;*/ background: #ffffff80; padding: 2px 4px; }

body > header,
body > nav:not(.fixed)          { max-width: 1280px; margin: 0 auto; width: 100%; padding: 0; }
body > header                   { padding: 0 0 0 10px; }
main > .banner                  { margin: -10px; }

@media screen and (max-width: 639px) {
    body > header               { padding: 10px; }
}

/* ESTILOS GENERALES PARA CLASES */
.hidden, [hidden]           { display: none !important; }

.left                       { text-align: left; }
.right                      { text-align: right; }
.center                     { text-align: center; }
.bg-warning                 { background: rgba(255, 204, 153, 0.3); border: 1px solid rgba(0,0,0,0.1); }
.bg-error                   { background: rgba(167, 3, 50, 0.1); border: 1px solid rgba(0,0,0,0.1); }
.mt-15                          { margin-top: 15px; }
.mt-25                          { margin-top: 25px; }
.mb-15                          { margin-bottom: 15px; }
.mb-25                          { margin-bottom: 25px; }

nav a:hover,
.NAVtag a:hover,
.nav a:hover                { border-bottom: 0px !important; text-decoration: none; }
/*.botonBarra                 { font: bold 0.9rem Arial,sans-serif; color: var(--text-color); background: transparent; border: 0 none; cursor: pointer; position: relative; margin: 0; padding: 0 5px; line-height: 32px; top: -32px; width: auto; border-radius: 0; }
.botonBarra + .botonBarra   { border-left: 1px solid rgba(0,0,0,0.1); }*/
.lineaMenu                  { padding: 10px 0px 5px 0px; }
.lineaFormNoJava            { width: 100%; margin: auto; padding: 0px 0px 10px 5px; display: block !important; }
.lineaFormNoJava2           { border: 1px  solid var(--color1-150); width: 100%; margin: auto; padding: 0px 5px 5px 5px; }
.etiquetaJavaBold           { font: bold 1rem Arial,sans-serif; }
.negrita                    { font-weight: bold; }
.general                    { width: 100%; font: 1em Arial, sans-serif; padding: 0px 0px 0px 0px; margin: 0px; border: 0px; float: left; }
.classdivBusq               { border: 1px  solid var(--color1-150); float: left; font: bold 1em Arial,sans-serif; margin: 5px 5px 5px 0px; padding: 5px; width: 100%; }
.TituloH1Ini                { padding: 10px 0px 10px 5px; margin: 0px 0px 0px 0px; border: 1px  solid var(--color1-150); background-color: var(--color1-150); font-weight: bold; width: 100%; }

/* LOGO INE */
.ImagenLogoIne                  { display: flex; flex-flow: row nowrap; align-items: flex-end; gap: 15px; }
.ImagenLogoIne > a              {  padding-left: 0; }
.ImagenLogoIne > a > img        { height: 70px; width:  width: 242px; }
.ImagenLogoIne > .tituloLogo    { font-size: 34px; color: var(--color2-bg); margin: 0; padding: 0; font-weight: 400; line-height: 32px; position: relative; top: 1px; }

/* ESTILOS PARA MENU-IDIOMA Y BUSCADOR */
.Menu_idioma                            { height: 50%; text-align: right; }
.Menu_idioma ul                         { display: flex; flex-flow: row nowrap; gap: 0; justify-content: flex-end; align-items: flex-start; }
.Menu_searchString                      { text-decoration: none; background: White; padding: 0 5px; vertical-align: bottom; width: calc(100% - 36px); height: 36px; border: 1px solid var(--text-color); box-sizing: border-box; margin: 0; }
#Menu_cabeceraBuscador > button         { background: var(--color2-bg); color: white; box-sizing: border-box; width: 36px; height: 36px; position: relative; top: 0px; left: 0; margin: 0 0 0 -5px; border: 1px solid var(--text-color); line-height: 34px; padding: 0; }
#Menu_cabeceraBuscador > button::before { content: "\e91d"; cursor: pointer; position: absolute; left: 0; top: 0; width: 100%; height: 100%; font-family: "INEIcons"; font-weight: 900; font-size: 24px; text-align: center; padding: 0; }
#Menu_cabeceraBuscador > button:hover, 
#Menu_cabeceraBuscador > button:focus   { box-shadow: 0 0 0 1px var(--bg-color) inset; background: var(--color1-100); }

.Menu_cabeceraIdioma .language          { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; gap: 0; margin-bottom: 5px; }

#comboIdioma                            { text-decoration: none; background: transparent; padding: 1px 1px 1px 1px; border: 1px solid var(--border-light); margin: 0px; box-shadow: none; height: 34px; }
#comboIdioma:hover,
#comboIdioma:focus 					    { box-shadow: 0 0 1px 0px var(--color1-100) inset, 0 0 0px 2px var(--color1-100); }
#comboIdioma + button                   { min-height: 34px; background: transparent; border: 1px solid var(--border-light); color: var(--text-color); margin: 0 1px 0 -1px; }
#comboIdioma + button:hover,
#comboIdioma + button:focus             { box-shadow: 0 0 0 1px var(--bg-color) inset; background: var(--color1-100); color: var(--bg-color); }

@media screen and (max-width: 800px) {
    .Menu_idioma                        { padding-top: 10px; }
    .ImagenLogoIne > a > img            { width: 100%; min-width: auto; }
    .ImagenLogoIne > a                  { padding-left: 0; }
    body > header > section > .MenuDch  { display: flex; flex-flow: column nowrap; gap: 10px } 
}

/* ESTILOS PARA EL MENÚ PRINCIPAL */
.main-menu                                                { padding: 0; margin-left: 0px; background: var(--color1-100) !important; border: none; border-radius: 0; display: flex; flex-flow: row nowrap; position: sticky; top: 0; height: 38px; z-index: 9; font-size: 1.0rem; }
.main-menu > div                                          { display: flex; flex-flow: row nowrap; /* justify-content: stretch; */ /* align-items: stretch; */ width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 10px 0 12px; }
.main-menu > div > .toggleBtn                             { flex: 1 1 auto; }
.main-menu > div > .toggleBtn a                           { color: var(--bg-color); font-size: 32px; height: 34px; display: inline-block; line-height: inherit; position: relative; top: 2px; text-decoration: none; }
.main-menu > div > .toggleBtn a i                         { pointer-events: none; color: var(--bg-color); }
.main-menu > div > .toggleBtn a img                       { pointer-events: none; height: 26px; position: absolute; top: 4px; left: 44px; display: none; }
.main-menu.fixed > div > .toggleBtn a img                 { display: inline-block; }
.main-menu > div > ul                                     { display: flex; flex-flow: row wrap; gap: 10px; padding-left: 0; margin-bottom: 0; }
.main-menu > div > ul li                                  { position: relative; }
.main-menu > div > ul li a                                { line-height: 38px; text-decoration: none; color: var(--bg-color); display: block; padding: 0 10px; }
.main-menu > div > ul li a:hover,
.main-menu > div > ul li a:focus                          { background: var(--bg-color); color: var(--color1-100); outline: none; }
.main-menu > div > ul li ul                               { display: none; }
.main-menu > div > ul li a.active                         { background: var(--bg-color); color: var(--color1-100); }
.main-menu > div > ul .dropdown > a                       { padding: 0 0 0 8px; }
.main-menu > div > ul .dropdown a.active .ii              { background: var(--color1-100); color: var(--bg-color); }
.main-menu > div > ul .dropdown .active + ul              { display: block; position: absolute; right: 0; top: 36px; width: 13.2rem; height: auto; background: var(--color1-100); white-space: nowrap; padding: 0 0 10px; }
.main-menu > div > ul .dropdown .active + ul a i          { font-size: 21px; float: right; position: relative; top: 6px; color: var(--bg-color); }
.main-menu > div > ul .dropdown .active + ul a *          { pointer-events: none; }
.main-menu > div > ul .dropdown .active + ul a:hover i,
.main-menu > div > ul .dropdown .active + ul a:focus i    { background: var(--bg-color); color: var(--color1-100);  }
.main-menu > div .ii-share                                { top: 2px; font-size: 17px; display: inline-block; position: relative; background: var(--bg-color); border-radius: 100px; width: 26px; height: 26px; color: var(--color1-100); padding: 0; line-height: 28px; text-align: center; }
.main-menu > div .ii-share:before                         { position: relative; top: -1px; left: -1px; }
.main-menu > div .ii-twitter-x                            { width: 1.56rem; }
.main-menu > div .ii.ii-mail                              { font-size: 27px !important; left: 3px; }

@media screen and (max-width: 639px) {
    .main-menu > div a.tit                        { display: none; }
}

/* ESTILOS PARA LAS OPCIONES LATERALES DEL MENÚ PRINCIPAL */
#sidebarCollapse                                        { padding: 0px; border-width: 0px; }
#sidebarCollapse:hover,
#sidebarCollapse:focus,
#sidebarCollapse:active                                 { background: var(--bg-color); color: var(--color1-100); box-shadow: 0px -1px 0 3px var(--bg-color); outline: none; }
#sidebarCollapse:hover i,
#sidebarCollapse:focus i,
#sidebarCollapse:active i                               { background: var(--bg-color); color: var(--color1-100); }
#sidebar                                                { background: var(--color1-100) !important; padding-left: 7px; padding-right: 0; min-width: 290px; max-width: 290px; width: 100%; position: fixed; top: 0px; left: -320px; height: 100%; z-index: 99999; color: var(--bg-color); transition: all 0.5s; overflow-y: auto; }
#sidebar::before                                        { content: ""; width: 0; /*transition: width 0.3s ease; transition-property: width, opacity; transition-delay: 0.35s;*/ }
#sidebar.active::before                                 { background: rgba(222, 232, 228, 0.7); position: fixed; left: 290px; top: 0; width: 100%; height: 100%; z-index: -1; opacity: 1; }
#sidebar .titulo h1                                     { display: inline-block; font-size: 0px; line-height: 0px; margin: 0px; }
#sidebar .titulo h1 > a > span                          { text-indent: -1000px; display: inline-block; font-size: 0px; line-height: 0px; }
#sidebar .intellimenu > li                              { border-top: 1px solid rgba(255, 255, 255, 0.2); border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
#sidebar .intellimenu > li:last-child                   { border-top: 1px solid rgba(255, 255, 255, 0.2); border-bottom: 0 none; padding-bottom: 20px; }
#sidebar .intellimenu > li:first-child > div            { display: inline-block; height: 40px; line-height: 40px; }
#sidebar .intellimenu > li:first-child > div:last-child { float: right; }
#sidebar .intellimenu > li:first-child > div a          { margin: 2px 8px; padding: 0; height: 40px; }
#sidebar .intellimenu > li:first-child > div a:hover    { outline: 2px solid var(--bg-color) !important; outline-offset: 0 !important; box-shadow: 0 0 0 2px var(--color1-100); }
#sidebar.active                                         { left: 0; }
#sidebar .sidebar-header                                { padding: 20px; background: var(--color1-150); color: black; }
#sidebar ul.components                                  { padding: 0px; border-bottom: 0px; }
#sidebar ul.components li                               { border-bottom: 1px solid var(--bg-color); padding-left: 0px; margin-left: 5px; margin-right: 5px }
#sidebar ul.components li:last-child                    { border-bottom: 0px; }
#sidebar ul.components li ul li                         { margin: 0px; }
#sidebar ul.margen_sup40 a                              { padding: 3px 5px; }
#sidebar ul.margen_sup40 li.link-font09 a               { padding: 0px; font-size: 0.9em; }
#sidebar ul p                                           { padding: 10px 10px 10px 0px; font-size: 1.1em; display: block; }
#sidebar a                                              { display: block; color: var(--bg-color); z-index: 1; text-decoration: none; }
#sidebar .sideBarIdioma a                               { min-height: 35px; }
#sidebar .Menu_cabeceraIdiomaEstatico > ul > li,
#sidebar .Menu_cabeceraIdioma > ul > li                 { text-align: center; }
#sidebar .sideBarIdioma a                               { background-image: url(/menus/_b/img/idiomaIco.gif); background-position: left center; background-repeat: no-repeat; border-radius: 5px; height: 35px; min-width: 40px; margin: 0px; display: inline-block; vertical-align: middle; padding-left: 40px; }
#sidebar .sideBarIdioma a:hover > span                  { background-image: url(/menus/_b/img/idiomaIcoH.gif); background-position: calc(100% - 3px) center; background-repeat: no-repeat; }
#sidebar-menu                                           { display: block !important; max-width: 290px; height: auto; margin-left: -7px; }
#sidebar-menu li span:not(.collapsed)                   { background: var(--bg-color); color: var(--text-color); } 
#sidebar-menu > li > ul                                 { background: rgba(0, 0, 0, 0.2); }
#sidebar-menu > li > ul > li > ul                       { background: rgba(0, 0, 0, 0.4); }
#sidebar-menu > li > ul > li > ul > li > ul             { background: rgba(0, 0, 0, 0.6); }
#sidebar-menu span::after                               { top: 1.4rem;}

#sidebar-menu.intellimenu li > a:hover,
#sidebar-menu.intellimenu li > span:hover               { background: var(--bg-color) !important; color: var(--text-color) !important; }
#sidebar .footer                                        { text-align: center; margin-top: 25px; }
#sidebar .footer div                                    { padding: 4px 8px; background: var(--bg-color); color: var(--text-color); line-height: 24px; }
#sidebar .footer ul                                     { margin-top: 25px; }
#sidebar .footer > p                                    { padding: 0; margin: 0; text-align: left; }
#sidebar .footer > p:last-child                         { margin-bottom: 2rem; }
#sidebar hr                                             { border-top: 1px solid rgba(255, 255, 255, 0.8); border-bottom: 0 none; margin-bottom: 2rem; margin-top: -1px; }
#sidebar .ii-home,
#sidebar .ii-times                                      { font-size: 36px; color: var(--bg-color); }

.ocultar                                                { width: 1px; height: 1px; overflow: hidden; display: block; }

/* CUSTOM SCROLL */
/*
@-moz-document url-prefix()                             { 
    #sidebar { scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.25) rgba(0, 0, 0, 0.0); border-right: 3px solid #457e75; }
}
#sidebar::-webkit-scrollbar                             { width: 8px; }
#sidebar::-webkit-scrollbar-track                       { background: rgba(0, 0, 0, 0.0); }
#sidebar::-webkit-scrollbar-thumb                       { border-radius: 0; box-shadow: -2px 0 0 2px #457e75 inset; background: rgba(255, 255, 255, 0.25); }
#sidebar::-webkit-scrollbar-thumb:hover                 { background: rgba(255, 255, 255, 0.50); }
*/
/* ESTILOS PARA LAS OPCIONES DE CAMBIO DE TAMAÑO DE LETRA*/
.fontsize	 						{ position: relative; min-width: 36px; display: inline-block; line-height: 32px; font-size: 16px; margin: 0 -1px; border: 1px solid var(--border-light); border-right: 0 none; }
.fontsize.last                      { border-right: 1px solid var(--border-light);}
.fontsize .ii-font:before 			{ position: relative; left: -5px; top: 0; }
.fontsize .ii-font.plus::after 		{ content: "+"; position: absolute; top: -2px; right: 6px; }
.fontsize .ii-font.minus::after		{ content: "-"; position: absolute; top: -4px; right: 8px; }
.fontsize .ii-font.restore::after	{ content: "\f013"; position: absolute; top: 4px; right: 6px; font-size: 10px; }
.fontsize + .bordeL.idioma 			{ display: inline-block; margin-left: 10px; }
.fontsize a, .fontsize a i          { text-align: center; color: var(--text-color); display: table-cell; width: 36px; height: 32px; position: relative; vertical-align: middle; text-decoration: none; position: relative; top: 0px; }
.fontsize a:hover,
.fontsize a:focus,
.fontsize a:active					{ box-shadow: 0 0 1px 0px var(--color1-100) inset, 0 0 0px 2px var(--color1-100); width: 100%; display: block; text-align: right; border-radius: 0px; color: var(--bg-color); }

/* ESTILOS PARA CABECERAFRANJA, TIMER Y MIGA DE PAN */
#cabeceraFranja                     { background-color: transparent /*var(--color1-150)*/; border-bottom: 1px solid var(--color1-150); clear: both; margin: 0; padding: 0; line-height: 1.5rem; font-weight: bolder; display: flex; flex-flow: row nowrap; max-width: 1280px; width: 100%; margin: 0 auto; }
#cabeceraFranja *                   { padding: 0; }
#cabeceraFranja > div               { flex: 1 1 auto; /*max-width: calc(100% - 100px);*/ display: flex; flex-flow: column nowrap; gap: 0; }
#cabeceraFranja > div > .Sup        { border-bottom: 1px solid rgba(255,255,255,1); }
/*#cabeceraFranja > div > .Inf        { border-top: 1px solid rgba(137, 190, 186, 0.5); }*/
#cabeceraFranja > div > .Inf ul, 
#cabeceraFranja > div > .Inf ul li  { display: inline-block; }
#cabeceraFranja > div > .Inf button,
#cabeceraFranja > div > .Inf a,
#cabeceraFranja > div > .Inf p      { margin: 0; padding: 0 10px; }
/*#cabeceraFranja > div > .Sup,
#cabeceraFranja > div > .Inf,
#cabeceraFranja > div > #servertime { border-bottom: 1px solid rgba(0,0,0,0.1); }*/
#cabeceraFranja > div > .Sup:not(:empty),
#cabeceraFranja > div > .Inf:not(:empty),
#cabeceraFranja > div > #servertime:not(:empty) { padding: 4px 12px; /*border-bottom: 1px solid rgba(255,255,255,1);*/ }
#cabeceraFranja > div + div         { /*flex: 0 1 auto;*/ /*min-width: 100px;*/ position: absolute; right: 0; }
#cabeceraFranja a,
#cabeceraFranja a:visited,
#cabeceraFranja a:link,
#cabeceraFranja a:active,
#cabeceraFranja a:focus             { font-weight: normal; text-decoration: none; color: var(--text-color);	}
#cabeceraFranja a:hover             { text-decoration: underline; }
#cabeceraFranja span                { font-weight: normal; text-decoration: none; color: var(--text-color);	padding: 0; font-size: 0.8rem; }

/* ESTILOS PIE DE PÁGINA */
body > footer                       { text-decoration: none; font-size: 0.90rem; background: var(--color1-100); color: var(--bg-color); padding: 5px 5px 0; outline: none; margin: auto 0 0 0; position: relative; clear: both; text-align: center; border-top: 2px solid var(--color1-100); }
body > footer a                     { min-width: 44px; min-height: 24px; padding: 0 5px; line-height: 24px; display: inline-block; height: 100%; }
body > footer a:active,
body > footer a:focus,
body > footer a:hover,
body > footer a:link,
body > footer a:visited             { text-decoration: none; color: var(--bg-color); position: relative; }
body > footer ul                    { margin-top: 5px; margin-bottom: 5px; display: flex; gap: 0; flex-flow: row wrap; justify-content: center; align-items: center; }
body > footer ul li                 { border-left: 1px solid rgba(0,0,0,0.1); padding: 0 8px; }
body > footer li + li               { border-right: 1px solid rgba(255,255,255,0.1); }
body > footer li:first-child        { border-left: 0 none; border-right: 1px solid rgba(255,255,255,0.1); }
body > footer li:last-child         { border-right: 0 none; }
body > footer a                     { min-height: 36px; line-height: 36px; }
body > footer .ii                   { color: var(--bg-color); font-size: 26px; position: relative; top: 6px; }
body > footer .copyright            { flex: 100%; text-align: center; }
body > footer .copyright p          { margin: 0; }
body > footer .copyright a          { min-height: 44px; line-height: 44px; margin: 0; padding: 0; }
@media screen and (max-width: 768px){
    body > footer a                 { min-height: 44px; line-height: 44px; }
}

@media screen and (max-width: 640px){
    body > footer ul li                 { flex: 1 1 50%; }
    body > footer ul li:nth-child(2n)   { border-right: 0 none; }
    body > footer ul li:nth-child(2n+1) { border-left: 0 none; }
}

@media screen and (max-width: 480px){
    body > footer ul li                 { flex: 1 1 100%; border: 0 none; }
    body > footer ul li:nth-child(2n+1) { border-right: 0 none; }
}

#cuerpo, .cuerpo                { display: flex; flex-flow: row nowrap; justify-content: flex-start; align-items: flex-start; padding-top: 20px; }
.cuerpo_principal               { padding: 0; flex: 1 1 65%; }
.cuerpo_principal h2            { margin: 0; }
.cuerpo_lateral                 { padding: 0; flex: 1 1 25%; }
.cuerpo_lateral a               { min-height: 36px; line-height: 36px; display: block; }
.cuerpo_resaltado_titulo        { width: 100%; padding: 4px 8px; margin: 0px; border: 1px solid rgba(0,0,0,0.2); background-color: var(--color1-150); font-weight: bold; }
.cuerpo_lateral_borde           { border: 1px  solid rgba(0,0,0,0.2); border-top: 0 none; width: 100%; padding: 0.6em; margin: 0em 0em 0em 0em; }
.cuerpo_resaltado_titulo_normal { width: 100%; padding: 4px 8px; margin: 1rem 0; border: 1px  solid var(--color1-150); background-color: var(--color1-150); font-weight: normal; }
.cuerpo_texto_borde             { border: 1px  solid var(--color1-150); padding: 0.6em; }
.lista_no_vi_no_sang            { margin-left: 0px; }
.marco 							{ border: 2px solid var(--color1-125); padding: 0.6em; margin: 1rem 0rem;}

/* ESTILOS PARA MIGAS */
ul.miga                         { margin: 0; padding: 0; white-space: nowrap; width: max-content; font-size: 0.9rem; display: block; width: 100%; }
ul.miga > li                    { font-weight: normal; margin: 0px; padding: 0; white-space: nowrap; max-width: none; overflow: auto; text-overflow: inherit; display: block; float: left; }
ul.miga > li::before            { content: "/"; padding: 0px 5px; display: inline-block; }
ul.miga > li:first-child::before{ content:none; }
ul.miga > li.medio              { max-width: 10em; overflow: hidden; text-overflow: ellipsis; display: inline-block; }
ul.miga > li.medio:last-child   { max-width: none ; }
ul.miga > li.title              { max-width: none ; white-space: inherit; }
ul.miga > li > h1               { margin: 0px; padding: 0px; font-weight: bold; font-size: inherit; display: inline; }
ul.miga a, ul.miga h1           { color: #323452; text-decoration: none; display: inline; }

/* ESTILOS PARA TOOLTIPS */
.tooltip                          { position: inherit; z-index: 1070; display: inline-block; margin: 0px 3px; padding: 0; font-style: normal; font-weight: 400; line-height: 1.5; text-align: left; text-align: start; text-decoration: none; text-shadow: none; text-transform: none; letter-spacing: normal; word-break: normal; word-spacing: normal; white-space: normal; line-break: auto; font-size: .875rem; word-wrap: break-word; opacity: 1; }
.tooltip .texto                   { text-decoration: underline; cursor: pointer; }
.tooltip:hover > .tooltip-content,
.tooltip:focus > .tooltip-content { display:inline; }
.tooltip:hover + .tooltip-content,
.tooltip:focus + .tooltip-content { display:inline-table; }
.tooltip-content:hover            { display:inline; }
.tooltip-content                  { display: none; z-index: 99999; background-color: var(--color1-150); margin: 0px; border: 1px solid var(--color1-100); border-bottom-right-radius: 10px; border-bottom-left-radius: 10px; border-top-right-radius: 10px; border-top-left-radius: 10px; position: absolute; padding: 10px; min-width: 10rem!Important; max-width: 50%; font-size: inherit; font-weight: normal; }

/* ESTILOS PARA CAJAS */
.cajas 			{ margin: 0px; max-width: 25% }
div.caja		{ border: 2px solid var(--color1-090); padding: 1em;}
div.caja .titulo{ color: var(--text-color); font-weight: bold; margin: 0px; border-bottom: 2px solid var(--color1-090);}
div.caja .texto { margin: 0px; padding: 0.5em 0.5em 0em 0.5em;}
@media screen and (max-width: 850px) {
	.cajas 		{ min-width: 100%; margin: 1rem 0rem; }
}

@keyframes animatetop { from {top:-300px; opacity:0} to {top:0; opacity:1} }

@media screen and (max-width: 639px) {
    #cuerpo, .cuerpo            { flex-flow: column nowrap; }
    .cuerpo_lateral             { margin-top: 1.5rem; }
}

/* Estilos para paginas de tramites */
article.cat_1254734727589 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254734727589.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254734735501 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254734735501.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1259951200909 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1259951200909.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254735166926 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254735166926.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254735167300 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254735167300.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254735167152 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254735167152.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254735165102 {
    background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)),url(/menus/img/categoria_1254735165102.svg);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 15%;
}

article.cat_1254734727589 > div > ul:is(.secciones, .subSecc),
article.cat_1254734735501 > div > ul:is(.secciones, .subSecc),
article.cat_1259951200909 > div > ul:is(.secciones, .subSecc),
article.cat_1254735166926 > div > ul:is(.secciones, .subSecc),
article.cat_1254735167300 > div > ul:is(.secciones, .subSecc),
article.cat_1254735167152 > div > ul:is(.secciones, .subSecc),
article.cat_1254735165102 > div > ul:is(.secciones, .subSecc)
{
	background: none;
}

/* SUSANA (Posiblemente borrar) */
.flex	                                            { display: flex; flex-flow: row wrap ; gap: 10px; }
.flex > div a                 { color: var(--text-color); }
.flex > div				                            { flex: 1 1 calc(33.33% - 10px); /*max-width: 33%;*/ }
.flex > div .cuerpo_resaltado_titulo                { font-size: 1.1rem; padding: 0.5rem 8px; border: 0 none; background: transparent; }
.flex > div .cuerpo_lateral_borde                   { border: 0 none; background: transparent; }
.flex > div .cuerpo_lateral_borde ul                { list-style: disc; margin-left: 20px; }
.flex > div .cuerpo_resaltado_titulo a,
.flex > div .cuerpo_lateral_borde a                 { color: var(--text-color); }

/*.flex > div:nth-child(3)                            { background: var(--color3-bg); border: 1px solid rgba(0,0,0,0.2); }
.flex > div:nth-child(1)                            { background: var(--color4-bg); border: 1px solid rgba(0,0,0,0.2); }
.flex > div:nth-child(2)                            { background: var(--color1-150); border: 1px solid rgba(0,0,0,0.2); }
*/

ul.list , ol.list       { padding: 0; }
ul.list .list,
ol.list .list           { padding-left: 1.5rem; }
ul.list                 { list-style-type: disc; list-style-position:outside ; }
ol.list                 { list-style-type: decimal; list-style-position:outside  ; counter-reset: sortli; }

ol.list > li            { counter-increment: sortli; }
ol.list > li::marker    { content: counters(sortli,'.') '. '; color: var(--color1-080); font-weight: 600;}
ul.list ol.list li::marker { content: counter(sortli) '. '; }

ul.list > li, 
ol.list > li            { line-height: 1.5; padding-left: 5px;}
ul.list > li a,
ol.list > li a          { color: var(--color2-bg) !important}

/*ul.list > li::marker    {font-size: 0.9rem; color: var(--color1-080); content: "\25cf";}*/

ul:is(.list:not(.list>li .list)),
ol:is(.list:not(.list>li .list)){ padding-left: 1.1em; }

ul.list.enlaces                 { list-style: none; margin: 0; padding: 0 !important; }
ul.list.enlaces > li > a        { color: var(--color1-100);}
ul.list.enlaces > li::marker    { content: ""; }

@media screen and (max-width: 768px) {
    .flex > div				{ max-width: none; }
    .flex > div				{ flex: 1 1 auto; }
}

.white-box-link             { display: flex; flex-flow: row nowrap; align-items: center; background: var(--bg-color); margin: 10px 20px; border-radius: 4px; }
.white-box-link:first-child { margin-top: 20px; }
.white-box-link .ii         { font-size: 28px; margin: 0 2px 0 10px; }
.white-box-link a           { min-height: 44px; line-height: 36px; padding: 0 !important; margin: 0 !important; color: var(--text-color) !important; }
.white-box-link.center a    { text-align: center; width: 100%; }
.white-box-link:hover       { box-shadow: 0 0 0 1px #fff; }
.white-box-link:hover,
.white-box-link:focus,
.white-box-link:hover a,
.white-box-link:focus a,
.white-box-link a:hover,
.white-box-link a:focus     { background: var(--color1-125); }
.intellimenu .white-box-link a{ display: flex !important; align-items: center; justify-content: center; }

.language-menu                      { display: flex;gap: 10px;padding: 10px 0;align-items: center;justify-content: center;flex-flow: row nowrap;width: 100%; }
.language-menu > div                { flex: 1 1 auto; text-align: center; }
.language-menu > div:nth-child(1)   { text-align: right; flex: 64px; }
.language-menu > div:nth-child(2)   { text-align: left; }
.language-menu > div > .ii          { color: var(--bg-color); font-size: 28px; }
#sidebar .language-menu li          { display: inline-block; width: 32%; }
#sidebar .language-menu a           { padding: 0 5px; line-height: 32px; box-shadow: none; border: 0 none !important; }
#sidebar .language-menu li > a:hover, 
#sidebar .language-menu li > a:focus{ background: var(--bg-color) !important; color: var(--text-color) !important; }

/* ESTILOS SECCIÓN A MODO LISTA CON ICONO ICONOS */ 
.list.title-icon                            { margin-bottom: 0.05rem; }
.list.title-icon p:first-child              { font-weight: 600; margin: 0; }
.list.title-icon p:not(:first-child)        { margin: 0 0 0 1.9rem; }
.list.title-icon p a                        { font-weight: normal; text-decoration: none; }
.list.title-icon p a b                      { font-weight: bold; color: var(--text-color); }
.list.title-icon p a:hover,
.list.title-icon p a:focus,
.list.title-icon p a:active                 { text-decoration: underline; }
.list.title-icon + *:not(.list.title-icon)  { margin-top: 1.5rem; }

/* ESTILOS LISTA CON ICONOS EN ELEMENTOS DE TÍTULO E IMAGEN DE FONDO */
.nested-image-list                    { position: relative; border: 1px solid rgba(0,0,0,0.12); padding: 5px; }
.nested-image-list::before            { content: ""; background: url(https://cdn.pixabay.com/photo/2022/01/22/01/54/offer-6956073_640.png); width: 256px; height: 256px; display: block; position: absolute; right: 0; top: 10px; background-size: contain; background-repeat: no-repeat; z-index: -1; opacity: 0.3; filter: saturate(0.5); }
.nested-image-list > h2,
.nested-image-list > h3,
.nested-image-list > h4               { padding: 8px; }
.nested-image-list dl                 { display: block; margin: 0; padding: 0; }
.nested-image-list > ul > li          { margin-left: 2.2rem; }
.nested-image-list > ul li ul         { list-style: disc; padding: 0; margin: 0 0 0 1rem; }
.nested-image-list > ul li.cat        { margin: 0; }
.nested-image-list dl dt, 
.nested-image-list > ul .cat, 
.nested-image-list dl dd              { display: block !important; width: 100%; padding: 0; }
.nested-image-list dl dt,
.nested-image-list > ul .cat          { color: var(--color2-bg); margin-top: 1.5rem; }
.nested-image-list dl dt img,
.nested-image-list > ul .cat img      { width: 2rem; margin: 0; padding: 0; position: relative; top: 0.5rem; }
.nested-image-list dl dt h2,
.nested-image-list dl dt h3,
.nested-image-list > ul .cat h2,
.nested-image-list > ul .cat h3       { display: inline-block; font-size: 1.1rem; font-weight: 600; margin: 0;  padding: 0; }
.nested-image-list dl dt:first-child,
.nested-image-list > ul .cat:first-child  { margin-top: 0; }
.nested-image-list dl dd              { margin: 0 0 0 3.2rem; }
.nested-image-list dl dd ul           { list-style: disc; }
.nested-image-list dl dd ul > li > ul { margin-left: 1.5rem; }
.nested-image-list dl dd ul li .subcat,
.nested-image-list > ul li .subcat    { font-weight: 600; }
* + .nested-image-list                { margin-top: 1.5rem; }

@media screen and (max-width: 1023px) {
    .nested-image-list::before        { display: none; }
}

/* ESTILOS ÁRBOL */
.tree                       { position: relative; background: white; padding: 8px; font-size: 0.85rem; font-weight: 400; line-height: 1.5; color: var(--text-color); }
.tree ul                    { padding-left: 5px; list-style: none; }
.tree ul li                 { position: relative; line-height: 1.5rem; padding-left: 15px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.tree ul li:before          { position: absolute; top: 15px; left: 0; width: 10px; height: 1px; margin: auto; content: ""; background-color: #666; }
.tree ul li:after           { position: absolute; top: 0; bottom: 0; left: 0; width: 1px; height: 100%; content: ""; background-color: #666; }
.tree ul li:last-child:after{ height: 15px; }
.tree ul a                  { cursor: pointer; }

/* ESTILOS BANNER */
.banner                                                         { position: relative; max-width: 1280px; margin: -10px auto; width: 100%; padding: 0; }
.banner img                                                     { height: 160px; width: 100%; object-fit: cover; }
.banner header > *                                              { color: var(--color1-100); margin: 1em 0 0 0; font-size: 1.1rem; font-weight: 600; }
.banner .carrouselComponent                                     { --carrousel-NumElementos: 1; width: 330px; border: 0 none; border-radius: 5px; position: absolute; top: 15px; right: 15px; background: #fff; padding: 0 40px; }
.banner .carrouselComponent .carrouselButtons > *               { width: 40px; margin: 0; border-radius: 0; }
.banner .carrouselComponent .carrouselButtons > button          { justify-content: center; margin: -20px -40px; position: absolute; top: 50%; background: var(--color1-150); color: var(--text-color); border: 1px solid var(--color1-125); }
.banner .carrouselComponent .carrouselButtons > button:nth-child(2){ border-right: 0 none; }
.banner .carrouselComponent .carrouselButtons > button:nth-child(1){ border-left: 0 none; }
.banner .carrouselComponent .carrouselButtons > button:hover,
.banner .carrouselComponent .carrouselButtons > button:focus    { background: var(--color1-100); color: var(--bg-color); border: 1px solid var(--color1-080); }
.banner .carrouselComponent .carrouselButtons button:last-child { right: 40px; left: auto; }
.banner .carrouselComponent .carrouselButtons > button > i      { border-color: var(--text-color) !important; pointer-events: none; }
.banner .carrouselComponent .carrouselButtons > button:hover > i,
.banner .carrouselComponent .carrouselButtons > button:focus > i{ border-color: var(--bg-color) !important; }
.banner .carrouselComponent .carrouselGallery > *               { display: flex; flex-flow: column nowrap; overflow: hidden; justify-content: space-between; align-items: center; padding: 0 15px 15px; }
.banner .carrouselComponent .carrouselGallery > * > header + div{ max-height: calc(100% - 96px); overflow: auto; }
.banner .carrouselComponent .carrouselGallery footer a          { background: var(--color1-100); border: 1px solid var(--color1-100); padding: 5px 10px; margin: 1rem auto 0; line-height: 28px; display: table; color: var(--bg-color); text-decoration: none; }
.banner .carrouselComponent .carrouselGallery footer a:hover,
.banner .carrouselComponent .carrouselGallery footer a:focus    { background: var(--color1-150); color: var(--text-color); box-shadow: 0 0 0px 1px var(--bg-color) inset; }
body.home .banner img                                           { height: 200px; }
body:not(.home) main > .banner                                  { width: calc(100% + 20px); }

/* OTROS ESTILOS PERSONALIZADOS */
#catTramites .image-links > li > :is(a, span) > .image {height:180px; max-height: initial;}

/*Formulario de contacto*/
#polPriv + label + input[type=submit] {
	pointer-events: none;
}
#polPriv:checked + label + input[type=submit] {
    pointer-events: auto;
}

#polPriv{
	height: auto;
	vertical-align: middle;
	margin-bottom: 15px;
}

form.nCols fieldset.actions div [type="submit"] {
    display: block;
    width: auto;
    height: 30px;
    margin: 10px auto 0;
}

form.nCols fieldset.actions div{
    display: block;
	margin-top: 1em;
}

/*Página fecha y hora*/
article.date .button    { background: var(--color2-text); color: var(--bg-color); padding: 8px; border-radius: 4px; display: block; text-align: center; }
article.date            { border: 1px solid var(--color1-150); padding: 8px; display: flex; align-items: center; justify-content: center; flex-flow: column nowrap; }
article.date p          { background: rgba(0,0,0,0.06); padding: 4px 8px; border-radius: 4px; border: 1px solid rgba(0,0,0,0.1); }
@media screen and (max-width: 768px) {
	article.date .button           { padding: 10px 8px; }
}
section.iconHead img {	width: 2.5rem; margin: 0; padding: 0; position: relative; top: 0.5rem;}
section.iconHead h1 { display: inline-block; margin: 0; padding: 0;}
section.iconHead ul { padding-left: 3rem; }

/* ESTILOS PARA NEWS */
.news a                         { text-decoration: none; display: flex; flex-flow: column nowrap; align-items: flex-start; justify-content: space-between; height: 100%; }
.news a p                       { text-decoration: underline; flex: 1 1 auto; font-weight: 400; }
.news time::before              { content: attr(data-label) ":"; padding-right: 0.25rem; }

/* ESTILOS PARA CONTENIDOS */
.contents .flex > div   { flex: 1 1 calc(25% - 10px);  }
.contents a             { text-decoration: none; display: flex; flex-flow: column nowrap; align-items: flex-start; justify-content: space-between; height: 100%; }
.contents img           { width: 128px; height: 128px; object-fit: contain; margin: 0 auto; display: block; }
.contents span          { display: block; width: 100%; text-align: center; }

/* ESTILOS PARA ACCESOS DIRECTOS */
.directTo .flex > div                   { flex: 1 1 calc(25% - 10px); padding: 10px; border: 1px solid rgba(0, 0, 0, 0.2); }
.directTo .flex > div:empty             { border: 0 none; }
.directTo .flex > div:nth-child(1)      { background: var(--color3-bg); }
.directTo .flex > div:nth-child(2)      { background: var(--color4-bg); }
.directTo .flex > div:nth-child(3)      { background: var(--color5-bg); }
.directTo .flex > div:nth-child(4)      { background: var(--color2-bg); }
.directTo .flex > div:nth-child(3):empty{ background: transparent; }
.directTo .flex > div:nth-child(4):empty{ background: transparent; }
.directTo .flex > div:nth-child(4) a,
.directTo .flex > div:nth-child(4) a i  { color: var(--bg-color); }
.directTo a                             { color: var(--text-color); text-decoration: none; display: flex; flex-flow: column nowrap; align-items: flex-start; justify-content: space-between; height: 100%; position: relative; }
.directTo a i                           { position: absolute; right: 0; top: 0; border: 1px solid rgba(0,0,0,0.2); width: 44px; height: 44px; text-align: center; line-height: 44px; font-size: 32px; }
@media screen and (max-width: 640px)  {
    .directTo .flex > div               { flex: 1 1 100%; }
    .directTo .flex > div:empty         { display: none; }
}