/* Local Fonts - Outfit */
@font-face {
    font-family: 'Outfit';
    src: url('../lib/local_cdn/fonts/outfit-300.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Outfit';
    src: url('../lib/local_cdn/fonts/outfit-400.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Outfit';
    src: url('../lib/local_cdn/fonts/outfit-600.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Outfit';
    src: url('../lib/local_cdn/fonts/outfit-700.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

/* Skeleton Loading Animation */
.skeleton {
    background-color: #e2e8f0;
    background-image: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0,
        rgba(255, 255, 255, 0.2) 20%,
        rgba(255, 255, 255, 0.5) 60%,
        rgba(255, 255, 255, 0)
    );
    background-size: 200% 100%;
    animation: skeleton-loading 1.5s infinite;
}

@keyframes skeleton-loading {
    100% {
        background-position: -200% 0;
    }
}

.skeleton-text {
    height: 1rem;
    margin-bottom: 0.5rem;
    border-radius: 0.25rem;
}

.skeleton-img {
    height: 200px;
    border-radius: 1rem;
    margin-bottom: 1rem;
}

/* Custom Spacing */
.py-responsive {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

@media (max-width: 768px) {
    .py-responsive {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
}

/* Sticky Header Adjustments */
@media (max-width: 991px) {
    .navbar-collapse {
        background: white;
        padding: 1rem;
        border-radius: 1rem;
        margin-top: 1rem;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    }
}