Spaces:
Running
Running
| /* Smooth scroll behavior */ | |
| html { | |
| scroll-behavior: smooth; | |
| } | |
| /* Reveal on scroll */ | |
| .reveal { | |
| opacity: 0; | |
| transform: translateY(16px); | |
| transition: opacity .7s ease, transform .7s ease; | |
| } | |
| .reveal.visible { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| /* Blob animations */ | |
| .blob { | |
| animation: float 16s ease-in-out infinite; | |
| } | |
| .blob-fuchsia { | |
| animation-duration: 20s; | |
| } | |
| .blob-spin { | |
| animation: spin 40s linear infinite; | |
| } | |
| @keyframes float { | |
| 0% { transform: translateY(0) translateX(0); } | |
| 50% { transform: translateY(-24px) translateX(16px); } | |
| 100% { transform: translateY(0) translateX(0); } | |
| } | |
| @keyframes spin { | |
| 0% { transform: translateX(-50%) rotate(0deg); } | |
| 100% { transform: translateX(-50%) rotate(360deg); } | |
| } | |
| /* Optional: Reduce motion preference */ | |
| @media (prefers-reduced-motion: reduce) { | |
| .reveal, .blob, .blob-fuchsia, .blob-spin { | |
| animation: none ; | |
| transition: none ; | |
| opacity: 1 ; | |
| transform: none ; | |
| } | |
| } | |
| /* Simple prose styling for modal content */ | |
| .prose h4 { | |
| margin: 1rem 0 .5rem; | |
| font-weight: 600; | |
| } | |
| .prose p { | |
| margin: .5rem 0; | |
| color: #374151; | |
| } | |
| .prose ul { | |
| margin: .5rem 0 .5rem 1.25rem; | |
| color: #374151; | |
| } |