 .contact-section {
     padding: 60px 20px;
     text-align: center;
 }

 .contact-title {
     font-size: 2.5rem;
     color: var(--color-primary);
     margin-bottom: 40px;
     animation: fadeDown 1s ease;
 }

 /* Contact Grid */
 .contact-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
     gap: 20px;
     margin-bottom: 50px;
 }

 .contact-card {
     background: #fff;
     padding: 20px;
     border-radius: var(--border-radius);
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
     transition: transform 0.3s ease, box-shadow 0.3s ease;
     text-align: left;
     animation: fadeUp 1s ease;
 }

 .contact-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
 }

 .contact-card h3 {
     font-size: 1.25rem;
     margin-bottom: 10px;
     color: var(--color-secondary);
 }

 .contact-card p {
     font-size: 0.95rem;
     color: var(--text-dark);
     margin: 5px 0;
 }

 .contact-card a {
     color: var(--color-primary);
     text-decoration: none;
 }

 .contact-card a:hover {
     text-decoration: underline;
 }

 /* Contact Form */
 .contact-form-wrapper {
     max-width: 800px;
     margin: 0 auto;
     animation: fadeUp 1.5s ease;
     margin: 30px auto;
 }

 /* Animations */
 @keyframes fadeDown {
     from {
         opacity: 0;
         transform: translateY(-30px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 @keyframes fadeUp {
     from {
         opacity: 0;
         transform: translateY(30px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }
