/* RESPONSIVE */

@media (min-width: 3840px) {
  .block-menu-overlay#layFin,
  .block-menu#bloqFin,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt,
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu {
    width: 1585px !important;
  }
}

@media (min-width: 2559px) and (max-width: 3839px) {
  .block-menu-overlay#layFin,
  .block-menu#bloqFin,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt,
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu {
    width: 780px !important;
  }
}

@media (min-width: 2559px) {
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu {
    margin-bottom: 2em;
  }
}

@media (min-width: 1910px) {
  .block-menu h2,
  .block-menu-nav.display h2 {
    font-size: 1.1em !important;
  }

  .block-menu-overlay.overlay h2 {
    font-size: 1.1em !important;
  }
}

@media (min-width: 1649px) {
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu {
    width: 370px;
    height: 470px;
  }

  .block-menu-nav.display#lar {
    width: 415px;
  }

  #ant,
  #fin,
  #plato {
    margin-top: 1.75em;
  }
}

@media (min-width: 1650px) {
  .frame,
  .frame.col,
  footer .frame {
    width: 1585px;
  }

  .dir-row {
    width: calc(100% - (100vw - 1585px));
  }

  /* h2 a {
		font-size: 0.8em;
	} */

  .block-menu h2,
  .block-menu-nav.display h2 {
    text-align: left;
  }
}

@media (max-width: 1650px) {
  .block-menu-nav.display,
  .block-menu-overlay,
  .block-menu {
    height: 430px;
    width: 430px;
  }

  .block-menu#bloqPlato,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt,
  .block-menu-overlay#layFin,
  .block-menu#bloqFin {
    width: 430px;
    height: 400px;
  }

  #ant,
  #fin,
  #plato {
    margin-top: 1.75em;
  }
}

@media (min-width: 1536px) {
  .block-menu h2,
  .block-menu-nav.display h2 {
    font-size: 1em;
  }

  .block-menu-overlay.overlay h2 {
    font-size: 1em;
  }
}

@media (max-width: 1536px) {
  body {
    padding-bottom: 0;
  }

  footer .frame {
    width: 95%;
  }
}

@media (min-width: 1400px) {
  /*main {
		width: 85%;
	}*/

  .button,
  a.button {
    width: 20em;
  }
}

@media (min-width: 1350px) {
  .frame.index img {
    margin-bottom: 1em;
  }
}

@media (min-width: 1349px) and (max-width: 1650px) {
  .block-menu-nav.display h2 {
    min-height: 17%;
  }
}

@media (max-width: 1350px) {
  .frame,
  .frame.row,
  .frame.col,
  .dir-row {
    width: 90%;
  }

  body {
    width: 100%;
  }

  main {
    width: 100%;
  }

  .block-menu-nav.display,
  .block-menu-overlay,
  .block-menu {
    width: 29vw;
    height: 29vw;
  }

  .block-menu#bloqPlato,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt,
  .block-menu-overlay#layFin,
  .block-menu#bloqFin {
    width: 29vw;
    height: 29vw;
  }

  #ant,
  #fin,
  #plato {
    margin-top: 1.75em;
  }

  .block-menu-overlay.overlay#layFin h2,
  .block-menu-overlay.overlay h2 {
    font-size: 1.1em;
  }

  #ant p {
    margin-block-start: 0.25em;
    margin-block-end: 0.25em;
  }

  .block-menu h2,
  .block-menu-nav.display h2 {
    font-size: 0.9em;
  }

  .block-menu-nav.display nav a,
  .block-menu-nav.display p,
  .block-menu-nav.display p a,
  .block-menu-overlay nav a,
  .block-menu-overlay p,
  .block-menu-overlay p a,
  .block-menu-nav#plato p,
  .block-menu-nav#plato p a {
    font-size: 0.8em;
  }

  #ant p {
    font-size: 0.75em;
  }

  .block-menu-overlay#layAnt .contenido-desplegable span,
  .block-menu-overlay#plato .contenido-desplegable span {
    font-size: 0.7em !important;
  }

  .block-menu-overlay.overlay#layAnt h2 {
    margin-top: -2em;
    pointer-events: none;
  }
}

@media (max-width: 1280px) {
  body {
    font-size: 0.9em;
  }

  .contenido-desplegable span,
  .desplegable-text .contenido-desplegable span {
    font-size: 0.9em !important;
  }
}

@media (min-width: 1199px) and (max-width: 1308px) {
  .block-menu-nav.display h2 {
    min-height: 19%;
  }
}

@media (max-width: 1200px) {
  .block-menu#bloqPlato,
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu,
  .block-menu-overlay#layFin,
  .block-menu#bloqFin,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt {
    width: 46vw;
    height: 330px;
  }

  .block-menu-nav {
    margin-bottom: 1em;
  }

  #ant,
  #fin,
  #plato {
    margin-top: 0;
  }

  .contenido-desplegable span,
  .desplegable-text .contenido-desplegable span {
    font-size: 0.85em !important;
  }
}

@media (max-width: 1160px) {
  /* PDF */
  .pdf-reader main {
    width: 100%;
  }

  .frame.index {
    flex-direction: column-reverse;
  }

  .half-text {
    width: 100%;
    text-align: left;
    margin: 0.5em 0 2em 0;
  }

  .frame.index img {
    width: 100%;
    /* margin-bottom: 2em; */
  }
}

@media (max-width: 1130px) {
  footer .frame {
    flex-direction: column;
  }

  footer ul {
    display: block;
    width: 100%;
    columns: 3;
    text-align: center;
  }

  footer ul li {
    margin: 1em 0;
  }

  footer ul li::after {
    content: none;
    margin-left: 0;
  }

  footer img {
    width: 60px;
    margin: 1em 0;
  }

  footer .logo-link {
    margin: 1em 0;
  }

  .button-area {
    width: 100%;
  }
}

@media (max-width: 1024px) {
  .block-menu-overlay nav,
  .block-menu-nav.display nav {
    justify-content: space-between;
  }
}

/* @media (max-width: 950px) {

	.block-menu#bloqPlato,
	.block-menu-overlay,
	.block-menu-nav.display,
	.block-menu,
	.block-menu-overlay#layFin,
	.block-menu#bloqFin,
	.block-menu-overlay#layAnt,
	.block-menu#bloqAnt {
		width: 93vw;
		height: 46vw;
	}

	.block-menu h2 {
		position: static;
	}

	.block-menu-overlay.overlay h2 {
		margin: 1em 0;
	}

	.block-menu-overlay nav,
	.block-menu-nav.display nav {
		flex-direction: row;
	}
} */

@media (max-height: 900px) {
  .contenedor-login footer.absolute {
    bottom: 0;
    position: static;
  }
}

@media (max-width: 900px) {
  .proyect {
    width: 49%;
  }

  .proyect:nth-child(3n) {
    margin: 0 0 0 2%;
  }

  h2.h1-style {
    font-size: 1.25em;
    line-height: inherit;
  }
}

@media (max-width: 850px) {
  header {
    padding: 0.75em 0;
    margin-bottom: 1.5em;
  }

  .frame h1 {
    text-align: left;
    font-size: 1.5em;
  }

  nav {
    padding: 0.5em 0;
  }

  a#pull {
    display: block;
  }

  .pestana_global {
    /* padding: 0.5em;
		left: 0;
		position: absolute; */
    z-index: 50;
    position: relative;
    padding: 1em;
    background: var(--grisMedio);
    overflow: hidden;
    display: none;
    width: 20em;
    right: 0;
    top: 3.25em;
    position: absolute;
  }

  .pestana_global a,
  a.pestana_global-active {
    color: #ffffff !important;
  }

  .pestana_global li,
  .pestana_global li.pestana_global-active {
    display: block;
    color: #ffffff;
    border-bottom: 1px solid #ffffff;
  }

  .pestana_global li:last-child {
    border-bottom: none;
  }

  .pestana_global svg {
    /* display: none; */
    filter: invert(100%);
    margin-top: 0.5em;
  }

  #sp_texto_idioma {
    display: none;
  }

  #sp_abr_idioma {
    display: inline;
  }

  h2 a {
    font-size: 0.65em;
  }

  .block-menu-nav.display nav a {
    color: #1971c2;
    margin-bottom: 1em;
  }

  .block-menu-overlay nav a {
    color: #ffffff;
    margin-bottom: 1em;
  }

  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu,
  .block-menu-overlay#layFin,
  .block-menu-overlay#layAnt,
  .block-menu#bloqFin,
  .block-menu#bloqPlato,
  .block-menu#bloqAnt {
    width: 92vw;
    height: 45vw;
  }

  .block-menu-nav.display nav,
  .block-menu-overlay nav {
    flex-direction: column;
    justify-content: space-between;
  }

  li.i_menu_publico_act a,
  .menu_pub_act a,
  a.pestana_global-active {
    color: #ffffff !important;
    font-family: var(--fuente);
    font-weight: bold;
  }

  .logo-responsive {
    display: block;
    position: absolute;
    left: 1em;
    top: 1em;
  }

  nav .frame {
    justify-content: flex-start;
    flex-direction: row-reverse;
  }

  #pull svg {
    margin-left: 1em;
  }

  .pestana_global svg:first-child {
    display: none;
  }

  /* PDF */
  .pdf-list.row-dir p,
  .desplegable-text p,
  .desplegable-text span h4,
  .desplegable-text span h3 {
    padding: 0;
  }

  .desplegable-text .pdf-list .row-dir {
    flex-direction: column;
  }

  .pdf-list.row-dir img {
    width: 18%;
    margin-bottom: 1em;
  }

  .desplegable.transparencia.double-docs .pdf-list a {
    width: 100%;
  }
}

@media (max-width: 800px) {
  .index nav {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .index nav a {
    margin-bottom: 1em;
  }

  .half-text {
    width: 100%;
  }

  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu,
  .block-menu-overlay#layFin,
  .block-menu#bloqPlato,
  .block-menu#bloqFin,
  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt {
    width: 92vw;
    height: 400px;
  }

  .block-menu-nav.display nav a,
  .block-menu-overlay nav a {
    margin-bottom: 1.5em;
  }
  .block-menu-nav.display#cor {
    margin-top: 1.75em;
  }
}

@media (max-width: 745px) {
  /* PDF */
  .contenido-desplegable span {
    width: 90%;
  }

  .desplegable.transparencia h2 {
    display: flex;
    align-items: center;
  }

  .desplegable.transparencia h2 svg:first-child {
    transform: rotate(0deg);
    position: absolute;
    right: 2em;
  }
}

@media (max-width: 700px) {
  .two-buttons {
    flex-wrap: wrap;
  }

  .login.area-privada .two-buttons {
    flex-direction: column-reverse;
  }

  .login.area-privada .two-buttons .button:first-child {
    margin-right: 0;
  }

  .two-buttons a.button:first-child,
  .two-buttons .button:first-child {
    margin-bottom: 1.5em;
    margin-right: 0;
    margin-left: 0;
  }

  .button,
  a.button {
    width: 60%;
  }

  .form-part .form-element,
  .form-part-double .middle-col,
  .form-part-double .form-element {
    width: 100%;
  }

  .capa {
    -webkit-box-shadow: 0px 0px 78px -5px rgba(0, 0, 0, 0.9);
    -moz-box-shadow: 0px 0px 78px -5px rgba(0, 0, 0, 0.9);
    box-shadow: 0px 0px 78px -5px rgba(0, 0, 0, 0.9);
    width: 100% !important;
    left: 0 !important;
  }

  .gray-bg {
    padding: 1em;
  }

  /*.pdf-list svg {
		margin-right: 0.1em;
	}*/
}

@media (min-width: 650px) {
  #formulario #cloudflare-container iframe {
    width: 18em !important;
  }
}

@media (max-width: 600px) {
  .proyect {
    width: 100%;
  }

  .proyect:nth-child(3n) {
    margin: 0;
  }

  .block-menu h2,
  .block-menu-nav.display h2 {
    font-size: 1em;
  }

  .area-privada .row-dir.space-bw {
    flex-direction: column;
    align-items: flex-start;
  }

  .login .row-dir.space-bw a {
    margin-top: 0.5em;
  }

  .desplegable-text#comp-den {
    width: 100%;
  }

  .desplegable-text#comp-den span {
    padding: 1em 0;
  }

  .desplegable-text#comp-den span a.contenido-desplegable span {
    padding: 0;
  }

  .desplegable-text#comp-den p,
  .desplegable-text#comp-den ol li {
    word-wrap: break-word;
    font-size: 0.85em;
  }

  .desplegable-text#comp-den ol {
    padding-inline-start: 1em;
  }

  .desplegable-text#comp-den p {
    padding: 0 !important;
  }

  .lbl_conexion {
    border: none;
    margin-right: 0.5em;
  }

  .zona-privada .frame.col h1.nombre-prod {
    font-size: 1.25em;
  }

  .gray-bg h3,
  .no-req h2 {
    font-size: 1em;
  }

  .lbl_conexion svg {
    width: 18px;
    margin-right: 0;
    height: 18px;
    fill: #8d8d8d;
  }

  .lbl_conexion:hover svg {
    fill: #8d8d8d;
  }

  .lbl_conexion span {
    display: none;
  }

  a.logout {
    border: none;
    padding: 0;
    margin: 0 0 0 1.5em;
  }

  a.logout span {
    display: none;
  }

  a.logout svg,
  a.logout:hover svg {
    fill: #8d8d8d;
    stroke: #8d8d8d;
    width: 22px;
    height: 22px;
  }

  .lang {
    flex-direction: row-reverse;
  }
}

@media (max-width: 550px) {
  footer {
    bottom: 0;
  }

  footer ul {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .bloque-anexos a.button,
  .button,
  a.button {
    width: 100%;
  }

  #td_ficheros_nuevos {
    margin-top: 1em;
    width: 100%;
  }

  .bloque-anexos {
    flex-direction: column-reverse;
  }

  .pestana_global {
    width: 100%;
  }

  /* .block-menu-overlay.overlay h2 {
		display: none;
	} */
  footer.absolute {
    bottom: 0;
    position: static;
  }
}

@media (max-width: 500px) {
  /* PDF */
  .pdf-list svg {
    vertical-align: sub;
  }

  .pdf-list a {
    font-size: 0.85em;
  }

  .pdf-list.row-dir p,
  .desplegable-text p {
    font-size: 0.85em;
  }

  .frame.center.pdf-reader h1 {
    text-align: left;
  }

  .block-menu-overlay#layFin,
  .block-menu#bloqPlato,
  .block-menu#bloqFin,
  .block-menu-overlay,
  .block-menu-nav.display,
  .block-menu {
    width: 95vw;
    height: auto;
  }

  .block-menu-overlay#layAnt,
  .block-menu#bloqAnt {
    width: 95vw;
    height: 120px;
  }

  .block-menu-overlay#layFin.overlay,
  .block-menu#bloqFin.overlay,
  .block-menu-overlay#layAnt.overlay,
  .block-menu#bloqAnt.overlay {
    height: 400px;
  }

  .block-menu-overlay#layLar.overlay,
  .block-menu#bloqLar.overlay {
    height: 600px;
  }

  .block-menu-overlay.overlay,
  .block-menu.overlay {
    height: 500px;
  }

  .block-menu-nav#plato h2 {
    position: static;
  }

  .block-menu-nav#plato p {
    padding: 0;
    position: static;
    margin-block-start: 0;
    margin-block-end: 0;
  }
}

@media (max-width: 450px) {
  .capa .row-dir {
    flex-direction: column;
  }

  .frame .upload_cas,
  .frame .upload_eus {
    align-self: flex-start;
  }

  #lbl_doc {
    max-width: 100%;
    margin-bottom: 0.5em;
    margin-left: 0;
  }

  .block-menu-overlay p,
  .block-menu-overlay p a {
    font-size: 0.9em;
  }

  .contenido-desplegable span {
    width: 75%;
  }

  .contenido-desplegable svg:first-child {
    width: 15%;
  }

  /* PDF */
  .pdf-reader h1 {
    font-size: 1.1em;
  }

  .frame:nth-child(2) {
    position: relative;
  }

  a.go-back {
    display: flex;
    background: #e2e2e2;
    padding: 0.65em;
    /* text-align: center; */
    margin: 0 0 1em 0;
    width: 49%;
    border-radius: 6px;
    flex-direction: row;
    justify-content: center;
  }

  a.go-back {
    font-family: var(--fuente);
    display: flex;
    flex-direction: row;
    align-items: center;
    align-content: center;
    align-self: baseline;
    font-weight: 500;
  }

  .pdf-reader a.button {
    width: 47%;
    top: 8.25em;
    position: absolute;
    align-self: end;
    margin-bottom: 1em;
  }

  .pdf-reader a.button.center {
    align-self: flex-end !important;
    margin: 2em 0;
    text-transform: none;
  }

  .desplegable.transparencia h2 svg:nth-child(2) {
    width: 15%;
  }
}

@media (max-width: 400px) {
  .desplegable.transparencia h2 svg:nth-child(2) {
    width: 13%;
  }

  .login-vip {
    width: 100%;
  }

  h1 {
    font-size: 1.5em;
    line-height: inherit !important;
  }

  header {
    margin-bottom: 1em;
  }

  .no-req {
    padding: 1em;
  }

  /* PDF */

  .desplegable.transparencia.double-docs .pdf-list a {
    width: 100%;
  }

  .pdf-list {
    margin: 0.75em 0 2em 0;
  }

  .contenido-desplegable svg {
    min-width: 13%;
  }

  .contenido-desplegable span {
    min-width: 85%;
    max-width: 85%;
  }

  .contenido-desplegable .view,
  .desplegable.transparencia .pdf-list .view,
  .pdf-list .view {
    display: none !important;
  }

  a.go-back {
    margin: 0.5em 0 1em 0;
  }
}

@media (max-width: 350px) {
  .login {
    width: 100%;
  }

  header {
    padding: 0.5em 0;
  }

  header h2 a {
    width: 95%;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .pdf-reader a.button {
    top: 8.5em;
  }
}

@media screen and (hover: none) {
  div.upload_cas span:hover,
  div.upload_eus span:hover,
  .lbl_conexion:hover {
    background-color: #ffffff;
    color: var(--primario);
  }

  .block-menu:hover {
    background: #f0f0f0;
  }

  .proyect div.proyect-title a svg:hover {
    fill: var(--primario);
  }

  .pestana_global a:hover {
    color: var(--grisTor);
  }

  h2.h1-style:hover {
    background-color: #e2e2e2;
    border-bottom: none;
  }

  .index div nav a:hover {
    color: #ffffff;
    background-color: var(--primario);
  }

  .frame div a:hover {
    opacity: 1;
  }

  input[type="button"]:focus.button,
  input[type="button"]:hover.button,
  a.button:hover {
    background: var(--primario);
    transform: none;
  }

  .checkbox:hover input ~ .checkbox-mark {
    background-color: var(--primario);
  }

  #dv_boton_volver:hover svg {
    transform: none;
    fill: var(--negroSuave);
  }

  header h2 a:hover {
    transform: translateX(-1.5em);
  }

  header h2 a:hover svg {
    opacity: 0;
  }
}

@media (pointer: coarse) {
  .bloque-pdf.flex-start {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .bloque-pdf.flex-start::-webkit-scrollbar {
    display: none;
  }
}
