/* Footer Styles */
.footer {
    background: var(--color-primary);
    color: var(--color-bg-white);
    padding: var(--space-3xl) 0 var(--space-lg);
}

.footer-content {
    display: grid;
    grid-template-columns: 1.5fr 2fr;
    gap: var(--space-3xl);
    margin-bottom: var(--space-2xl);
}

.footer-brand {
    max-width: 400px;
}

.footer-logo {
    height: 80px;
    width: auto;
    margin-bottom: var(--space-lg);
    border-radius: var(--radius-md);
}

.footer-tagline {
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.7;
    font-size: var(--text-base);
}

.footer-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-xl);
}

.footer-column h4 {
    font-size: var(--text-lg);
    margin-bottom: var(--space-md);
    font-family: var(--font-heading);
    color: var(--color-secondary-light);
}

.footer-column ul {
    list-style: none;
}

.footer-column li {
    margin-bottom: var(--space-sm);
}

.footer-column a {
    color: rgba(255, 255, 255, 0.8);
    font-size: var(--text-sm);
    transition: all var(--transition-fast);
    display: inline-block;
}

.footer-column a:hover {
    color: var(--color-secondary-light);
    transform: translateX(5px);
}

.footer-bottom {
    padding-top: var(--space-lg);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    text-align: center;
}

.footer-bottom p {
    color: rgba(255, 255, 255, 0.7);
    font-size: var(--text-sm);
    margin-bottom: var(--space-xs);
}

.heart {
    color: var(--color-secondary-light);
    display: inline-block;
    animation: heartbeat 1.5s infinite;
}

@keyframes heartbeat {
    0%, 100% {
        transform: scale(1);
    }
    10%, 30% {
        transform: scale(1.1);
    }
    20%, 40% {
        transform: scale(1);
    }
}
