.articles-page { padding-top: 120px; min-height: 100vh; } .articles-page .page-header { text-align: center; margin-bottom: 4rem; } .articles-page .hero-title { font-size: clamp(2.5rem, 5vw, 4rem); margin-bottom: 1rem; } .articles-page .hero-title span { color: var(--color-primary, #646cff); background: linear-gradient(135deg, var(--color-primary, #646cff), var(--color-accent, #9089fc)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .articles-page .hero-subtitle { font-size: 1.2rem; color: var(--color-text-muted, #aaa); max-width: 600px; margin: 0 auto; } .articles-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 2.5rem; padding-bottom: 6rem; } .article-card { display: flex; flex-direction: column; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 20px; overflow: hidden; transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease, border-color 0.3s ease; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); } .article-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.15); } .article-image { width: 100%; height: 220px; overflow: hidden; border-bottom: 1px solid rgba(255, 255, 255, 0.05); } .article-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); } .article-card:hover .article-image img { transform: scale(1.08); } .article-content { padding: 1.8rem; display: flex; flex-direction: column; flex-grow: 1; } .article-date { font-size: 0.85rem; color: var(--color-text-muted, #888); margin-bottom: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.8px; } .article-title { font-size: 1.3rem; font-weight: 700; color: var(--color-text, #fff); margin: 0 0 1rem; line-height: 1.4; transition: color 0.3s ease; } .article-card:hover .article-title { color: var(--color-primary, #646cff); } .article-excerpt { font-size: 1rem; color: var(--color-text-muted, #aaa); line-height: 1.6; margin: 0 0 1.5rem; flex-grow: 1; } .article-link { display: inline-flex; align-items: center; font-weight: 600; color: var(--color-primary, #646cff); text-decoration: none; font-size: 0.95rem; transition: color 0.2s ease, transform 0.2s ease; margin-top: auto; } .article-link:hover { color: var(--color-primary-light, #9089fc); transform: translateX(4px); } .no-articles { text-align: center; grid-column: 1 / -1; font-size: 1.2rem; color: var(--color-text-muted, #aaa); padding: 3rem 0; }