.playfair { font-family: 'Playfair Display', serif; }
.montserrat { font-family: 'Montserrat', sans-serif; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes pulse-ring { 0%{transform:scale(1);opacity:0.6} 100%{transform:scale(1.5);opacity:0} }
@keyframes slide-up { from{opacity:0;transform:translateY(40px)} to{opacity:1;transform:translateY(0)} }
.animate-float { animation: float 6s ease-in-out infinite; }
.animate-pulse-ring { animation: pulse-ring 2s ease-out infinite; }
.glass { background: rgba(255,255,255,0.08); backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.12); }
html { scroll-behavior: smooth; }

/* Article body styles (single post template) */
.article-body { color: #D1D5DB; line-height: 1.75; font-size: 1rem; font-family: 'Montserrat', sans-serif; }
.article-body p { margin-bottom: 1.5rem; line-height: 1.75; }
.article-body h2 { font-weight: 700; font-size: 1.5rem; color: #fff; margin-top: 2.5rem; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid rgba(255,255,255,0.1); font-family: 'Playfair Display', serif; }
.article-body h3 { font-weight: 600; font-size: 1.25rem; color: #fff; margin-top: 2rem; margin-bottom: 0.75rem; font-family: 'Playfair Display', serif; }
.article-body blockquote { border-left: 4px solid #E55D35; padding-left: 1.5rem; padding-top: 0.5rem; padding-bottom: 0.5rem; margin: 1.5rem 0; font-style: italic; color: #9CA3AF; background: rgba(255,255,255,0.02); border-radius: 0 0.5rem 0.5rem 0; padding-right: 1rem; }
.article-body ul { list-style-type: disc; padding-left: 1.5rem; margin-bottom: 1.5rem; color: #9CA3AF; }
.article-body ol { list-style-type: decimal; padding-left: 1.5rem; margin-bottom: 1.5rem; color: #9CA3AF; }
.article-body li { margin-bottom: 0.5rem; color: #9CA3AF; }
.article-body hr { border-color: rgba(255,255,255,0.1); margin: 2.5rem 0; }
.article-body em { color: #E5E7EB; }
.article-body strong { color: #fff; font-weight: 600; }
.article-body a { color: #E55D35; text-decoration: underline; text-underline-offset: 2px; }
.article-body a:hover { color: #fff; }
.article-body p strong { color: #fff; font-weight: 600; }
.article-body p em { color: #E5E7EB; }
.article-body p a { color: #E55D35; text-decoration: underline; text-underline-offset: 2px; }
