@charset "UTF-8";
/*
// 1. Funciones de Bootstrap (necesarias para cálculos)
@import "../../node_modules/bootstrap/scss/functions";

// 2. Variables de Bootstrap (colores, breakpoints, espaciado, etc.)
@import "../../node_modules/bootstrap/scss/variables";

// 3. Mapas de Bootstrap (para iterar sobre breakpoints, colores, etc.)
@import "../../node_modules/bootstrap/scss/maps";

// 4. Mixins de Bootstrap (media queries, grid, etc.)
@import "../../node_modules/bootstrap/scss/mixins";

// 5. Utilidades de Bootstrap (helpers para generar clases)
@import "../../node_modules/bootstrap/scss/utilities";

// Grid system (make-row, make-col, etc.)
@import "../../node_modules/bootstrap/scss/grid";

// Containers (make-container, make-container-max-widths)
@import "../../node_modules/bootstrap/scss/containers";

// Buttons (para @extend .btn)
//@import "../../node_modules/bootstrap/scss/buttons";

// Forms (para @extend .form-control, etc.)
//@import "../../node_modules/bootstrap/scss/forms";

// Helpers (justify-content-center, d-flex, etc.)
@import "../../node_modules/bootstrap/scss/helpers";
*/
:root {
  --font-stack: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Lato", "Montserrat", "Atkinson Hyperlegible", sans-serif;
  --color-primario: #13347D;
  --color-secundario: #2D5089;
  --color-terciario: #0b1f4a;
  --color-inverso: #ffffff;
  --color-primario-invertido: #AB1738;
  --color-cabecera: #0E1A4D;
  --color-pie: #0B1F4A;
  --color-cierre: #001032;
  --color-azul-claro: #5AF0FF;
  --color-verde: #41D886;
  --color-rojo: #AB1738;
  --color-rosa: #FF7B90;
  --color-amarillo: #FDDF73;
  --color-valladolid: #5534AE;
  --color-palencia: #93198F;
  --color-segovia: #ff9000;
  --color-soria: #AAD000;
  --color-texto: rgba(18, 18, 18, 0.8);
  --color-texto-principal: rgba(18, 18, 18, 0.8);
  --color-texto-secundario: rgba(18, 18, 18, 0.6);
  --color-texto-claro: #FFFFFF;
  --color-texto-enlace: #1464aa;
  --color-texto-error: #AD0000;
  --color-texto-pie: #FFFFFF;
  --color-fondo: #f2f2f2;
  --color-gris: #f2f2f2;
  --color-blanco: #ffffff;
  --color-primario-hover: rgb(13.953125, 38.1875, 91.796875);
  --color-primario-active: rgb(12.2708333333, 33.5833333333, 80.7291666667);
  --color-primario-light: rgb(32.4583333333, 88.8333333333, 213.5416666667);
  --color-primario-dark: rgb(8.90625, 24.375, 58.59375);
  --color-secundario-hover: rgb(35.5425824176, 63.1868131868, 108.2074175824);
  --color-secundario-active: rgb(32.3901098901, 57.5824175824, 98.6098901099);
  --color-secundario-light: rgb(84.8791208791, 128.3406593407, 199.1208791209);
  --color-valladolid-hover: rgb(70.6139380531, 43.1991150442, 144.5508849558);
  --color-valladolid-active: rgb(65.8185840708, 40.2654867257, 134.7345132743);
  --color-valladolid-light: rgb(141.4513274336, 114.8761061947, 213.1238938053);
  --color-palencia-hover: rgb(114.3095930233, 19.4404069767, 111.199127907);
  --color-palencia-active: rgb(103.4127906977, 17.5872093023, 100.5988372093);
  --color-palencia-light: rgb(220.6976744186, 53.3023255814, 215.2093023256);
  --color-segovia-hover: rgb(216.75, 122.4, 0);
  --color-segovia-active: rgb(204, 115.2, 0);
  --color-segovia-light: rgb(255, 188.4, 102);
  --color-soria-hover: rgb(138.7379807692, 169.75, 0);
  --color-soria-active: rgb(128.3173076923, 157, 0);
  --color-soria-light: rgb(218.4615384615, 255, 55);
  --border-color: #c5c5c5;
  --border-radius: 0.5rem;
  --btn-bg: var(--color-primario);
  --btn-bg-hover: var(--color-primario-hover);
  --btn-bg-active: var(--color-primario-active);
  --btn-color: var(--color-texto-claro);
  --btn-border-radius: 0.375rem;
  --btn-border-color: #121212;
  --btn-padding-x: 1rem;
  --btn-padding-y: 0.5rem;
  --link-color: var(--color-texto-enlace);
  --link-color-hover: var(--color-primario);
  --link-color-invert: var(--color-texto-enlace);
  --link-color-hover: var(--color-primario);
  --link-decoration: underline;
  --card-bg: #FFFFFF;
  --card-border-color: #c5c5c5;
  --card-border-radius: 0.5rem;
  --card-padding: 1.5rem;
  --input-bg: #FFFFFF;
  --input-border-color: #c5c5c5;
  --input-border-radius: 0.375rem;
  --input-padding-x: 0.75rem;
  --input-padding-y: 0.5rem;
  --input-focus-border-color: var(--color-primario);
  --fondo-noticia-texto: var(--color-texto);
  --fondo-noticia: white;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);
  --shadow: rgba(19, 52, 125, 0.1);
  --shadow-hover: rgba(19, 52, 125, 0.25);
  --transition-fast: 150ms ease-in-out;
  --transition-base: 300ms ease-in-out;
  --transition-slow: 500ms ease-in-out;
  --transition-ultraslow: 1000ms ease-in-out;
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
}

@keyframes moveArrow {
  0% {
    opacity: 1;
  }
  50% {
    -webkit-transform: translateX(5px);
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
/*
@mixin columnasgrid() {
  $values: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);



  display: grid;
  grid-gap: 10px;
  justify-content: stretch;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr);

  @each $value in $values {
    &.columnastabla-# { $value} {
      @if ($value == 1) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(12, minmax(0, 1fr));
        }
      } @else if ($value == 2) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(6, minmax(0, 1fr));
        }
      } @else if ($value == 3) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        @include media-breakpoint-up(lg) {
          grid-template-columns: repeat(4, minmax(0, 1fr));
        }
      } @else if ($value == 4) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(3, minmax(0, 1fr));
        }
      } @else if ($value == 5) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      } @else if ($value == 6) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      } @else if ($value == 7) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(1, minmax(0, 1fr));
        }
      } @else if ($value == 8) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(8, minmax(0, 1fr));
        }
      } @else if ($value == 9) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(1fr) minmax(0, 1fr);
        }

        @include media-breakpoint-up(md) {
          grid-template-columns: repeat(9, minmax(0, 1fr));
        }
      } @else if ($value == 10) {
        @include media-breakpoint-up(md) {
          @include make-col(10);
        }
      } @else if ($value == 11) {
        @include media-breakpoint-up(md) {
          @include make-col(11);
        }
      } @else if ($value == 12) {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(0, 1fr);
        }
      } @else {
        @include media-breakpoint-down(sm) {
          grid-template-columns: minmax(1fr);
        }
        @include media-breakpoint-up(sm) {
          grid-template-columns: minmax(0, 1fr);
        }
      }
    }
  }

  @each $value in $values {
    > .columnatabla-# { $value} {
      grid-column: span #  { $value};
    }
  }
}
*/
/*
@each $name, $values in $text-size {
  .texto-# { $name} {
    @include apply-text-size($name);
  }
}
  */
/**
 * Media query responsive - móvil primero
 * 
 * @param {String} $breakpoint - Punto de ruptura (sm, md, lg, xl, xxl)
 * @example
 *   .elemento {
 *     width: 100%;
 *     @include respond-to(md) {
 *       width: 50%;
 *     }
 *   }
 */
/**
 * Media query - escritorio primero
 * 
 * @param {String} $breakpoint - Punto de ruptura
 */
/**
 * Tipografía responsive fluida
 * 
 * @param {Number} $min-size - Tamaño mínimo
 * @param {Number} $max-size - Tamaño máximo
 * @param {Number} $min-width - Ancho mínimo (default: 320px)
 * @param {Number} $max-width - Ancho máximo (default: 1200px)
 * @example
 *   h1 {
 *     @include fluid-type(1.5rem, 3rem);
 *   }
 */
/**
 * Truncar texto con ellipsis
 * 
 * @param {Number} $lines - Número de líneas (default: 1)
 * @example
 *   .titulo {
 *     @include truncate(2);
 *   }
 */
/**
 * Centrar elemento absoluto
 * 
 * @param {String} $axis - Eje a centrar (both, x, y)
 * @example
 *   .modal {
 *     @include center(both);
 *   }
 */
/**
 * Flexbox centrado
 * 
 * @param {String} $direction - Dirección (row, column)
 * @example
 *   .container {
 *     @include flex-center(column);
 *   }
 */
/**
 * Grid responsive automático
 * 
 * @param {Number} $min-width - Ancho mínimo de columnas
 * @param {Number} $gap - Espacio entre columnas
 * @example
 *   .grid {
 *     @include auto-grid(250px, 2rem);
 *   }
 */
/**
 * Botón base con variantes
 * 
 * @param {Color} $bg - Color de fondo
 * @param {Color} $color - Color del texto
 * @example
 *   .btn-custom {
 *     @include button($color-primario, white);
 *   }
 */
/**
 * Tarjeta base
 * 
 * @param {Color} $bg - Color de fondo
 * @param {Number} $padding - Padding interno
 * @example
 *   .card-custom {
 *     @include card(white, 2rem);
 *   }
 */
/**
 * Entrada de formulario
 * 
 * @example
 *   .input-custom {
 *     @include input();
 *   }
 */
/**
 * Ocultar elemento visualmente pero mantener accesibilidad
 * 
 * @example
 *   .sr-only {
 *     @include visually-hidden();
 *   }
 */
/**
 * Limpiar floats
 * 
 * @example
 *   .container {
 *     @include clearfix();
 *   }
 */
/**
 * Resetear lista
 * 
 * @example
 *   ul {
 *     @include reset-list();
 *   }
 */
/**
 * Aspecto ratio (mantener proporción)
 * 
 * @param {Number} $width - Ancho
 * @param {Number} $height - Alto
 * @example
 *   .video {
 *     @include aspect-ratio(16, 9);
 *   }
 */
/**
 * Sombra personalizada
 * 
 * @param {String} $size - Tamaño (sm, md, lg, xl)
 * @example
 *   .card {
 *     @include shadow(md);
 *   }
 */
/**
 * Hover con elevación
 * 
 * @example
 *   .card {
 *     @include hover-lift();
 *   }
 */
/**
 * Scroll suave
 * 
 * @example
 *   .contenedor {
 *     @include smooth-scroll();
 *   }
 */
/**
 * Focus visible accesible
 * 
 * @param {Color} $color - Color del outline
 * @example
 *   button {
 *     @include focus-visible(var(--color-primario));
 *   }
 */
/**
 * Aplicar tema de campus
 * 
 * @param {String} $campus - Nombre del campus (valladolid, palencia, segovia, soria)
 * @example
 *   .contenedor {
 *     @include campus-theme(valladolid);
 *   }
 */
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@keyframes borderPulse {
  0% {
    border-color: var(--boton-borde-hover);
  }
  50% {
    border-color: var(--boton-borde-pulse);
  }
  100% {
    border-color: var(--boton-borde-hover);
  }
}
@keyframes iconPulse {
  0%, 100% {
    transform: scale(1);
    opacity: 0.9;
  }
  50% {
    transform: scale(1.1);
    opacity: 1;
  }
}
@keyframes loading {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*

// Media queries
.elemento {
  width: 100%;

  @include respond-to(md) {
    width: 50%;
  }

  @include respond-to(lg) {
    width: 33.333%;
  }
}

// Tipografía responsive
h1 {
  @include fluid-type(2rem, 4rem);
}

// Truncar texto
.titulo {
  @include truncate(2);
}

// Layouts
.hero {
  @include flex-center(column);
  min-height: 100vh;
}

.grid-productos {
  @include auto-grid(300px, 2rem);
}

// Componentes
.mi-boton {
  @include button(var(--color-primario), white);
}

.mi-tarjeta {
  @include card();
  @include hover-lift();
}

// Utilidades
.lista-menu {
  @include reset-list();
}

.video-container {
  @include aspect-ratio(16, 9);
}

// Campus
.seccion-valladolid {
  @include campus-theme(valladolid);
  background: var(--color-tema);
}

*/
@keyframes gradientShift {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
@keyframes gradientShift {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
/**
 * Mixin para transiciones suaves
 */
/*
@mixin smooth-transition($properties: all) {
  transition: $properties $transition-duration ease-in-out;
}
  */
/**
 * Mixin para el efecto hover de tarjetas
 */
/**
 * Mixin para el punto del timeline
 */
/**
 * Mixin para animaciones de aparición
 */
/**
 * Mixin para diferentes delays de animación
 */
/**
 * Mixin para responsive mobile
 */
/**
 * Mixin para limpiar estilos de lista
 */
/**
 * Keyframes para animación de aparición
 */
@keyframes fadeIn {
  to {
    opacity: 1;
    transform: translate(0, 0);
  }
}
/**
 * Keyframes para pulso del punto
 */
@keyframes pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(19, 52, 125, 0.7);
  }
  50% {
    box-shadow: 0 0 0 10px rgba(19, 52, 125, 0);
  }
}
@keyframes scrollAnimation {
  0% {
    top: 10px;
    opacity: 1;
  }
  100% {
    top: 30px;
    opacity: 0;
  }
}
/**
 * MIXINS SCSS - DOCUMENTOS
 * Universidad de Valladolid
 * 
 * Mixins reutilizables para los diseños de enlaces a documentos
 * 
 * @author: Webmaster UVa
 * @date: 2025
 */
@keyframes flotacion-lenta {
  0% {
    transform: translateY(-50%) translateX(0);
  }
  50% {
    transform: translateY(-52%) translateX(600px);
  }
  100% {
    transform: translateY(-50%) translateX(0);
  }
}
@keyframes flotacion-lenta-big {
  0% {
    transform: scale(1) translateX(0);
  }
  50% {
    transform: scale(1.03) translateX(-500px);
  }
  100% {
    transform: scale(1) translateX(0);
  }
}
@keyframes flotacion-lenta-bottom {
  0% {
    transform: scale(1) translateY(0);
  }
  50% {
    transform: scale(1.02) translateY(-100px);
  }
  100% {
    transform: scale(1) translateY(0);
  }
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible {
  margin-bottom: 1.5rem;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .org-opencms-gwt-client-ui-css-I_CmsLayoutBundle-I_CmsStateCss-cmsHovering + div[class$=titulo] {
  margin-top: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .org-opencms-gwt-client-ui-css-I_CmsLayoutBundle-I_CmsStateCss-cmsHovering + div[class$=contenido] {
  margin-top: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .org-opencms-gwt-client-ui-css-I_CmsLayoutBundle-I_CmsStateCss-cmsHovering + div[class$=contenido-simimagen] {
  margin-top: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .org-opencms-gwt-client-ui-css-I_CmsLayoutBundle-I_CmsStateCss-cmsHovering + .identificador {
  margin-top: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .org-opencms-gwt-client-ui-css-I_CmsLayoutBundle-I_CmsStateCss-cmsHovering + div.enlace-contenido {
  margin-top: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > .identificador {
  height: 0px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo] {
  display: flex;
  flex-direction: column;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo {
  display: block;
  text-align: left;
  opacity: 1;
  margin-bottom: 1.5rem;
  word-wrap: break-word;
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.2em;
  letter-spacing: -0.02em;
  color: var(--color-primario);
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h1 {
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 2.2rem;
  color: #fff;
  background-color: var(--color-fondo-primario);
  padding: 5px;
  margin-bottom: 1.5rem;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h2 {
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Lato", sans-serif;
  font-weight: 700;
  font-size: 2rem;
  color: var(--color-primario);
  margin-block-start: 0em;
  margin-block-end: 0em;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h3 {
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Lato", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  color: var(--color-primario);
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h4 {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 1.3rem;
  color: var(--color-primario);
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h5 {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  font-size: 1.1rem;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > p {
  font-family: "Roboto", "Atkinson Hyperlegible", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 400;
  font-size: 1.1rem;
  line-height: 1.6em;
  text-align: left;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  color: rgba(18, 18, 18, 0.8);
  opacity: 1;
  text-align: justify;
  text-justify: inter-word;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo]:not(:has(> div > h1)) > .titulo > p > strong {
  font-weight: 500;
  line-height: 1.4em;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo] > div[class$=titulo]:not(:has(> div > h1)) > .titulo {
  display: block;
  text-align: left;
  line-height: 1.42857143;
  opacity: 1;
  margin-bottom: 1.5rem;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo] > div[class$=titulo]:not(:has(> div > h1)) > .titulo > h2 {
  box-sizing: border-box;
  width: 100%;
  vertical-align: middle;
  opacity: 1;
  min-height: 48px;
  color: #fff;
  height: 70px;
  background-color: var(--color-primario);
  padding-top: 15px;
  padding-left: 30px;
  padding-right: 30px;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo-linea] {
  margin-bottom: 5px;
  flex: 1 0 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo-linea] > div {
  border-bottom: 1px solid #000;
  align-items: flex-end;
  flex: 1 0 auto;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo-linea] > div > h1 {
  position: relative;
  bottom: -8px;
  font-size: 1.9em;
  font-weight: 500;
  padding-right: 20px;
  padding-bottom: 7px;
  text-transform: uppercase;
  margin-right: 15px;
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Montserrat", sans-serif;
  color: var(--color-texto);
  line-height: 1em;
  margin-bottom: 0.1em;
  margin-top: 0.1em;
}
body > .pagina > .pagina-contenido > .pagina-contenido-completo > .main > .flexible > div[class$=titulo-linea] > div > h2 {
  position: relative;
  bottom: -8px;
  font-size: 1.9em;
  font-weight: 500;
  padding-right: 20px;
  padding-bottom: 7px;
  text-transform: uppercase;
  margin-right: 15px;
  font-family: "Franklin Gothic Book", "Libre Franklin", "Roboto", "Montserrat", sans-serif;
  color: var(--color-texto);
  line-height: 1em;
  margin-bottom: 0.1em;
  margin-top: 0.1em;
}