.ventanales {
  display: flex;
  flex-wrap: wrap;
  gap: calc(2 * var(--margen_0));
  height: 100%;
}

.ventanales.marco {
  position: relative;
  border-radius: var(--radio_3);
  background-size: cover;
  background-position: center;
}

.ventanales .frase {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 80%;
  margin: auto;
}

.frase h1,
.frase p {
  color: var(--bg_texto);
  text-align: center;
  font-family: 'Tangerine', cursive;
  font-size: 4.5em;
  text-shadow: 3px 6px 4px rgba(0, 0, 0, 0.75);
}

.frase p {
  font-size: 3em;
}

.ventanales img {
  position: absolute;
  right: var(--btn_size);
  bottom: var(--btn_size);
  opacity: 0.3;
  height: 3.1em;
  width: auto;
}

.ventana-interna {
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 100%;
  padding-right: var(--margen_0);
}

.botones-columna p {
  position: absolute;
  top: 200px;
  left: 22%;
  transform: translate(-50%, -50%);
  color: var(--bg_texto);
  margin: 0;
}

@-moz-document url-prefix() {
  .botones-columna p {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
  }
}

/* Estilos específicos para WebKit (Chrome y Safari) */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .botones-columna p {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
  }
}

/* V2 */
.columna-contenido {
  flex: 1;
  height: 100%;
  height: calc(var(--contenedor_principal) - var(--margen_1) + 20px);
  overflow-y: scroll;
  transition: width var(--transicion) ease; /* Agregar transición suave a la propiedad flex */
}

.botonera .botones button {
  width: var(--btn_size);
  height: var(--btn_size);
  margin: 0 auto var(--margen_0);
  min-width: 0 !important;
  padding: 0;
  border-radius: var(--radio_1);
}

.botonera .botones i {
  font-size: 22px;
}

.botones-columna {
  position: relative;
  width: calc(var(--btn_size) + 2 * var(--margen_0));
  height: 100%;
  text-align: center;
}

.ventanal {
  display: flex;
  /* flex-wrap: wrap; */
  /* gap: 0.5%; */
  height: 100%;
}

.ventanal .ventana {
  /* flex: 1; */
  /* border: 1px solid white; */
  overflow: hidden;
  padding: 0 !important;
  border-radius: var(--radio_1);
  transition: width var(--transicion) ease; /* Agregar transición suave a la propiedad flex */
}

/* MEMBRETES */
.contenedor-info {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}

.menu-contenido {
  width: 100%;
}

.menu-contenido h2 {
  flex-grow: 1;
  flex-shrink: 0;
  width: 100%;
  font-family: 'Oswald', Arial, Sans-serif;
  font-size: 24px;
  color: var(--bg_texto);
  border: 1px solid var(--bg_texto);
  text-align: center;
  background-color: var(--bg_2);
  padding: 12px;
  box-sizing: border-box;
  border-radius: var(--radio_1);
  height: 68px;
  margin: 6px auto 15px auto;
}

.menu-contenido .datos {
  flex-grow: 1;
  flex-shrink: 0;
  padding: 10px 20px;
  text-align: justify;
  hyphens: auto;
}

.membrete {
  min-width: 0;
  background-color: var(--bg_6);
  padding: var(--margen_2);
  /*margin-bottom: var(--margen_1);*/
  border-radius: var(--margen_1);
  box-shadow: var(--btn_shadow);
}

.membrete-info {
  display: flex;
  flex-direction: row;
  margin-bottom: var(--margen_2);
  background-color: var(--bg_6);
  padding: var(--margen_1);
  border-radius: var(--radio_2);
}

.membrete-info.envuelto {
  display: block;
  flex-direction: row;
  margin-bottom: var(--margen_2);
  background-color: var(--bg_6);
  padding: var(--margen_1);
  border-radius: var(--radio_2);
}

.membrete-ventana {
  display: grid;
  grid-gap: var(--margen_1);
  grid-auto-rows: minmax(0, max-content);
  grid-template-columns: 50% 50%;
  width: 100%;
  border-radius: var(--radio_2);
  margin: auto;
}

.membrete-grupo {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  column-gap: 10px;
  padding: 10px;
}

.membrete-grupo .membrete-fila {
  box-shadow: var(--margen_1) 0 0 rgba(0, 0, 0, 0.3);
  padding-left: var(--margen_1);
}

.membrete-info .membrete-izquierda {
  flex-grow: 1;
  min-height: 100px;
}

.membrete-fila .membrete-izquierda {
  flex-grow: 1;
  min-height: 100px;
  width: 100%;
}

.membrete-info .membrete-derecha {
  width: 36px;
  flex-shrink: 0;
}

.membrete-mitad {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.membrete-fila {
  display: flex;
  flex-direction: row;
  padding-bottom: var(--margen_0);
  width: 100%;
  /* padding-left: var(--margen_1); */
}

.membrete-fila.encabezado {
  margin: 0 0 var(--margen_1);
  padding: var(--margen_0);
  border-radius: var(--radio_1);
  background-color: var(--bg_7);
}

.membrete-fila.encabezado b {
  text-align: center;
  width: 100%;
}

.membrete-fila.encabezado i {
  width: var(--switch_size);
  margin: auto;
  font-size: 1.5rem;
  pointer-events: all;
  cursor: pointer;
}

.membrete-fila.encabezado i.bx-toggle-right {
  color: var(--btn_on);
}

.membrete-fila.encabezado i.bx-toggle-left {
  color: var(--btn_off);
}

.membrete-fila.encabezado i:hover {
  filter: invert(1);
  transition: var(--transicion);
}

.membrete-fila.activo {
  cursor: pointer;
  background-color: var(--bg_3);
}

.membrete-fila.activo:hover {
  transition: var(--transicion);
  border: solid var(--kinetic_v);
  cursor: pointer;
}

.membrete-fila.seleccionado {
  transition: var(--transicion);
  background-color: var(--cat_negro);
  pointer-events: none;
  border: var(--header_borde);
}

.membrete-columna1 {
  width: 100px;
  overflow: auto;
  text-align: left;
  color: var(--bg_texto_2);
}

.membrete-columna1.extendido {
  width: 150px !important;
}

.membrete-columna1.ancho {
  width: 150px !important;
}

.membrete-columna2 {
  flex: 1;
  overflow: auto;
  text-align: left;
}

.membrete-columna2 b {
  display: inline-block;
  min-width: 70px;
}

.membrete-columna2 .fijo span {
  display: inline-block;
  width: 200px;
}

.membrete-inline {
  display: grid;
  grid-template-columns: repeat(2, auto); /* 4 columnas que se ajustan al contenido */
  grid-gap: 10px; /* Espacio entre celdas, opcional */
  justify-content: start; /* Alinea la cuadrícula a la izquierda del contenedor */
}

.membrete-inline span {
  width: 150px;
}

.membrete-info-elementos {
  background-color: var(--bg_6);
  padding: var(--margen_1);
  border-radius: var(--margen_1);
  margin: var(--margen_0) 0;
}

.membrete {
  min-width: 0;
  background-color: var(--bg_6);
  padding: var(--margen_2);
  /*margin-bottom: var(--margen_1);*/
  border-radius: var(--margen_1);
  box-shadow: var(--btn_shadow);
}

.membrete-fila i {
  cursor: pointer;
}

.membrete-fila i:hover {
  color: var(--btn_bg_hover);
  text-shadow: var(--btn_shadow_hover);
}
