        :root {
            --bs-primary: #f0494f;
            --bs-primary-rgb: 240, 73, 79;
            --bs-dark: #1a1a1a;
            --bs-dark-rgb: 26, 26, 26;
        }
        .btn{
            padding: 10px 20px;
        }
        .btn-primary {
            background-color: #f0494f;
            border-color: #f0494f;
        }

        .btn-primary:hover {
            background-color: #d43a40;
            border-color: #d43a40;
        }

        .btn-outline-primary {
            color: #f0494f;
            border-color: #f0494f;
        }

        .btn-outline-primary:hover {
            background-color: #f0494f;
            border-color: #f0494f;
        }

        .text-primary {
            color: #f0494f !important;
        }

        .bg-dark-custom {
            background-color: #1a1a1a;
        }

        .navbar-dark-custom {
            background-color: #1a1a1a;
        }

        .card {
            border: none;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
            transition: transform 0.2s;
        }

        .card:hover {
            transform: translateY(-4px);
        }

        .badge.bg-primary {
            background-color: #f0494f !important;
        }

        a {
            color: #f0494f;
        }

        a:hover {
            color: #d43a40;
        }

        .logo{
            width: 100px;
            height: auto;
        }
        body{
            font-family: "Open Sans", sans-serif;
        }
        .nav-link{
            color: #d43a40;
            font-weight: 600;
        }
        .nav-link:hover{
            color: #1a1a1a;
        }

            html, body {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    body {
        display: flex;
        flex-direction: column;
        min-height: 100vh; /* 100% высоты окна браузера */
    }

    main {
        flex: 1 0 auto; /* Контент занимает все доступное пространство */
    }

    footer {
        flex-shrink: 0; /* Футер не сжимается */
        width: 100%;
    }

    .toast-container {
            position: fixed;
            top: 20px;
            right: 20px;
            z-index: 9999;
        }

    .toast {
            min-width: 250px;
            border-left: 4px solid;
        }

    .toast.success {
            border-left-color: #198754;
        }

    .toast.error {
            border-left-color: #dc3545;
        }

    .toast.warning {
            border-left-color: #ffc107;
        }

    .toast.info {
            border-left-color: #f0494f;
        }

    a:active{
        color: #1a1a1a;
    }


    /* Оптимизация изображений */
    .event-image-wrapper {
        background-color: #f8f9fa;
        position: relative;
    }

    .event-image-wrapper img {
        transition: transform 0.3s ease;
    }

    .event-image-wrapper:hover img {
        transform: scale(1.05);
    }

    /* Ленивая загрузка */
    img[loading="lazy"] {
        opacity: 0;
        transition: opacity 0.3s;
    }

    img[loading="lazy"].loaded {
        opacity: 1;
    }

        .sticky-top {
        top: 20px;
        z-index: 1000;
    }

    .event-description {
        line-height: 1.8;
        color: #333;
    }

    @media (max-width: 768px) {
        .sticky-top {
            position: relative;
            top: 0;
        }
    }
