/* ---------- Custom Fonts ---------- */
@font-face {
  font-family: 'Creepster';
  src: url('/fonts/Creepster.woff2') format('woff2'),
       url('/fonts/Creepster.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ---------- Global Body & Typography ---------- */
body {
    font-family: 'Inter', sans-serif;
    background-color: #1a1a2e;
    color: #e0e0e0;
}

/* ---------- Reusable Classes ---------- */
.font-creepster {
    font-family: 'Creepster', cursive;
}
.text-glow-cyan {
    text-shadow: 0 0 8px rgba(0, 255, 255, 0.7);
}
.text-glow-magenta {
    text-shadow: 0 0 8px rgba(255, 0, 255, 0.7);
}

/* ---------- Other Page-Specific Styles ---------- */
.btn-primary {
    transition: background-color 0.3s, transform 0.3s;
}
.btn-primary:hover {
    transform: scale(1.05);
}
.post-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.post-list li {
    width: calc(50% - 1rem);
}
.post-list li:first-child {
    width: 100%;
    margin-bottom: 1rem;
}
.post-list a:hover h4,
.post-list a:hover .date {
    color: #00ffff;
}
.post-list a:hover img {
    box-shadow: 0 0 10px rgba(0, 255, 255, 0.5);
}
@media (max-width: 768px) {
    .post-list {
        gap: 0.5rem;
    }
    .post-list li {
        width: 100%;
    }
}