.footer { background-color: #f5f5f5; padding: 40px 20px; font-family: Arial, sans-serif; } .footer-content { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 30px; } .footer-section { margin-bottom: 20px; } .footer-section h3 { color: #2c4f3f; font-size: 16px; margin-bottom: 15px; font-weight: bold; } .footer-section ul { list-style: none; padding: 0; margin: 0; } .footer-section ul li { margin-bottom: 8px; } .footer-section ul li a { color: #666; text-decoration: none; font-size: 14px; } .footer-section ul li a:hover { color: #2c4f3f; text-decoration: underline; } .newsletter-section { grid-column: 1 / -1; text-align: center; padding: 20px 0; border-top: 1px solid #ddd; margin-top: 20px; } .newsletter-form { display: flex; max-width: 500px; margin: 15px auto; gap: 10px; } .newsletter-input { flex: 1; padding: 10px; border: 1px solid #ddd; border-radius: 4px; } .newsletter-button { background-color: #2c4f3f; color: white; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; transition: background-color 0.3s; } .newsletter-button:hover { background-color: #1a3028; } .bottom-footer { text-align: center; padding-top: 20px; border-top: 1px solid #ddd; margin-top: 20px; color: #666; font-size: 12px; } .social-links { display: flex; justify-content: center; gap: 15px; margin: 15px 0; } .social-links a { color: #666; text-decoration: none; font-size: 20px; } .library-hours { background-color: #fff; padding: 15px; border-radius: 4px; margin-bottom: 15px; } .library-hours p { margin: 5px 0; font-size: 14px; color: #444; } @media (max-width: 768px) { .footer-content { grid-template-columns: 1fr 1fr; } .newsletter-form { flex-direction: column; } .newsletter-button { width: 100%; } } @media (max-width: 480px) { .footer-content { grid-template-columns: 1fr; } }