/*
Theme Name: Hub Child
Theme URI: http://hub.liquid-themes.com/
Author: Liquid Themes
Author URI: https://themeforest.net/user/liquidthemes
Template: hub
Description: Smart, Powerful and Unlimited Customizable WordPress Theme.
Version: 1.0
License: GNU General Public License
License URI: license.txt
Text Domain: hub-child
Tags: responsive, retina, rtl-language-support, blog, portfolio, custom-colors, live-editor
*/

/* ========== Univers LT — 45 Light (peso 100) ========== */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-45Lt.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-45Lt.woff')  format('woff');
  font-weight:100;            /* ultralight */
  font-style:normal;
  font-display:swap;
}

/* Univers LT — 45 Light Oblique (peso 100 cursiva) */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-45LtObl.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-45LtObl.woff')  format('woff');
  font-weight:100;
  font-style:italic;
  font-display:swap;
}

/* ========== Univers LT — 55 Roman (Regular 400) ========== */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-55Rm.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-55Rm.woff')  format('woff');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

/* Univers LT — 55 Oblique (Regular 400 cursiva) */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-55Obl.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-55Obl.woff')  format('woff');
  font-weight:400;
  font-style:italic;
  font-display:swap;
}

/* ========== Univers LT — 65 Bold (peso 500) ========== */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-65Bd.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-65Bd.woff')  format('woff');
  font-weight:500;            /* semibold */
  font-style:normal;
  font-display:swap;
}

/* Univers LT — 65 Bold Oblique (peso 500 cursiva) */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-65BdObl.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-65BdObl.woff')  format('woff');
  font-weight:500;
  font-style:italic;
  font-display:swap;
}

/* ========== Univers LT — 75 Black (peso 600) ========== */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-75Blk.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-75Blk.woff')  format('woff');
  font-weight:600;            /* bold */
  font-style:normal;
  font-display:swap;
}

/* Univers LT — 75 Black Oblique (peso 600 cursiva) */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-75BlkObl.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-75BlkObl.woff')  format('woff');
  font-weight:600;
  font-style:italic;
  font-display:swap;
}

/* ========== Univers LT — 85 Extra-Black (peso 800) ========== */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-85XBk.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-85XBk.woff')  format('woff');
  font-weight:800;            /* extrabold */
  font-style:normal;
  font-display:swap;
}

/* Univers LT — 85 Extra-Black Oblique (peso 800 cursiva) */
@font-face{
  font-family:'UniversLT';
  src:url('/wp-content/uploads/fonts/universlt/UniversLT-85XBkObl.woff2') format('woff2'),
      url('/wp-content/uploads/fonts/universlt/UniversLT-85XBkObl.woff')  format('woff');
  font-weight:800;
  font-style:italic;
  font-display:swap;
}

/* ===== Fuente global (opcional) ===== */
body, html{
  font-family:'UniversLT', Arial, sans-serif;
}

/* ============================================
   GRUPO MOZ — Estilos personalizados
   Última actualización: junio 2026
   ============================================ */

:root {
  --moz-primary: #1B398B;
  --moz-secondary: #F33344;
  --moz-line-thickness: 3px;
  --moz-line-width: 50px;
  --moz-line-gap: 20px;
  --moz-line-duration: 1.8s;
  --moz-line-delay: 1s;
}

/* Título con línea roja animada a la izquierda */
.titulo-linea {
  display: flex;
  align-items: center;
  gap: var(--moz-line-gap);
}

.titulo-linea::before {
  content: "";
  display: inline-block;
  width: var(--moz-line-width);
  height: var(--moz-line-thickness);
  background-color: var(--moz-secondary);
  flex-shrink: 0;
  transform: scaleX(0);
  transform-origin: left center;
  animation: moz-line-grow var(--moz-line-duration) cubic-bezier(0.16, 1, 0.3, 1) var(--moz-line-delay) forwards;
}

@keyframes moz-line-grow {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}

/* Variante: línea arriba del título */
.titulo-linea-top {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.titulo-linea-top::before {
  content: "";
  width: var(--moz-line-width);
  height: var(--moz-line-thickness);
  background-color: var(--moz-secondary);
  transform: scaleX(0);
  transform-origin: left center;
  animation: moz-line-grow var(--moz-line-duration) cubic-bezier(0.16, 1, 0.3, 1) var(--moz-line-delay) forwards;
}

/* Variante: línea centrada */
.titulo-linea-centro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.titulo-linea-centro::before {
  content: "";
  width: 60px;
  height: var(--moz-line-thickness);
  background-color: var(--moz-secondary);
  transform: scaleX(0);
  transform-origin: center center;
  animation: moz-line-grow var(--moz-line-duration) cubic-bezier(0.16, 1, 0.3, 1) var(--moz-line-delay) forwards;
}

/* Variante: línea más gruesa para hero */
.titulo-linea-xl::before {
  width: 80px;
  height: 4px;
}

/* Accesibilidad: respeta usuarios que pidieron menos movimiento */
@media (prefers-reduced-motion: reduce) {
  .titulo-linea::before,
  .titulo-linea-top::before,
  .titulo-linea-centro::before {
    animation: none;
    transform: scaleX(1);
  }
}

/* Responsive */
@media (max-width: 767px) {
  :root {
    --moz-line-width: 30px;
    --moz-line-thickness: 2px;
    --moz-line-gap: 14px;
  }
}