    * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

        body {
            background-color: #f8f9fa;
            padding: 20px;
            min-height: 100vh;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
        }

        .grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
            gap: 20px;
            margin-top: 20px;
        }

        .card {
            background: white;
            border-radius: 12px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
            overflow: hidden;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
        }

        .card-image {
            width: 100%;
            height: 200px;
            overflow: hidden;
            position: relative;
        }

        .card-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }

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

        .card-content {
            padding: 20px;
        }

        .card-title {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 8px;
            line-height: 1.4;
            color: #333;
        }

        .card-subtitle {
            font-size: 14px;
            color: #666;
            margin-bottom: 15px;
        }

        .card-category {
            font-size: 12px;
            color: #007bff;
            font-weight: 500;
            margin-bottom: 20px;
        }

        .card-actions {
            display: flex;
            gap: 10px;
            margin-top: 15px;
        }

        .btn {
            padding: 8px 16px;
            border-radius: 8px;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s ease;
            display: flex;
            align-items: center;
            gap: 5px;
        }

        .btn-download {
            background-color: #fff;
            border: 1px solid #ddd;
            color: #8b3a62;
        }

        .btn-download:hover {
            background-color: #f8f9fa;
            border-color: #ccc;
        }

        .btn-read-more {
            background-color: #fff;
            border: 1px solid #ddd;
            color: #007bff;
        }

        .btn-read-more:hover {
            background-color: #f8f9fa;
            border-color: #ccc;
        }

        .icon {
            font-size: 14px;
        }
/* --- Corrected Media Queries --- */
@media (max-width: 768px) {
    .grid {
                grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            }
    .card-image {
                height: 180px;
            }
        }

@media (max-width: 480px) {
    .grid {
        grid-template-columns: 1fr;
    }
    .card-image {
        height: 160px;
    }
    }

.card-actions a,
.card-actions a:visited,
.card-actions a:hover,
.card-actions a:active {
    text-decoration: none !important;
    color: inherit !important;
}