@import url(iconos.css);
:root {
    --color1-150: #e2e7f5;
    --color1-100: #FFFFFF;
    --color1-125: #89BEBA;
    --color1-090: #335B55;
    --color1-080: #3D3D3D;
    --color1-075: #172B28;
    --color2-bg: #000000;
    --color2-text: #0D6AD5;
    --color2-icon: #942037; 
    --color4-bg: #F4E7E1;
    --color5-bg: #F5E2E6;
    --text-color: #000000;
    --bg-color: #ffffff;
    --border-light: #cccccc;
    --border-gray: #cccccc;
    --text-color-medium: #666;
    --color-focus: #558E86;
}


body                          { background-color: var(--bg-color); font-family: Arial, Helvetica, sans-serif; color: var(--text-color); padding: 0; margin: 0px;}
body *                      { box-sizing: border-box; }
body > *                    { padding: 0px 15px; line-height: 1.7rem; }
body > header,
body > nav > div         { max-width: 1280px !important; margin: 0 auto; width: 100%; padding: 0; }
body > header                   { padding: 15px 15px 0 15px; }
body > header > section     { max-width: 1280px; margin: 0px auto; padding: 0px; display: flex; flex-flow: row nowrap; gap: 10px; }
body > header > section > * { flex: 1 1 auto; color: var(--text-color); }

@media screen and (max-width: 768px) {
	body > header > section            { flex-flow: column nowrap; margin: 0; }

}

/* ESTILOS GENERALES PARA ELEMENTOS */
main, .main                           { max-width: 1280px; margin: 0 auto; width: 100%; }
main p a[href^=http][target]::after,
main p a[href^=http][target]:has(span)::after {content: inherit;}

body > section.banner           {margin-bottom: 0px;}

body > main > div > section > h2 {padding: 3rem 0rem;}

a,
a.w                             { color: var(--color2-text); font-family: inherit; padding: 0; text-decoration: none;}
a[role="button"]                { color:var(--text-color);}

a.w:link,
a.w:active,
a.w:hover,
a.w:visited                     { font-size: 0.9rem; font-weight: 400; }

a:focus,
[role="button"]:focus,
[tabindex="0"]:focus,
button:focus, input:focus, textarea:focus, select:focus  {display: inline-block; text-decoration:none; border-color: var(--bg-color);  outline: 2px solid var(--color-focus);box-shadow: 0 0 0 2px var(--bg-color); }



a:hover:not(.main-menu *):not([tabindex="-1"]), 
[role="button"]:hover:not(.main-menu *):not([tabindex="-1"]), 
[tabindex="0"]:hover:not(.main-menu *):not([tabindex="-1"]), 
button:hover:not(.main-menu *):not([tabindex="-1"]), 
input:hover:not(.main-menu *):not([tabindex="-1"]), 
textarea:hover:not(.main-menu *):not([tabindex="-1"]), 
select:hover:not(.main-menu *):not([tabindex="-1"]) {
    text-decoration: underline 1px solid var(--border-gray) ! Important;
}

dl                              { display: grid; grid-template-columns: auto 1fr; line-height: 1.5rem; }

#p_873 h2,#p_873 h3,#p_873 h4,#p_873 h5{ --colorAlt:var(--color2-text); --color:var(--text-color);}

h1, h2, h3, h4, h5              {--color:var(--text-color); --colorAlt:var(--text-color);}
h1, h2, h3, h4, h5              { padding: 1rem 0rem; margin: 0px; line-height: initial;}
 
h1                              { font-size: 1.80rem; font-weight: bold; color: var(--color);}


h2                              { font-size: 1.60rem; font-weight: bold; color: var(--colorAlt);
                                    position: relative; display: block; max-width: fit-content;}
h2::after                       { content: ''; display: block; width: 3rem; height: 3px; background-color: currentColor; position: absolute; bottom: -5px; left: 0;}


h3                              { font-size: 1.4rem; font-weight: bold;}
h4                              { font-size: 1.2rem; font-weight: bold; color: var(--colorAlt);}
h5                              { font-size: 1.1rem; font-weight: bold; color: var(--color);}

h1                              { margin: 2.5rem 0rem 1rem 0rem;}
h2                              { margin: 2.5rem 0rem 1rem 0rem;}
h1 ~ h2, h2 ~ h2                { margin-top: 1.5rem; }
h2 ~ h3, h3 ~ h3                { margin-top: 1rem; }

img                             { border: none; height: auto; }
p                               { margin-top: 0.5rem; margin-bottom: 0.5rem; }
ul, ol                          { list-style: none; margin: 0; padding: 0; }

input[type="button"], button                { background: var(--color1-100); color: var(text-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[disabled], button:disabled                { background: var(--bg-disabled) !important; color: var(--c-disabled) !important; border-color: var(--bc-disabled) !important;}
input[type="button"] + input[type="button"],
button + input[type="button"],
input[type="button"] + button,
button + button                             { margin-left: 5px; }
input[type="button"].secondary,
button.secondary                            { background-color: var(--text-color); color: var(--text-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%; }

.showing-menu                   { overflow: hidden; }

/* ESTILOS GENERALES PARA CLASES */
.hidden, [hidden]           { display: none !important; }
.sr-only                    { border: 0; clip: rect(0,0,0,0); width: 1px; height: 1px; visibility: hidden; margin: -1px; overflow: hidden; padding: 0!important; position: absolute!important; background-color: initial; color:initial;}

.left                       { text-align: left; }
.right                      { text-align: right; }
.centrado                     { 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); }

.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; line-height: initial;}
.ImagenLogoIne > a > img{ width: 200px;}
.ImagenLogoIne > .tituloLogo     { font-size: 2.3rem; color: var(--color2-bg); margin: 0; padding: 0; font-weight: 400; line-height: 2.3rem; position: relative; top: 1px; }

/* ESTILOS PARA MENU-IDIOMA Y BUSCADOR */
body > header > section .Menu_idioma             { text-align: right; }
body > header > section .Menu_idioma ul          { display: flex; flex-flow: row nowrap; gap: 10px; justify-content: flex-end; align-items: center; }
body > header > section .MenuDch                 { display: flex; flex-direction: column; justify-content: space-between; align-items: stretch;gap: 10px;}

.Menu_cabeceraIdioma .language          { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; gap: 0;}

#comboIdioma                            { text-decoration: none; background-color: var(--bg-color); padding: 1px 1px 1px 1px; border: 1px solid var(--text-color); margin: 0px; box-shadow: none; height: 36px; }
#comboIdioma:hover,
#comboIdioma:focus 					    { box-shadow: 0 0 1px 0px var(--color1-100) inset, 0 0 0px 2px var(--color1-100); }
#comboIdioma + button                   { background-color: var(--bg-color); border: 1px solid var(--text-color); 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: 650px) {
    .ImagenLogoIne > a                  { padding-left: 0; }
    .ImagenLogoIne > a                  { padding-left: 0; }

    body > header > section > .MenuDch  {  flex-direction: row} 
    body > header > section             {flex-flow: column nowrap; }
    body > header > section > .MenuDch > .capa_Menu_cabeceraBuscador { order :1;flex-grow: 1;}
    body > header > section > .MenuDch > .Menu_idioma { order :2;}
    body > header > section > .MenuDch > .Menu_idioma li.fontsize {display : none}
}

@media screen and (max-width: 450px) {
    .ImagenLogoIne > .tituloLogo        { font-size: 1rem; line-height: 1rem; margin-bottom: 6px; }
}

/* ESTILOS PARA EL MENÚ PRINCIPAL */


.main-menu   {z-index:9; top:0;}
.customBar > .group > .content > ul {display: flex; justify-content: right;}
.customBar > .group > .content a {display: block; color: var(--text-color) !important; font-weight: bold; border: 0; padding: 0.5rem;}
.customBar > .group > .content a { border-right: 1px solid var(--color1-150); }
.customBar > .group > .content > ul > li:last-child > a { border-right: 0; }
.customBar > .group > .content a.activo { background: #D3D3D3;}
.customBar > .group > nav > ul > li > a {color: var(--color2-text); border-left: 1px solid var(--color1-150);}

.customBar.fixed-top:not(.cbMiga), 
.customBar.fixed { position: sticky; top: 0 !important; left: 0; right: auto; bottom: auto;}

.customBar.cbMiga    { max-width: 1280px !important; margin: 0 auto; width: 100%;}
.customBar.cbMiga >div:first-child > nav.cbMigaTitle > ul > li >button {min-height: auto; margin: 0px;}
.customBar.cbMiga > .group > nav > ul > li > a {color: var(--text-color);}

@media screen and (max-width: 640px) {
    .customBar .right {justify-content: left;}
    .customBar .group > button {margin: 0;}
    .customBar > .group > .content > a {display: block;}
    .customBar.open > .group.open > .content {top: 38px;}
    .customBar.open > .group.open > button + .content {text-align: left;}
    .customBar > .group > .content > ul { display: block; }
}



.ocultar                                                { width: 1px; height: 1px; overflow: hidden; display: block; }

/* 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; }
.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;  }

/* ESTILOS PIE DE PÁGINA */
body > footer                       { text-decoration: none; font-size: 0.90rem; background-color: #D3D3D3; padding: 0; outline: none; margin: 4rem 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(--text-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 .ii                   { 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; }
body > footer .cse                  { background-color: #1d1d1b; width: 100%; padding: 1.5em 1em 1em 1em; color: var(--bg-color); font-weight: bold; display: flex; align-items: center; justify-content: center; gap: 1em;}
body > footer .cse img              { height: 38px; } 
body > footer .cse span             { font-size: 1.5rem; border-left: 2px solid #2c2c2c; padding-left: 1em;}
body > footer .footer               { padding: 1rem;}

@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; }
    #shareBtn>.tit                      { display:none;}
}


.btn-primaryinverse, .btn-secondaryinverse {background-color: #ddeeec; border: 1px solid; border-color: var(--color1-100); color: var(--text-color) ! Important;
    line-height: 1.5; border-radius: .25rem; padding: .375rem .75rem; margin: .25rem; cursor: pointer; display: inline-block; }


#avisoCookies                                       { position: fixed; z-index: 9999; bottom: 0; right: 0; left: 0; min-height:6em; background-color: var(--color1-100); border: #DDEEEC 1px solid; border-radius: 25px 25px 0px 0px; padding-top: 10px; color:var(--bg-color); }
#avisoCookies div                                   {  max-width: 1280px; margin: auto; display: flex; flex-flow: row nowrap; align-items: center; justify-content: left; gap: 10px; padding: 0 15px; }
#avisoCookies > div > *                             { flex: 1 1 auto; }
#avisoCookies > div > *:nth-child(2)                { display: flex; white-space: nowrap; }
#avisoCookies > div > * > a                         { color: var(--bg-color); text-decoration: none; }
#avisoCookies > div > *:first-child > a             { text-decoration: underline; }
#avisoCookies > div > * > a > i                     { line-height: 1.5; margin-left: 0.25rem; }
#avisoCookies .icoInfoCircle                        { height: 1.5rem; margin: 0 0.5rem 0.5rem; }

@media screen and (max-width: 680px){
    #avisoCookies div                               { flex-flow: row wrap; }
    #avisoCookies > div > *:first-child             { display: block; margin-top: 0px; }
    #avisoCookies > div > *:nth-child(2)            { justify-content: center; margin: 0 0 15px 0; }
}    

#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; }
h1.cuerpo_resaltado_titulo,
h2.cuerpo_resaltado_titulo,
h3.cuerpo_resaltado_titulo      {border : none}
.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;}
.margen_sup0 {margin-top: 0;}

/* 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% }
.caja		{ border: 2px solid var(--color1-090); padding: 1em;}
.caja .titulo{ color: var(--text-color); font-weight: bold; margin: 0px; border-bottom: 2px solid var(--color1-090);}
.caja .texto { margin: 0px; padding: 0.5em 0.5em 0em 0.5em;}

.caja .texto ul {column-count: 2;}

@media screen and (max-width: 850px) {
	.cajas 		{ min-width: 100%; margin: 1rem 0rem; }
    .caja .texto ul {column-count: 1;}
}

@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; }
}

.flex	                                            { display: flex; flex-flow: row wrap ; gap: 10px; }
.flex > div				                            { flex: 1 1 calc(50% - 10px); /*max-width: 33%;*/ }

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(--text-color); 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-text) !important}

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; justify-content: center;}
.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: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; }

/* 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; }
.list.title-icon p a b                      { font-weight: bold; color: var(--text-color); }
.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: 25px; }
.nested-image-list::before            { content: "";  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: 3.5rem; }
.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(--text-color); 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: 0px 0px 0px 1rem; }
.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 */
main > .banner          { margin: 0 -10px 2rem -10px;}
.banner                 { position: relative; background-repeat: no-repeat; background-position: bottom right; background-size: cover; min-height: 359px; display: flex; flex-direction: column; justify-content: flex-end; padding: 0px;}
.banner > .main                                                 {display: flex; flex-direction: row; align-content: stretch; align-items: center; justify-content: right; padding: 60px 60px 60px 10px; column-gap: 40px;}
.banner > .main > *:last-child                                  { padding: 25px;}
.banner h1	            { color: var(--text-color); line-height: 3rem; font-weight: 600; letter-spacing: 1px; font-size: 2.5rem; padding: 0px; text-shadow: unset; 
                            background: rgba(255, 255, 255, 0.9);
                            border-radius: 4px;}
/*HOME*/
.home .banner                  {background-image: url('/es/imagenes/pleno.jpg');}
/*Ejemplos Sede de h1 en banner*/
#p_1259924591690 .banner  h1    {color: var(--text-color); text-shadow:unset;}
#p_1254734736339 .banner h1     {color: var(--text-color); text-shadow:unset; background: rgba(255, 255, 255, 0.54); box-shadow: 0 0 15px 20px rgba(255, 255, 255, 0.54); border-radius: 4px;}
 
@media (max-width: 1000px) {
    .banner > .main > *:last-child      {max-width: 300px;}     
    .banner > .main h1                  {font-size: 2rem; line-height: 2.5rem;}
}

@media (max-width: 768px) {
    .banner                                             {min-height: 125px}
    .banner > .main                                     { flex-direction: column; padding: 10px; column-gap: initial; align-items: flex-start;}
    .banner > .main > *:last-child                      { max-width: 100%; padding: 0px;}
    .banner > .main h1                                  { padding: 1rem 0px; }
    .banner .carrouselComponent                         { max-width: initial;}
    .banner .carrouselComponent .carrouselGallery > *   { height: initial;}
}


/*Quienes*/
.quienes .banner                  {background-image: url('/es/imagenes/quienes.jpg');}
/*.quienes main section:not(.banner) {margin:5%; }*/

/*Actividades*/
.actividades .banner                  {background-image: url('/es/imagenes/actividades.jpeg');}
/*.actividades main section:not(.banner) {margin:5%; }*/

/*Reuniones*/
.reuniones .banner                  {background-image: url('/es/imagenes/reuniones.jpg');}
/*.reuniones main section:not(.banner) {margin:5%; }*/

/*Pleno*/
.pleno .banner                  {background-image: url('/es/imagenes/pleno2.jpg');}
/*.reuniones main section:not(.banner) {margin:5%; }*/


/*Grupos de trabajo*/
.grupos .banner                  {background-image: url('/es/imagenes/grupos.jpg');}
/*.grupos main section:not(.banner) {margin:5%; }*/

/*Otros documentos*/
.documentos .banner                  {background-image: url('/es/imagenes/otros_documentos.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*Otros ponencias*/
.ponencias .banner                  {background-image: url('/es/imagenes/ponencias.jpeg');}
/*.ponencias main section:not(.banner) {margin:5%; }*/

/*Planificación*/
.planificacion .banner                  {background-image: url('/es/imagenes/planificacion.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*Memorias*/
.memorias .banner                  {background-image: url('/es/imagenes/memorias.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*Dictamenes*/
.dictamenes .banner                  {background-image: url('/es/imagenes/estadisticas.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*Comités*/
.comites .banner                  {background-image: url('/es/imagenes/comites.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTED*/
.CTED .banner                  {background-image: url('/es/imagenes/CTED.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTML*/
.CTML .banner                  {background-image: url('/es/imagenes/CTML.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTTUR*/
.CTTUR .banner                  {background-image: url('/es/imagenes/CTTur.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTEM*/
.CTEM .banner                  {background-image: url('/es/imagenes/CTEM.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTInm*/
.CTInm .banner                  {background-image: url('/es/imagenes/CTInm.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTStn*/
.CTStn .banner                  {background-image: url('/es/imagenes/CTStn.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*CTCV*/
.CTCV .banner                  {background-image: url('/es/imagenes/CTCV.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/

/*Ponencias2*/
.Ponencias_ .banner                  {background-image: url('/es/imagenes/ponencias_2.jpeg');}
/*.documentos main section:not(.banner) {margin:5%; }*/





/* EStilo para tablas */
table                           { padding: 0; margin: 0; border-collapse: separate; border-spacing: 2px; border-bottom: 1px solid #457e76;}
table>caption                   { background: #ddeeec; color: black; padding: 0.5em;}
table>thead>tr>th,
table>tbody>tr>th               { border: 0 none; padding: 0.5em; margin: 0; line-height: normal; }
table>thead>tr>th               {font-size: 1em; background: #457E76; color: #fff}
table>tbody>tr                  { border: 0 none; }
table>tbody>tr>td               { padding: 0.5em; margin: 0; border: 0 none; }
table>tbody.alt>tr:nth-child(2n+1)  { background: rgba(69, 126, 118, 0.1);  }
table>tbody.ladillo>tr>th  { background: #ddeeec; color: black }
/* FIN EStilo para tablas */

@media print {
    .main-menu                          {display:none;}
    body > header > section .MenuDch    {display:none;}
    .customBar.cbMiga                   {display:none!important;}
    #pieDireccion                       {display:none;}
}

/*NOTICIAS DESTACADAS*/
.carrouselComponent .carrouselGallery       { margin: 0px 50px;padding: 15px 0px;}
.carrouselComponent .carrouselGallery > * { aspect-ratio: auto; padding: 8px;}

#noticias {display: inline-block; width: 100%;}
#noticias > div { display: list-item; padding: 0;}
#noticias .contenEnlace { cursor:pointer;}

#noticias article				{ border: solid 2px var(--border-light); display: flex; flex-direction: column; justify-content: space-between;}
#noticias article:last-of-type  { margin-bottom: 0rem;}
#noticias article figure img 	{ object-fit: cover; width: 100%; height: 10rem;}
#noticias article figure img[src*="trans.gif"] { width: auto; }
#noticias article h3 			{ font-size: 1.1rem; padding: 0.3rem 0; margin: 0; border-top: solid 2px var(--color1-100); font-weight: bold;}
#noticias article h3 a          {color: var(--text-color)}
#noticias article > div { flex-grow: 2;}
#noticias article div p         { margin-bottom: 10px; margin-top: 0; }
#noticias article span.fecha	{ text-align: right; display: block;}
#noticias article > * {width: 100%;}
#noticias article:hover, 
#noticias article:focus, 
#noticias article:hover a, 
#noticias article:focus a   { transform: scale(1,1.06); transition: transform 0.4s ease; z-index: 8; border-radius: 4px; border-width: 1px;}
#noticias article:hover     { box-shadow: 2px 2px 10px -5px black;}

@media screen and (max-width: 767px) {
	#noticias article figure { display:inherit !important; padding-bottom: 8px;}
	#noticias article figure img 	{ height: auto;}
}
	
@media screen and (max-width: 640px){
	#noticias article figure { width: 100%;}
}

@media screen and (max-width: 480px) {
    #noticias article h3 a { text-align: inherit; }
}

@media print {
    #noticias	{ display: block; }
}

@media screen and (max-width: 480px) {
    main > section:not(.banner) { margin: 0; }
}

/*Menu lateral páginas de Comites*/
.intellimenu.menu-lateral .selected,
.intellimenu.menu-lateral li a:hover { color: var(--text-color) !important; background-color: #D3D3D3 !important;}
.intellimenu.menu-lateral li { background-color: #ededed;}
.intellimenu .selected > a:link, 
.intellimenu .selected > a:active, 
.intellimenu .selected > a:visited { color: var(--text-color) !important;}
a.intellimenu-trigger { color: var(--text-color) !important; background-color: #D3D3D3 !important; }


main > section.ContenidoMain                { display: flex; flex-flow: row nowrap; gap: 2em; padding: 10px 0; margin: 0;}
main > section.ContenidoMain > .ContenidoMainIzq                           { flex: 1 1 25%; min-width: 190px; }
main > section.ContenidoMain > .ContenidoMainDch                           { flex: 1 1 70%; }

@media screen  and (max-width: 480px)       { 
    main > section.ContenidoMain                          { flex-flow: column nowrap; gap: 0;}
    main > section.ContenidoMain > .ContenidoMainDch   { padding: 0 10px; margin-left: 24px; }
}

.columnas			{ display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; gap: 5px; margin-top: 0.5rem; border-bottom: 1px solid #e2e7f5;}
.columnas > .flex	{ margin: 0; }
.columnas.nowrap	{ flex-wrap: nowrap; }
.columnas > .col	{ flex: 1 1 calc(var(--width) - 5px); padding: 0 5px; }
.columnas .iblock	{ display: inline-block; }
.columnas .iblock * { width: 100%; }
.columnas .block	{ display: block; width: 100%; }

@media screen and (max-width: 767px) {
	.columnas > .col	{ flex: 1 1 calc(100% - 5px);}
}



.botonActivo{
	background-color: #D3D3D3;
	padding: 5px 0 5px 5px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.boton{
	background-color: #ededed;
	padding: 5px 0 5px 5px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}


.boton:hover{
	background-color: #D3D3D3;
}

.botonQuienes{
    border-bottom: 0; 
    padding: 30px;  
    border-radius: 10px; 
    margin-right:70px; 
}

.botonQuienes2{
    border-bottom: 0;  
    padding: 30px; 
    border-radius: 10px;
}

.evento {--width: 55%;}
.fecha {--width: 20%;}
.lugar {--width: 25%; font-style: normal;}

.operacion {--width: 65%;}
.num {--width: 20%;}
.numIOE {--width: 15%; font-style: normal;}


.agenda ul > li {border-bottom: 1px solid #404040; font-weight: bold;}
.agenda header {font-weight: bold;}
.agenda span.titulo {display: none;}

@media screen and (max-width: 767px) {
	.agenda span.titulo {display: initial; font-style: italic;}
	.agenda ul.cabecera {display: none;}
}

.espacioAgenda{
    margin-top: 3em; 
    margin-bottom: 3em;
}

.espacioContactanos{
    margin-top: 5em; 
    margin-bottom: 3em;
}

.iconoSobre{
    font-size:3em;
    font-weight: bold;
    position: relative;
    top: 13px;
}

.espaciosQuienes{
    margin-top: 3em;
     margin-bottom: 3em; 
     margin-left:5%; 
     margin-right:5%;
}

.centrar{
    display:flex; 
    justify-content:center;
}

.enlaceQuienes{
    text-decoration: none; 
    color: black;
    font-weight: bold;
}

.fontQuienes{
    font-size:20px;
}


.fontContactanos{
    font-size:1.3rem;
    font-weight: bold;
}

.categorycard-button{
    font-size: 0.85em;
    background-color: #D3D3D3;
    color: black !important;
}

.categorycard-button:hover{padding: 10px 5px;
    border-radius: 5px;
    font-size: 0.85em;
    font-weight: bold;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
    background-color: #1d1d1b;
    color: white !important;
    min-width: auto;
}

.iconv {
    --size: 25px;
    display: inline-block;
    text-align: center;
    font-style: normal;
    width: var(--size);
    height: var(--size);
    margin: 0;
}

img.black[src$=".svg"], .iconv.black image {
    filter: saturate(0) contrast(5);
}

.iconv > image {
    width: var(--size);
    height: var(--size);
    object-fit: contain;
}

.desplegable{
    padding: 0 0 0 0.2rem;
}


ul:is(.secciones, .subSecc) > li > .title::before {border:0;}

.memorias2{
    margin-top: 1em; 
}

.mapa {border:0; width:75%; height:400px;}

.grid-revealbtn_2{
    grid-template-columns: repeat(2, min-content);
    gap: 100px;
}

.grid-revealbtn_3{
    grid-template-columns: repeat(3, min-content);
    gap: 100px;
}

a.revealbtn {
	--sizeBtn: 168px;
    --color-icon: #333;
    --color-base: #3a78c2;
    --color-claro: color-mix(in srgb, var(--color-base) 20%, white);
    width: var(--sizeBtn); 
	height: var(--sizeBtn);
	min-height: 144px;
	min-width: 144px;
    aspect-ratio: 1 / 1;
    background: var(--bg-color);
    border: 2px solid var(--color-claro);
    border-bottom: 6px solid var(--color-base); 
    border-radius: 15px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: box-shadow 0.6s, border-color 0.6s;
}

a.revealbtn:hover:has(img, svg, .ii):not(.main-menu *):not([tabindex="-1"]),
a.revealbtn:focus:has(img, svg, .ii):not(.main-menu *):not([tabindex="-1"]) {
    border: 2px solid var(--color-claro) !important;
    border-bottom: 6px solid var(--color-base) !important;
    border-radius: 15px !important;
  }

/* ELEMENTOS INTERNOS DEL BOTÃ“N */
a.revealbtn > img.icon-revealbtn,
a.revealbtn > svg.icon-revealbtn {
    width: 50%;
	height: auto;
    transition: 0.5s cubic-bezier(0.25, 0, 0.25, 1);
    fill: var(--color-icon);
    color: var(--color-icon);
}

a.revealbtn > span.txtinitial-revealbtn {
	text-align: center;
    height: 30%;
	width: 90%;
	margin-top: auto;
    font-weight: 700;
	text-align: center;
    text-transform: uppercase;
    font-size: 0.9rem;
	line-height: 1.2;
    color: var(--color-icon);
	visibility: visible;
    transition: opacity 0.4s, visibility 0.4s;
    opacity: 1;
}

a.revealbtn > span.txtreveal-revealbtn {
	text-align: center;
    position: absolute;
	bottom: 10%;
    top: 50%;
    left: 50%;
	width: 90%;
    transform: translate(-50%, -50%) scale(0.8);
    font-weight: 800;
    text-transform: uppercase;
    font-size: 0.85rem;
    color: var(--color-icon);
    opacity: 0;
	visibility: hidden;
    transition: opacity 0.4s, visibility 0.4s, transform 0.4s;
    text-shadow: 2px 0 0 var(--bg-color), -2px 0 0 var(--bg-color), 0 2px 0 var(--bg-color), 0 -2px 0 var(--bg-color),
				 1.5px 1.5px 0 var(--bg-color), -1.5px -1.5px 0 var(--bg-color), 1.5px -1.5px 0 var(--bg-color), -1.5px 1.5px 0 var(--bg-color),
				 2px 1px 0 var(--bg-color), 2px -1px 0 var(--bg-color), -2px 1px 0 var(--bg-color), -2px -1px 0 var(--bg-color),
				 1px 2px 0 var(--bg-color), 1px -2px 0 var(--bg-color), -1px 2px 0 var(--bg-color), -1px -2px 0 var(--bg-color);;
}

/* LÃ“GICA DE REVELACIÃ“N AL HOVER */
a.revealbtn:hover > img.icon-revealbtn,
a.revealbtn:focus > img.icon-revealbtn,
a.revealbtn:hover > svg.icon-revealbtn,
a.revealbtn:focus > svg.icon-revealbtn {
    transform: scale(1.5) translate(0%, 10%) ;
    opacity: 0.1;
}

a.revealbtn:hover > span.txtinitial-revealbtn,
a.revealbtn:focus > span.txtinitial-revealbtn  {
    opacity: 0;
	visibility: hidden;
}

a.revealbtn:hover > span.txtreveal-revealbtn,
a.revealbtn:focus > span.txtreveal-revealbtn {
    opacity: 1;
	visibility: visible;	
    transform: translate(-50%, -20%) scale(1);
}

  /* RESPONSIVE: Ajuste a 2 columnas en pantallas pequeÃ±as */
@media (max-width: 900px) {
	.grid-revealbtn { gap: 30px; grid-template-columns: repeat(2, min-content); justify-content: center; }
}

.desplegable{
    font-size:1.3rem;
}

.NoEstilo{
    list-style-type: none;
}