/* Improved Footer Styles */

.footer {
    background-color: var(--dark-bg);
    color: var(--light);
    padding: 4rem 0 2rem;
    position: relative;
    overflow: hidden;
}

.footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.com/svgjs' width='1920' height='500' preserveAspectRatio='none' viewBox='0 0 1920 500'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1016%26quot%3b)' fill='none'%3e%3crect width='1920' height='500' x='0' y='0' fill='rgba(23, 23, 23, 1)'%3e%3c/rect%3e%3cpath d='M0,510.875C91.509,497.156,190.675,513.7,262.632,457.321C329.573,405.164,330.701,313.527,372.304,241.095C418.163,161.381,525.385,120.353,525.224,30.171C525.065,-59.168,421.494,-107.652,363.162,-178.279C311.703,-240.46,278.494,-320.323,201.964,-353.902C126.267,-387.133,39.779,-355.862,-39.931,-337.219C-122.13,-318.038,-198.558,-311.958,-265.909,-264.071C-332.555,-216.731,-381.324,-150.318,-414.418,-76.238C-448.595,0.197,-468.169,85.667,-450.574,168.285C-433.391,249.036,-378.48,313.519,-319.724,372.608C-252.775,439.928,-160.354,473.26,-78.283,499.361C-25.807,516.552,28.303,489.751,78.556,502.14C78.556,502.14,78.556,502.14,78.556,502.14' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3cpath d='M1920 1021.348C2026.366 1017.963 2140.301 1055.862 2227.536 995.27 2315.077 934.452 2334.166 813.807 2367.883 707.673 2402.069 600.134 2457.267 497.051 2425.408 387.841 2393.845 279.639 2284.551 211.78 2197.073 143.018 2121.166 82.894 2051.106 13.952 1953.474 0.4 1855.981-13.127 1770.2 58.243 1674.981 83.873 1583.532 108.606 1476.628 79.329 1406.014 144.893 1335.039 210.772 1341.92 322.798 1311.301 414.797 1280.488 507.247 1209.261 577.767 1211.97 674.868 1214.625 769.985 1289.499 836.553 1359.133 900.273 1429.128 964.323 1515.961 1011.608 1612.229 1028.193 1705.915 1044.337 1811.891 1024.805 1920 1021.348' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1016'%3e%3crect width='1920' height='500' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-position: center;
    background-size: cover;
    opacity: 0.5;
    z-index: 0;
}

.footer .container {
    position: relative;
    z-index: 1;
}

.footer h4, .footer h5 {
    color: var(--primary);
    margin-bottom: 1.5rem;
    font-weight: 700;
}

.footer p {
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 1rem;
    line-height: 1.6;
}

.text-light-muted {
    color: rgba(255, 255, 255, 0.7);
}

.social-icons {
    display: flex;
    align-items: center;
    margin-top: 1.5rem;
}

.social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--light);
    font-size: 1rem;
    transition: all 0.3s ease;
    margin-right: 0.8rem;
    text-decoration: none;
}

.social-icons a:hover {
    background-color: var(--primary);
    color: var(--dark);
    transform: translateY(-3px);
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 0.8rem;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
    position: relative;
}

.footer-links a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    bottom: -3px;
    left: 0;
    background-color: var(--primary);
    transition: all 0.3s ease;
}

.footer-links a:hover {
    color: var(--primary);
}

.footer-links a:hover::after {
    width: 100%;
}

.copyright {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.9rem;
    margin-top: 2rem;
    text-align: center;
}

.footer hr {
    border-color: rgba(255, 255, 255, 0.1);
    margin: 2rem 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .footer {
        padding: 3rem 0 2rem;
        text-align: center;
    }
    
    .footer h4, .footer h5 {
        margin-top: 2rem;
    }
    
    .social-icons {
        justify-content: center;
    }
    
    .footer-links {
        margin-bottom: 2rem;
    }
}
