﻿/* ======================================== Variables ============================================= */
main {
  --white: rgba(255, 255, 255, 1);
  --white-dark: rgba(245, 245, 245, 1);
  --grey: rgba(192, 192, 192, 1);
  --grey-dark: rgba(64, 64, 64, 1);
  --blue: rgba(142, 192, 224, 1);
  --blue-dark: rgba(0, 66, 133, 1);
  --black: rgba(48, 48, 48, 1);
}

/* ========================================= Marcas ================================================= */

body  {
  font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
}

article *,
side *,
footer *,
header *,
main *,
nav *,
section * {
  margin: 0px;
  padding: 0px;
}

article img,
side img,
footer img,
header img,
main img,
nav img,
section img {
  max-width: 100%;
  /* height: auto; */
}

/* ========================================= Genéricas================================================= */

/* SharePoint SuiteBar Home Icon */

#suiteBar #madHome {
  width: 24px;
  height: 19px;
  position: relative;
  top: 1px;
  left: -2px;
}

.ms-cui-topBar2 {
  background: rgba(239, 239, 239, 0.78);
}

/* Listas Desplegables */

h2.ms-rteCustom-h2Plegable {
  cursor: pointer;
  color: var(--blue-dark) !important;
  font-size: 1.2rem;
}

h2.madListasSelected {
  border-bottom: 2px solid rgb(0, 66 133);
  margin-bottom: 0px;
}

ul.ms-rteCustom-lpPlegable,
ul.ms-rteCustom-lpPlegable ul {
  margin-top: 0px !important;
  padding: 1em 2em !important;
  list-style-type: none;
  list-style-image: none !important;
}

ul.ms-rteCustom-lpPlegable>li {
  padding: 0.8em 1em;
}

ul.ms-rteCustom-lpPlegable>li:nth-of-type(2n+1) {
  background-color: rgb(243, 243, 243);
}

ul.ms-rteCustom-lpPlegable>li>h3 {
  margin-bottom: 0.5em;
  cursor: pointer;
}

ul.ms-rteCustom-lpPlegable>li>h3>img {
  margin-right: 6px;
}

ul.ms-rteCustom-lpPlegable>li>ul {
  padding: 0px 1em !important;
}

.ms-rteCustom-lpPlegable li ul li {
  margin-top: 10px
}

ul.ms-rteCustom-lpPlegable>li h4 {
  font-weight: bold;
  color: var(--blue-dark);
  margin-top: 1em;
  margin-bottom: 0.5em;
  text-align: center;
  background-color: var(--blue-dark);
  color: var(--white);
}

ul.ms-rteCustom-lpPlegable>li ol {
  list-style-type: none;
  list-style-image: none;
  padding: 0px 0px;
  margin-bottom: 2em;
}

ul.ms-rteCustom-lpPlegable>li ol li {
  padding: 0.4em 1em;
}

ul.ms-rteCustom-lpPlegable>li ol li {
  background-color: var(--white);
}

ul.ms-rteCustom-lpPlegable>li .listahorizontal {
  padding: 0px 0px !important;
}

ul.ms-rteCustom-lpPlegable>li .listahorizontal li {
  display: inline-block;
}

ul.ms-rteCustom-lpPlegable>li .listahorizontal a {
  padding: 5px 10px;
}

ul.ms-rteCustom-lpPlegable>li .listahorizontal img {
  width: 100px;
  height: 100px !important;
  border: 1px solid var(--blue-dark);
}

ul.ms-rteCustom-lpPlegable>li .listahorizontal img:hover {
  transform: scale(1.04, 1.04);
  transition: transform 0.2s;
}

ol.madLetras {
  list-style-type: lower-alpha;
}

ul.madlistNoIcon {
  list-style-type: none;
}

.madTextCenter {
  text-align: center;
  margin: 1rem;
}

.Madcenter {
  text-align: center;
}

/* Diálogos */

[class*="ms-dlg"],
[class*="ms-dlg"] *,
[class*="ms-dlg"] *:before,
[class*="ms-dlg"] *:after {
  box-sizing: content-box;
}

#s4-workspace {
  box-sizing: border-box;
  /* WRAPPER */
  height: 100%;
}

#s4-workspace * {
  box-sizing: border-box;
  /* width = (border + padding + content) */
}

#s4-bodyContainer {
  /* AnchuraMáxima */
  max-width: 1170px;
  margin: 0 auto;
  width: auto !important;
  padding-bottom: 0;
  /* GRID */
  min-height: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto auto 1fr auto;
  /*background: var(--white);
  box-shadow: 0px 0px 1px rgba(128, 128, 128, 0.6);*/
}




/* ============================================================ main ======================================================================== */

main {
  padding: 0rem 1rem;
}

@media only screen and (min-width: 992px) {
  main {
    overflow: hidden;
    min-height: 60vh;
    padding: 0rem 2.5rem;
  }
}




/* ======================================== pap_contenido_secundaria ============================================= */
main h1 {
  color: var(--blue-dark);
  margin: 1rem 0rem 2rem 0rem;
  letter-spacing: 0;
  line-height: 1;
  font-size: 2rem;
  font-weight: bold;
  font-family: inherit;
  text-align: center;
  padding: .5rem 0rem 1rem 0rem;
}

main h2,
main caption {
  color: var(--blue-dark) !important;
  font-weight: 500;
  font-size: 1.6rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
}

main h3 {
  margin-top: 0rem;
  color: var(--blue-dark) !important;
  font-weight: 500;
  font-size: .85rem;
  font-size: 1.2rem;
}

main h4 {
  color: var(--blue-dark);
  font-size: 1rem;
}

main p,
main span,
main li {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 0;
  /* margin: 0!important; */
}


main ul,
main ol {
  padding-left: 3rem;
  margin-bottom: 1rem;
}

main ul li a {
  font-size: 1rem;
  color: var(--blue-dark);
  cursor: pointer;
  line-height: 1.6;
}

main ul li {
  font-size: 1rem;
  color: rgb(85 87 88);
  line-height: 1.6;
}

main a {
  color: rgb(3 96 191);
  font-size: 1rem;
  font-weight: 500;
}


/* Imágenes Derecha */
#pap_contenido_secundaria img.madImgbig {
  height: auto;
  float: right;
  max-width: 160px;
  margin-left: 2rem;
}

@media only screen and (min-width: 992px) {
  #pap_contenido_secundaria img.madImgbig {
    max-width: 450px;
  }
}


/* ======================================== pap_contenido_inicio ================================================ */
/* Título */
#pap_contenido_inicio h1 {
  margin: 0rem 0rem 0rem 0rem;
}

#pap_contenido_inicio #madSubtitle span {
  font-size: 1.5rem;
  font-weight: 500;
}

/* Subtítulos */
#pap_contenido_inicio h2 {
  margin: 0rem 0rem 0rem 0rem;
  font-style: italic;
  text-align: center;

}

h2.madSubtitle {
  margin: 0rem 0rem 0rem 0rem;
  font-style: italic;
  text-align: center;
}

.madGrid {
  margin-top: 2rem;
}

/* Fondos Europeos & Plan de recuperación */
@media only screen and (min-width: 992px) {
  .madGrid {
    display: grid;
    grid-template-columns: 0.65fr 0.35fr;
    grid-column-gap: 4em;
  }
}


/* Texto */
#pap_contenido_inicio div:nth-child(2) {
  display: flex;
  flex-direction: column;
}

#madTexto {
  width: 100%;
}

#madTexto h2 {
  font-style: italic;
}

@media only screen and (min-width: 992px) {
  #madTexto {
    width: 100%;
    margin-right: 5%;
    box-sizing: border-box;
  }
}

/* Preguntas */
#madPreguntas {
  width: 100%;
  background-color: var(--white-dark);
  box-shadow: 1px 1px 3px rgba(128, 128, 128, 0.3);
  border-radius: 4px;
  max-height: 500px;
  margin-bottom: 1rem;
}

#madPreguntas ul {
  margin: 1em 0px;
}

#madPreguntas li {
  border-bottom: 2px solid rgba(220, 217, 213, .5);
  padding: 0;
  margin: 0;
  border-top: 2px solid var(--white);
  margin-right: 1rem;
}

#madPreguntas li:first-child {
  border-top: 0px;
}

#madPreguntas li:hover {
  background: rgba(0, 66, 133, 0.1) !important;
  text-decoration: none;
  color: #fff !important;
}

#madPreguntas li a {
  font-size: 1rem;
  display: flex;
  align-items: flex-start;
  color: #fff !important;
  padding: 5px;
  font-weight: 400;
  text-decoration: none;
  color: rgba(0, 66, 133, 1) !important;
  padding: 10px;
}

/* Novedades */
.madnovedades {
  background-color: var(--white-dark);
  padding: 1rem 2rem;
  margin: 3rem 0rem;
}

.madnovedades h2 {
  font-size: 1.5rem;
  text-align: left !important;
  margin-bottom: 2rem !important;
  font-style: normal !important;
  color: #303030 !important;
  margin-top: 1rem !important;
  font-weight: bold;
}

.madnovedades article:nth-of-type(1) {
  border-top: 0px;
}

.madnovedades article:last-child {
  border-bottom: 0px;
}

.madnovedades article>div {
  display: grid;
  grid-template-columns: 0.10fr 0.9fr;
  grid-gap: 1rem;
  margin: 0.5rem 0rem;
}

.madnovedades article {
  border-top: 1px solid var(--white);
  border-bottom: 1px solid rgb(128, 128, 128, 0.25);
}

.madnovedades a {
  color: #303030 !important;
}

.madnovedades p {
  font-size: 1rem
}

.madnovedades .btn {
  color: #fff !important;
  background: hsl(0deg 0% 0%);
  border-radius: 2px;
  padding: 0.25em 1.2rem;
  margin-top: 1rem;
  margin: 0 auto;
  width: 140px;
}

.maBtnNocitias {
  display: flex;
  justify-content: center;
  margin: 2rem 0rem 1rem 0rem;
}


/* ======================================== pap_contenido_NED =================================== */
/* NED Menú: Normativa, enlaces, descargas */
#divNED {
  /* padding: 4px 10px 8px 0px; */
  text-align: right;
  margin-top: 1em;
  background-color: rgb(226, 238, 254);
}

#divNED ul {
  margin: 0px 0px 0px 0px !important;
  padding: 4px 10px 8px 0px;
}

#divNED ul li {
  display: inline-block;
  color: var(--blue-dark) !important;
}

#divNED ul li a {
  padding: 5px 10px;
  color: var(--blue-dark) !important;
}

#divNED ul li a:hover {
  color: #7A4100 !Important
}

/* ======================================== pap_contenido_eventos =================================== */
@media (min-width: 992px) {
  #madNE {
    display: grid;
    grid-template-columns: 0.75fr 0.25fr;
    grid-gap: 2rem;
  }
}

/* ===========Lista Eventos ============== */

.madCalendarlist details[open] summary:first-child::after {
  content: none;
  transform: rotate(180deg);
}

.madCalendarlist details summary:first-child:before {
  content: none !important;
}

.madCalendarlist details summary:first-child:after {
  display: inline-block;
  position: absolute;
  top: 0;
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  content: none;
  font-size: 1.5rem;
  color: #c00000;
  transform: rotate(180deg);
}

.madCalendarlist h2 {
  margin: 0 0 0.4em;
  font-weight: bold;
  /* background: url(estrella.gif); */
  background-repeat: no-repeat;
  /* position: relative; */
  background-position-x: 120px;
  background-position-y: 12px;
}

.madCalendarlist .event {
  color: #333;
  display: block;
  padding: 0.1em;
  transition: all 0.25s ease;
  margin-bottom: 1rem;
  position: relative;
  padding: .5em;
}

.madCalendarlist .event:hover {
  /* background: #d5d5d5; */
  text-decoration: none;
  color: black;
}

.madCalendarlist .event_icon {
  width: 3em;
  margin-right: 0.75em;
  position: absolute;
  top: 10px;
  left: 5px;
}

.madCalendarlist .event_month,
.calendar .event_day {
  text-align: center;
}

.madCalendarlist .event_month {
  padding: 0.1em;
  margin-bottom: 0.15em;
  background: rgb(192, 0, 0);
  font-size: 0.75em;
  color: white;
  border-top-left-radius: 0.3em;
  border-top-right-radius: 0.3em;
}

.madCalendarlist .event_day {
  border: 1px solid rgb(153, 153, 153);
  background: var(--white);
  color: black;
  font-size: .75rem;
  font-weight: bold;
  border-bottom-left-radius: 0.1em;
  border-bottom-right-radius: 0.1em;
  text-align: center;
}

.madCalendarlist .event_title {
  font-size: 1.1em;
  height: 3em;
  display: table-cell;
  vertical-align: middle;
}

.madCalendarlist h3 {
  display: inline-block;
  padding-left: 1.5rem;
}

.madCalendarlist .btn {
  margin-top: 0.5em;
  width: 100%;
  font-size: 1.5em;
}

.madCalendarlist .eventContent {
  padding-left: 3.2rem;
}

.madCalendarlist details[open] {
  /* margin-bottom: 3rem; */
}


.event-images div:first-child {
  margin-right: 2%;
}

.event-images img {
  border: 1px solid rgb(0 0 0 / 10%);
}

@media only screen and (min-width: 992px) {
  .event-images div {
    width: 49%;
  }

  .event-images {
    display: flex;
    align-items: flex-start;
  }
}

/* ===========Calendario Eventos ============== */

.madEvents {
  padding: 1em;
  background: #EEE;
  font-family: arial, helvetica, san-serif;
  margin-top: 2.75rem;
  background-color: var(--white-dark);
  box-shadow: 1px 1px 3px rgba(128, 128, 128, 0.3);
  border-radius: 4px;
}

.madEvents .madLIstevents h2,
.madEvents .madLIstevents h3 {
  color: rgb(192, 0, 0) !important;
}

.tableCalendar {
  table-layout: fixed;
  text-align: center;
  border-spacing: 10px;
  font-size: 15px;
  width: 100%;
  background: var(--white);
  border-radius: 4px;
  margin-bottom: 1rem;
}

.tableCalendar th {
  color: var(--blue-dark);
}

.tableCalendar td {
  background: var(--white);
}

.tableCalendar .backward img {
  position: relative;
  left: -5px;
  width: 10%;
}

.tableCalendar .forward img {
  position: relative;
  right: -5px;
  width: 10%;
}

.tableCalendar td:hover {
  background: rgb(0, 116, 199);
  color: var(--white);
}

.tableCalendar td a {
  color: rgb(192, 0, 0) !important;
  font-weight: bold;
}

.tableCalendar .forward a,
.tableCalendar .backward a {
  background: transparent;
  color: var(--blue-dark) !important;
}


/* ======================================== pap_contenido_menu_secundario =================================== */
.contenedorMenu {
  display: flex;
  flex-direction: column;
}

.contenedorMenuF1 {
  /* float: left; */
  width: 100%;
}

.contenedorMenuF2 {
  /* float: left; */
  width: 100%;
}

.fondoImagen {
  content: "";
  clear: both;
  display: table;
}

.fondoImagen ul li {
  list-style-image: url("estrella.gif");
}

.ms-rteCustom-navComMapaDGFC li {
  display: inline-block;
}

.ms-rteCustom-navComMapaDGFC li a {
  padding: 0px 5px;
}

.ms-rteCustom-listaTipo1 {
  list-style-type: none;
  list-style-image: none;
}

#mapaComunidadmapa {
  text-align: center;
}

.fiF1 {
  /*daa*/
  margin-right: 30px;
  width: auto;
  float: left;
}

.fiF2 {
  /*daa*/
  display: block
}

.contenedorMenuElemento p {
  color: rgb(68, 68, 68) !important;
  font-family: inherit;
  font-size: 1.17em;
  font-weight: bold;
  margin: .67em 0;
}

.contenedorMenuElemento p a {
  color: rgb(68, 68, 68);
}

.contenedorMenuElemento p a:hover {
  color: rgb(255, 138, 0);
}

.contenedorMenuElemento ul li {
  list-style-image: url("estrella.gif");
}

/* Primer párrafo */
#madFirstP,
.pfP,
.fondoImagen {
  padding: 0px;
  min-height: 130px;
  border-radius: 4px;
  margin-bottom: 1em;
}

.pfP>img {
  display: none;
}

.pfP.pfP2 img {
  display: block !important;
}


.fondoImagen img {
  float: left;
}

.pfP p span {
  font-size: 1.2rem;
  color: rgb(0, 24, 99);
}

.pfP section {
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
}

.pfP section img {
  margin-right: .5rem;
}

.pfP section h2 {
  line-height: 40px;
}

/* Imagen primer párrafo */

#madImagen img,
.pfP>img {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
  max-width: 160px;
  height: auto !important;
}

/* Imagen a la derecha primer párrafo */

.pfP.pfP2>img {
  float: right;
  margin-left: 2rem;
}

@media only screen and (min-width: 992px) {

  #madImagen img,
  .pfP>img.madImgbig {
    max-width: 450px;
    margin-right: 1rem;
  }

  #madFirstP ul,
  .pfP ul {
    /* margin-left: 115px !important; */
  }

  .contenedorMenu {
    flex-direction: row;
    /* justify-content: unset; */
    /* align-items: self-end; */
    justify-content: space-around;
  }

  .contenedorMenuF1 {
    /* float: left; */
    width: 35%;
  }

  .contenedorMenuF2 {
    /* float: left; */
    width: 35%;
  }
}

/* ======================================== pap_contenido_formulario ======================================== */
.madForm {
    margin-top: 1rem;
    padding: 1rem;
}

.form-group.flex {
    display: grid!important;
    grid-template-columns: auto 1fr auto!important;
}


/* Fieldset */
.madForm fieldset>label {
    padding-left: 0;
}

.madForm fieldset {
    display: block;
    margin: 2rem 0rem;
    padding-top: 0.35em;
    padding-bottom: 0.625em;
    padding-left: 0.75em;
    padding-right: 0.75em;
    border: 0;
    margin-bottom: 5px;
    border: 1px solid rgb(204, 204, 204);
    margin-top: 0;
}

.madFormHeader,
.madCenter {
    text-align: center;
}

.madFormHeader span {
    font-weight: bold;
}

.MadCenter {
    text-align: center;
    margin-bottom: 2rem;
}

.MadCenter p {
    font-size: 1.5rem
}

.madForm legend {
    color: rgb(0, 114, 198);
    font-size: 1.5em;
    font-weight: bold;
    display: block;
    padding-left: 2px;
    padding-right: 2px;
    border: none;
    margin-bottom: 1rem;
}

.madFormJustify {
    text-align: justify;
}

.form-flex label {
    text-align: left !important;
    margin: 0rem 0.5rem;
}

.form-flex {
    display: flex;
    text-align: left;
    margin: 1rem 0rem;
}

/* Form groups */
.madForm .form-group {
    width: 100%;
    margin-bottom: 10px;
}

.madForm fieldset:nth-child(3) .form-group {
    /* display: block !important; */
}

.madForm .form-group:after {
    clear: both;
    display: table;
}

/* Labels */

.madForm label,
.madRight,
.madForm .form-group legend {
    display: inline-block;
    color: rgb(78, 88, 78);
    font-weight: bold;
    padding-right: 10px;
    font-size: 0.9rem;
    text-transform: uppercase;
}

.madForm abbr {
    color: rgb(255, 0, 0);
}

/* Leyendas y ayudas */

.madForm .MadExampleForm {
    font-style: oblique;
    font-size: 0.8rem;
}

.madForm .madHelp {
    margin-top: 0px !important;
    font-style: italic;
    color: rgb(78, 88, 78);
    margin-left: 100%;
    width: 100%;
}

.madForm .madStatusERROR {
    font-weight: bold;
    color: rgb(169, 68, 66);
    background-color: rgb(255, 255, 255);
    padding: 6px 12px;
    border: 1px solid rgb(169, 68, 66);
    border-radius: 4px;
}

/* Inputs */

.madForm .form-control {
    width: 100%;
    color: rgb(64, 64, 64);
    padding: 6px 12px;
    border: 1px solid rgb(204, 204, 204);
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 1rem;
    cursor: pointer;
}
.madForm .form-control:hover,
.madForm .form-control:focus{
   border:1px solid rgb(0, 114, 198)!important;
   outline: 0;
}

.madForm input:focus {/* border: 1px solid rgb(255, 138, 0); *//* box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset, 0px 0px 8px rgba(102, 175, 233, 0.6); */}

.madForm input:focus:valid {
    font-weight: bold;
    color: rgb(60, 118, 61);
}

.madForm input:focus:invalid {
    font-weight: bold;
    color: rgb(169, 68, 66);
}


/* Checkboxes y radio*/

.madForm .form-group > div span {
    display: flex;
    align-items:center;
}
.madForm .checkbox,
.madForm .radio {
    position: relative;
    margin-bottom: 0px;
    display: inline-block;
    margin-right: 12px;
}

.madForm .checkbox label,
.madForm .radio label {
    cursor: pointer;
    font-weight: bold;
    margin-bottom: 0px;
    padding-left: 25px;
    padding-right: 5px;
    /* margin-right: 0rem; */
}

.madForm .checkbox label:first-child,
.madForm .radio label:first-child {
    padding-left: 0px;

}

.madForm .radio label {
    font-weight: normal !important;
}

.madForm input[type="radio"],
.madForm input[type="checkbox"] {
    cursor: pointer;
    margin-bottom: 1rem;
    background-color: initial;
    cursor: default;
    appearance: auto;
    box-sizing: border-box;
    margin: 3px 3px 0px 5px;
    padding: initial;
    border: initial;
    width: auto;
    margin-bottom: 0;
    height: 25px;
    min-width: 25px;
    cursor: pointer;
}

/* Textareas */
.madForm textarea {
    width: 100%!important;
    padding: 0.5rem 1rem;
    border: 1px solid rgb(204, 204, 204);
    border-radius: 4px;
}

.madForm textarea:focus {
    font-weight: bold;
    color: rgb(60, 118, 61);
}

/* Status*/
.madStatusOK {
    font-weight: bold;
    color: rgb(60, 118, 61);
    background-color: rgb(255, 255, 255);
    padding: 6px 12px;
    border: 1px solid rgb(0, 118, 61);
    border-radius: 4px;
}


/* Buttons */
.madForm button {
    min-width: 84px !important;
    font-weight: bold;
    background-color: rgb(0, 114, 198);
    color: rgb(255, 255, 255);
    font-size: 1rem;
    min-width: 0px;
    border-radius: 4px;
    margin-left: 0px;
    margin-bottom: 15px;
    padding: 6px 12px;
    cursor: pointer;
    margin-right: .5rem;
}

.madForm button:hover {
    color: rgb(85, 85, 85);
    border: 1px solid rgb(146, 192, 224);
    background-color: rgb(230, 242, 250);
}

#suscripciones #btnEnviar {
    font-weight: bold;
    background-color: rgb(0, 114, 198);
    color: rgb(255, 255, 255) !important;
    font-size: inherit;
    border-radius: 4px;
    min-width: 85px;
    color: rgb(64, 64, 64);
    border: 1px solid rgb(204, 204, 204);
    box-sizing: border-box;
    cursor: pointer;
    margin: 0rem 1rem 0rem 0rem;
    transition: background-color 0.5s ease;
    margin-top: 1rem;
}

/* RECAPTCHA */

.g-recaptcha {
    margin: 1em 0px;
}

/* Notas */

.madNote {
    font-weight: bold;
    color: rgb(192, 0, 0);
    background-color: rgb(255, 255, 255);
    padding: 6px 12px;
    border: 1px solid rgb(192, 0, 0);
    border-radius: 4px;
    margin-bottom: 1rem;
}

.madLOPD {
    font-style: italic;
}

@media only screen and (min-width: 992px) {

    /* Denan */
    #suscripciones .madForm .form-group {
        display: block;
    }

    .madForm .form-group {
        display: grid;
        grid-template-columns: 0.25fr 0.75fr;
        position: relative;
    }

    .madForm .form-group2 {
        display: grid;
        grid-template-columns: .20fr .10fr .10fr;
        margin: 1rem 0rem 1rem 0rem;
    }

    .madForm label,
    .madRight,
    .madForm .form-group legend {
        text-align: right;
    }

    .madForm .form-group-medium .form-group {
        display: grid;
        grid-template-columns: .50fr .50fr;
        grid-gap: 1rem;
    }

    .madForm label {
        text-align: right;
    }
    
     .madForm .form-group.flex label {
        text-align: left;
    }


    .madHelp {
        margin-left: 100% !important;
        width: 100%;
    }

    .madForm .checkbox,
    .madForm .radio {
        display: inline-block;
        min-width: 50px;
    }

    fieldset>label {
        padding-left: 10.5rem;
    }
}



  


/* =========================================== Organigrama (Layout) ========================================== */

.MadOrganigrama {
    --madBlue: #b0d1e6;
    --madBlue2: #d7e9f6;
    --madGreen: #deead5;
    --madGreen2: #8eb982;
    --madOrange: #e0a884;
    --madOrange2: #f3e0d6;
}

.MadOrganigrama {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    list-style-type: none;
    grid-gap: 1rem;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0rem 0rem;
    max-width: 545px;
    /* margin-right: 3rem; */
    margin: 0 auto;
}

.MadOrganigrama div {
    position: relative;
}

.MadOrganigrama a {
    border: 1px solid #3b3833;
    padding: 5PX;
    text-decoration: none;
    color: #150101;
    font-family: arial, verdana, tahoma;
    font-size: 0.68rem;
    display: inline-block;
    border-radius: 2px;
    margin: 1px;
    text-align: center;
    width: 100%;
    -webkit-transition: all 500ms;
    -moz-transition: all 500ms;
    transition: all 500ms;
    min-height: 100px;
    max-width: 120px;
    text-transform: uppercase;
}
.MadOrganigrama a.withAnchor:hover{
	border: 1px solid #fff;
	color: #fff;
	background-color: #5aabff!important;
}

.MadOrganigrama .active{
	border: 1px solid #fff;
	color: #fff;
	background-color: var(--blue-dark)!important;
}





.MadOrganigrama a:after {
    content: '';
    position: absolute;
    bottom: -17px;
    left: 52.5%;
    border-left: 1px solid #3b3833;
    width: 0;
    height: 18px;
}


.MadOrganigrama .columns2 {
    grid-column: span 2;
}

.MadOrganigrama .columns3 {
    grid-column: span 3;
}

.MadOrganigrama .columns4 {
    grid-column: span 4;
}



.MadOrganigrama .center {
    text-align: center;
}

.MadOrganigrama .right {
    text-align: right;
}



.MadOrganigrama .BkBlue {
    background-color: var(--madBlue);
}

.MadOrganigrama .BkBlue2 {
    background-color: var(--madBlue2);
}

.MadOrganigrama .BkGreen {
    background-color: var(--madGreen);
}

.MadOrganigrama .BkGreen2 {
    background-color: var(--madGreen2);
}

.MadOrganigrama .BkOrange {
    background-color: var(--madOrange);
}

.MadOrganigrama .BkOrange2 {
    background-color: var(--madOrange2);
}


.MadOrganigrama .noBorder {
    border: 0;
}

.MadOrganigrama .verticalLineShort.noBefore:after{
	content: none;
	
}
.MadOrganigrama .noBefore:after {
    content: none;
}


.MadOrganigrama .horizontalLine {
    left: 50%;
    border-top: 1px solid #000000;
    width: 34.5%;
}

.MadOrganigrama .horizontalLine2 {
    left: 155%;
    border-top: 1px solid #000000;
    width: 115%;
    bottom: 10%;
}


.MadOrganigrama .horizontalLineShort:after {
    content: '';
    position: absolute;
    bottom: 45px;
    left: -6%;
    border-top: 4px solid #150c01;
    width: 6%;
}
.MadOrganigrama .horizontalLinenormal:after {
    content: '';
    position: absolute;
    bottom: -7px;
    right: 23%;
    border-top: 1px solid #150c01;
    width: 106%;
}
.MadOrganigrama .horizontalLinenormal2:after {
    content: '';
    position: absolute;
    bottom: -8px;
    right: 23%;
    border-top: 1px solid #150c01;
    width: 106%;
}
.MadOrganigrama .horizontalLinenormal2:after {
    content: '';
    position: absolute;
    top: -15px;
    left: 49.5%;
    border-top: 1px solid #150c01;
    width: 110.8%;
}
.MadOrganigrama .verticalLine:before {
    content: '';
    position: absolute;
    top: -9px;
    left: 50%;
    border-left: 1px solid #3b3833;
    width: 0;
    height: 10px;
}
.MadOrganigrama .verticalLineShort:after {
    content: '';
    position: absolute;
    top: -9px;
    left: 45%;
    border-left: 1px solid #3b3833;
    width: 0;
    height: 10px;
}
.MadOrganigrama .verticalLineLarge:before {
    content: '';
    position: absolute;
    top: -17px;
    left: 50%;
    border-left: 1px solid #3b3833;
    width: 0;
    height: 20px;
}
.MadOrganigrama .verticalLineLarge2:before {
    content: '';
    position: absolute;
    left: 1px;
    border-left: 1px solid #3b3833;
    width: 0;
    height: 118px;
}
.MadOrganigrama .height140{
    height: 160px;
}

@media only screen and (min-width: 992px) {
	
	#madPAP_Contenido_Organigrama .grid2col{
		display: grid;
		grid-template-columns: 48% 48%;
		grid-gap: 4%;
	}
	
}
/* ======================================== pap_contenido_mapa ======================================== */
.madMapascontenedor {
  display: flex;
  justify-content: center;
  margin-top: 3rem;
}


/* ======================================== busqueda.aspx ============================================= */
/* images */

#s4-workspace #madBusqueda img {
  max-width: none;
  height: auto;
}

/*#madBusqueda daa*/

#madBusqueda {
  margin-left: 10px
}

/* SearchResults */

.ms-srch-siteSearchResults {
  /*float:left;*/
  float: none;
}

.ms-webpart-zone {
  /*display:table;*/
  display: block;
  width: 100%;
}

.s4-wpcell-plain {
  /*display:table-row;*/
  display: block;
}

.ms-webpart-chrome {
  /*display:table-row;*/
  display: block;
}

/* Item */

.ms-srch-item {
  /*width:500px;*/
  width: auto;
  background-color: rgb(243, 243, 243);
}

.ms-srch-item-body {
  /*display:inline-block;*/
  display: block;
}

/* Icon */

.ms-srch-item-icon {
  float: left;
}

.ms-srch-item-icon img {
  position: relative;
  top: 15px;
}

/* Title */

.ms-srch-item-title h3 {
  /*white-space:nowrap;*/
  white-space: normal;
}

.ms-srch-item-title h3 a {
  /*display:inline-block;*/
  display: inline;
  color: rgb(38, 38, 38) !important;
  font-weight: bold;
}

/* Summary */

.ms-srch-item-summary {
  /*display:inline-block;*/
  display: block;
  text-align: justify;
}

/* URLs */

.ms-srch-item-path {
  /*width:496px;*/
  width: auto;
  /*display:inline-block;*/
  display: block;
}

/* Popups */

.ms-srch-hover-content {
  display: none;
}

/* Paging */

.ms-srch-Paging li a {
  box-sizing: content-box;
}

.ms-srch-Paging li a span img {
  box-sizing: content-box;
}

/* ============================================== pap_contenido_busquedas ======================= */
main #madBusqueda img {
   max-width: none;
   height: auto;
}

main #madBusqueda ul {
   padding: 0;
   padding-bottom: 0 !important;
   list-style-type: none;
}

main #madBusqueda #madBreadcrumb li {
   background-color: transparent;
}


main #madBusqueda h2 {
   color: var(--grey2) !important;
   font-family: inherit;
   font-size: 1.5em;
   font-weight: bold;
   margin: 0.67em 0;
}

main #madBusqueda li {
   background-color: #f5f5f5;
   margin-bottom: .5rem;
   padding: 10px;
   list-style-type: none;
   list-style-image: none;
}

main #madBusqueda li a {
   color: var(--blue-dark) !important;
   font-weight: bold;
   display: flex !important;
   align-items: end;
   text-transform: uppercase;
}

main #madBusqueda #Paging {
   display: flex;
   justify-content: center;
}

main #madBusqueda #ResultFooter {
   display: none;
}



/* ======================================== Componentes ================================================ */
/* Breadcrumb */
#madBreadcrumb {
  color: rgb(107 104 104);
  display: flex;
  justify-content: flex-start;
  list-style-type: none;
  margin-top: 0.5rem;
  padding-left: 0.25rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}

#madBreadcrumb li a {
  color: rgb(60 56 56);
  cursor: pointer;
  font-weight: 500;
  font-size: .75rem;
}

#madBreadcrumb li.madBCLast:hover {
  text-decoration: none !important;
  cursor: initial;
}

#madBreadcrumb li {
  padding: 0px 6px 0px 6px;
  color: rgb(92 95 97);
  cursor: pointer;
  font-size: 0.75rem;
}

#madBreadcrumb li:hover {
  text-decoration: underline;
}

#madBreadcrumb li#madBCFirst {
  padding-right: 0rem;
  padding-left: 0;
}

/* Mosaico */
.madFondoscontenido {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: grid;
  grid-template-columns: auto auto;
  grid-column-gap: 0.5em;
}

@media only screen and (min-width: 992px) {
  .madFondoscontenido {
    grid-template-columns: auto auto auto auto;
  }
}


/* Tablas */
.divMapaTDatos {
  overflow-x: scroll;
}

.tablaMT {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-x: scroll;
}

.tablaMT {
  width: 100%;
  margin: 1em 0px;
  caption-side: top;
  border-collapse: separate;
  border-spacing: 0px 0px;
  empty-cells: show;
}

.tablaMT .thMT {
  background: #c0dae4 !important;
}

.tablaMT caption {
  text-align: left;
  font-size: 1.8rem !important;
  color: rgb(119, 119, 119);
  background-color: transparent;
  padding-bottom: .5rem;

}

.tablaMT th {
  background-color: rgb(219 230 234);
  color: rgb(64, 64, 64);
  white-space: nowrap;
  padding: 8px;
  vertical-align: top;
  border: 1px solid rgb(221, 221, 221);
}

.tablaMT td {
  white-space: nowrap;
  padding: 8px;
  vertical-align: top;
  border-top: 3px solid var(--white);
}

.tablaMT tr:first-child {
  background-color: red !important;
  border-left: 3px solid var(--white);
  border-right: 3px solid var(--white);
}

.tablaMT tr:nth-of-type(2n+1) {
  background-color: rgb(235, 249, 255);
  border-left: 3px solid var(--white);
  border-right: 3px solid var(--white);
}

.tablaMT tr:nth-of-type(2n) {
  background-color: rgba(245, 245, 245, 1);
  border-left: 3px solid var(--white);
  border-right: 3px solid var(--white);
}



/* Banners */
.madBanners {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: 0;
  margin-top: 1rem;
  list-style-image: none;
  list-style-type: none;
  justify-content: space-between;
  width: 100%;
}

.madBanners li {
  background-color: var(--white-dark);
  box-shadow: 1px 1px 3px rgba(128, 128, 128, 0.3);
  border-radius: 6px;
  cursor: pointer;
  border-bottom: 2px solid rgba(220, 217, 213, .5);
  margin-bottom: .75rem;
  padding: .5rem;
  flex-basis: 49%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.madBanners li:hover {
  background-color: rgba(0, 6, 6 133, .25);
}

.madBanners h3 {
  font-weight: 600;
  text-align: left;
  line-height: 1;
  font-size: 1.1rem;
  margin-bottom: 1rem;
  text-align: center;
}

.madBanners p {
  font-weight: 600;
  text-align: center;
  line-height: 1;
  font-size: 0.9rem;
}

.madBanners .btn {
  color: #fff !important;
  background: var(--blue-dark);
  border-radius: 2px;
  padding: 0.25em 1.2rem;
  margin-top: 1rem;
}

.madBanners .bubble1 {
  position: absolute;
  top: -45px;
  right: -154px;
  background-color: rgb(0 66 133 / 10%);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: contain;
  width: 209px;
  height: 154px;
  border-radius: 50%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}

.madBanners .bubble2 {
  position: absolute;
  top: -5px;
  left: -154px;
  background-color: rgba(0, 66, 133, 10%);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: contain;
  width: 209px;
  height: 154px;
  border-radius: 50%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}

@media only screen and (min-width:992px) {
  .madBanners li {
    flex-basis: 23%;
    margin-right: 1rem !important;
  }

  .madBanners li.madAnchor {
    flex-basis: 23.25%;
    margin-right: 1rem !important;
  }

  .madBanners {
    justify-content: center;
    width: 102%;
  }
}

/* Details */
.madContenidoSecundaria details {
  padding: 0px 15px;
  margin-left: 2rem;
}

details>summary::-webkit-details-marker {
  display: none;
}

details>summary {
  list-style: none;
}

details>summary::-webkit-details-marker {
  display: none;
}

details summary {
  position: relative;
  font-size: 1.1rem;
  color: var(--blue-dark);
  cursor: pointer;
  padding: 0rem 1rem;
  /* margin-bottom: 1rem; */
}

details summary h3:before{
    position: absolute;
    right: 0px;
    top: 5px;
    font-weight: 600;
    color: var(--red);
    transform: rotate(90deg);
    width: 0;
    height: 0;
    border-left: 12px solid rgb(192 0 0);
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    content: '';
}

details[open] summary h3:before{ 
  content: '';
  transform: rotate(-90deg);
}



details summary h3,
details summary p,
details summary a,
details summary span {
  font-size: 1rem;
}

details>summary:focus,details>summary:hover {
  background-color: rgba(0, 110, 200, 0.15);
  outline: -webkit-focus-ring-color auto 0px;
  border-radius: 4px;
}

details ul li {
  /* list-style-type: none; */
  margin-bottom: 1rem
}


details a {
  display: flex;
  align-items: baseline;
}

details[open] summary:first-child::before {
  content: '';
  transform: rotate(-90deg);
}

details summary:first-child:before {
  position: absolute;
  left: 0px;
  top: 5px;
  font-weight: 600;
  content: "\f0d8\00a0";
  color: var(--blue-dark);
  transform: rotate(90deg);
  width: 0;
  height: 0;
  border-left: 12px solid var(--blue-dark);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  content: '';
}