/*
 * Site footer styles.
 * Extracted 2026-08-29 from an inline <style> block in application.html.erb.
 */
      /* Enhanced Footer Styles */
      .site-footer {
        margin-left: 280px;
        margin-top: auto;
        padding: 3rem 0 1.5rem;
        background: linear-gradient(180deg, var(--kv-sidebar-gradient-start) 0%, var(--kv-sidebar-gradient-end) 100%);
        border-top: 3px solid var(--kv-accent);
        transition: margin-left 0.3s ease;
        width: calc(100% - 280px);
        position: relative;
      }

      .sidebar.collapsed ~ .main-content ~ .site-footer,
      .main-content.expanded ~ .site-footer,
      .site-footer.expanded {
        margin-left: 80px;
        width: calc(100% - 80px);
      }

      .site-footer.no-sidebar {
        margin-left: 0;
        width: 100%;
      }

      .content-area.no-sidebar {
        padding: 0;
      }

      .footer-content {
        width: 100%;
      }

      .footer-heading {
        font-weight: 600;
        color: var(--kv-accent);
        font-size: 0.95rem;
        letter-spacing: 0.5px;
        margin-bottom: 1rem;
        border-bottom: 2px solid var(--kv-accent);
        padding-bottom: 0.5rem;
        display: inline-block;
      }

      .footer-links {
        padding-left: 0;
      }

      .footer-link {
        transition: all 0.3s ease;
        display: inline-flex;
        align-items: center;
        font-size: 0.875rem;
        padding: 0.25rem 0;
      }

      .footer-link:hover {
        color: var(--kv-accent) !important;
        padding-left: 0.5rem;
      }

      .footer-link i.bi-chevron-right {
        font-size: 0.75rem;
        opacity: 0;
        transition: opacity 0.3s ease;
      }

      .footer-link:hover i.bi-chevron-right {
        opacity: 1;
      }

      .contact-info i,
      .social-links a i {
        transition: all 0.3s ease;
      }

      .social-links a:hover i {
        color: var(--kv-accent) !important;
        transform: scale(1.2) rotate(5deg);
      }

      .products-badges .badge {
        font-size: 0.75rem;
        padding: 0.4rem 0.6rem;
        font-weight: 500;
        transition: transform 0.3s ease;
      }

      .products-badges .badge:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(233, 69, 96, 0.3);
      }

      .footer-bottom {
        margin-top: 2rem;
        padding-top: 1.5rem;
        border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
      }

      .footer-bottom a {
        transition: color 0.3s ease;
      }

      .footer-bottom a:hover {
        color: var(--kv-accent) !important;
      }

      /* Responsive Design */
      @media (max-width: 992px) {
        .site-footer {
          margin-left: 0 !important;
          width: 100% !important;
        }

        .footer-heading {
          font-size: 0.9rem;
        }
      }

      @media (max-width: 768px) {
        .site-footer {
          padding: 2rem 0 1rem;
          margin-top: 2rem;
        }

        .footer-heading {
          margin-top: 1rem;
        }

        .footer-bottom {
          text-align: center !important;
        }

        .footer-bottom .col-md-6 {
          text-align: center !important;
        }
      }

      @media (max-width: 576px) {
        .social-links a {
          margin: 0 0.5rem !important;
        }

        .products-badges .badge {
          font-size: 0.7rem;
          padding: 0.3rem 0.5rem;
        }
      }
