/* Variables para breakpoints */
:root {
    --breakpoint-xs: 350px;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1400px;
    --breakpoint-xxxl: 1600px;
  }
  
  /* Estilos base (mobile first) */
  .left-screen,
  .right-screen {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .left-screen-content {
    height: 100vh;
    padding: 10rem 15px 20px;
    position: relative;
    background-position: center;
    object-fit: cover;
  }
  
  .hero-content {
    align-items: center;
  }
  
  .hero-content h1 {
    font-size: 1.6rem;
    text-align: center;
  }
  
  .breadcrumb {
    justify-content: center;
    margin: 1.2rem 0;
  }
  
  .breadcrumb-item {
    font-size: 0.8rem;
  }
  
  .post-meta {
    justify-content: center;
    margin-bottom: 2rem;
  }
  
  .post-meta li {
    font-size: 0.8rem;
  }
  
  .hero-footer {
    margin-top: 3rem;
    justify-content: center;
  }
  
  .right-content {
    padding: 3rem 1rem;
  }
  
  /* Logo en Header - Estilos base */
  .logo {
    font-family: var(--logo-font-family);
    font-weight: 700;
    line-height: 0.8;
    color: var(--white-color);
    text-shadow: var(--text-shadow-black);
    z-index: 1101;
    transition: all 0.3s ease;
    margin: 0;
    font-size: 1.8rem; 
  }
  
  .logo span {
    font-weight: 400;
  }
  
  .logo a {
    color: var(--white-color);
    text-decoration: none;
    text-shadow: 1px 1px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
  }
  
  .logo a:hover {
    color: rgba(255, 255, 255, 0.6);
  }
  
  /* Logo en Footer - Estilos base */
  .logo-footer {
    font-family: var(--logo-font-family);
    font-weight: 700;
    line-height: 1;
    color: var(--white-color);
    text-shadow: var(--text-shadow-black);
    display: block;
    transition: all 0.3s ease;
    font-size: 2rem; /* Tamaño base para móviles */
  }
  
  .logo-footer span {
    font-weight: 400;
    color: var(--main-color);
    transition: var(--transition);
  }
  
  .logo-footer a {
    color: var(--white-color);
    text-shadow: var(--text-shadow-black);
    transition: var(--transition);
  }
  
  .logo-footer a:hover,
  .logo-footer span:hover {
    color: var(--white-color) !important;
    text-shadow: var(--text-shadow-black);
  }
  
  .responsive-nav-width {
    /* Móvil: ancho completo */
    width: 100vw;
    
    /* Prevención de overflow */
    max-width: 100%;
    box-sizing: border-box;
    
    /* Desktop: 50% del viewport */
    @media (min-width: 992px) {
      width: 50vw;
    }
  }
  /* Breakpoints progresivos */
  @media (min-width: 460px) {
    .hero-content h1 {
      font-size: 2rem;
    }
    
    .breadcrumb-item {
      font-size: 0.9rem;
    }
    
    .post-meta li {
      font-size: 1rem;
    }
  
    .logo {
      font-size: 2rem;
    }
  
    .logo-footer {
      font-size: 2rem!important;
    }
  }
  
  @media (min-width: 576px) {
    .hero-content h1 {
      font-size: 2.5rem;
    }
    
    .right-content .container {
      max-width: 550px;
    }
    
    .carousel .slider-button {
      width: 40px;
      height: 40px;
    }
  
    .logo {
      font-size: 2.5rem;
    }
  
    .logo-footer {
        font-size: 2.2rem!important;
    }
  }
  
  @media (min-width: 768px) {
    .hero-content h1 {
      font-size: 3rem;
    }
    
    .right-content .container {
      max-width: 720px;
    }
    
    .carousel .slider-button {
      width: 70px;
      height: 70px;
    }
  
    .logo {
      font-size: 3rem;
    }
  
    .logo-footer {
      font-size: 3.5rem!important;
    }
  }
  
  @media (min-width: 992px) {
    .left-screen,
    .right-screen {
      flex: 0 0 50%;
      max-width: 50%;
    }
    
    .left-screen-content {
      padding: 20px 80px;
      position: sticky;
    }
    
    .hero-content {
      align-items: stretch;
    }
    
    .hero-content h1 {
      font-size: 2.1rem;
      text-align: left;
    }
    
    .post-meta,
    .breadcrumb {
      justify-content: flex-start;
    }
    
    .hero-footer {
      justify-content: space-between;
      margin-top: -15px;
    }
    
    .right-content {
      padding: 20px 30px;
    }
    
    .mobile-offcanvas {
      width: 50vw;
    }
  
    .logo {
      font-size: 2.5rem; /* Reducimos un poco en desktop para mejor proporción */
    }
  
    .logo-footer {
      font-size: 2.2rem!important;
    }
  }
  
  @media (min-width: 1200px) {
    .container {
      max-width: 1410px;
    }
    
    .hero-content h1 {
      font-size: 2.8rem;
    }
  
    .logo {
      font-size: 3rem;
    }
  
    .logo-footer {
      font-size: 3rem!important;
    }
  }
  
  @media (min-width: 1400px) {
    .hero-content h1 {
      font-size: 3.2rem;
    }
    
    .breadcrumb-item {
      font-size: 1.1rem;
    }
  
    .logo {
      font-size: 3.5rem;
    }
  
    .logo-footer {
      font-size: 3.5rem!important;
    }
  }
  
  @media (min-width: 1600px) {
    .hero-content h1 {
      font-size: 3.5rem;
    }
    
    .half-screen {
      padding: 0 80px;
    }
    
    .right-content .container {
      max-width: 1200px;
    }
  
    .logo {
      font-size: 3.8rem;
    }
  
    .logo-footer {
      font-size: 4.2rem;
    }
  }