 body {
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      font-family: 'Segoe UI', system-ui, sans-serif;

    }
    .header {
      background-color: #ffffff;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
      padding: 1rem 0;
    }
    .logo {
      height: 40px;
      max-width: 100%;
    }
    .main-nav {
      margin-bottom: 1rem;
    }
    .navbar-brand {
      font-size: 1.25rem;
      font-weight: 500;
    }
    .main-content {
      flex: 1;
      padding: 1rem 0;
      background-color: #f8f9fa;
    }
    .footer {
      margin-top: auto;
      background-color: #212529;
      color: white;
      text-align: center;
      padding: 1.5rem 0;
    }
    .nav-link {
      color: #495057;
      transition: all 0.2s;
    }
    .nav-link:hover {
      color: #0d6efd;
    }
    .nav-link.active {
      color: #0d6efd;
      font-weight: 500;
    }
    /* Высота на всю колонку */
    .h-100-inner {
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
    }

    /* Точная ширина 20% для левой колонки */
    @media (min-width: 768px) {
      .col-left-fixed {
        flex: 0 0 20%;
        max-width: 20%;
      }
      .col-right-flex {
        flex: 0 0 78%;
        max-width: 78%;
      }
    }