| /* Custom styles that complement Tailwind */ | |
| /* Smooth scrolling */ | |
| html { | |
| scroll-behavior: smooth; | |
| } | |
| /* Custom underline animation */ | |
| .link-underline { | |
| position: relative; | |
| display: inline-block; | |
| } | |
| .link-underline::after { | |
| content: ''; | |
| position: absolute; | |
| width: 0; | |
| height: 2px; | |
| bottom: -2px; | |
| left: 0; | |
| background-color: #3b82f6; /* blue-500 */ | |
| transition: width 0.3s ease; | |
| } | |
| .link-underline:hover::after { | |
| width: 100%; | |
| } | |
| /* Custom pulse animation for important elements */ | |
| @keyframes pulse { | |
| 0%, 100% { | |
| opacity: 1; | |
| } | |
| 50% { | |
| opacity: 0.7; | |
| } | |
| } | |
| .pulse-animation { | |
| animation: pulse 2s infinite; | |
| } | |
| /* Custom section spacing */ | |
| .section-spacing { | |
| padding-top: 5rem; | |
| padding-bottom: 5rem; | |
| } | |
| /* Custom card hover effect */ | |
| .card-hover:hover { | |
| transform: translateY(-5px); | |
| transition: transform 0.3s ease; | |
| } | |
| /* Custom scrollbar */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: #f1f1f1; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: #3b82f6; /* blue-500 */ | |
| border-radius: 4px; | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: #2563eb; /* blue-600 */ | |
| } |