.footer { background: linear-gradient(135deg, #a855f7, #ec4899); /* Purple/Pink gradient per user image */ color: white; padding: 6rem 0 3rem; /* Increase top padding */ position: relative; margin-top: 0; } .footer::before { content: ''; position: absolute; top: -100px; left: 0; right: 0; height: 100px; background: linear-gradient(to bottom, transparent, var(--background)); pointer-events: none; } .footerContent { display: grid; grid-template-columns: 1fr; gap: 3rem; margin-bottom: 3rem; } @media (min-width: 768px) { .footerContent { grid-template-columns: 1.5fr 2fr; } } .brandSection { display: flex; flex-direction: column; gap: 1.5rem; } .logo { display: flex; align-items: center; gap: 0.5rem; font-size: 1.5rem; font-weight: 700; font-family: var(--font-display); text-decoration: none; color: white; width: fit-content; } .logoIcon { font-size: 2rem; } .logoText { color: white; } .brandDescription { color: rgba(255, 255, 255, 0.9); line-height: 1.6; max-width: 350px; } .socialLinks { display: flex; gap: 1rem; } .socialLink { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background: rgba(255, 255, 255, 0.1); border-radius: var(--radius-lg); text-decoration: none; font-size: 1.25rem; transition: all 0.3s ease; backdrop-filter: blur(10px); } .socialLink:hover { background: rgba(255, 255, 255, 0.2); transform: translateY(-3px); } .linksGrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; } @media (min-width: 640px) { .linksGrid { grid-template-columns: repeat(4, 1fr); } } .linkColumn { display: flex; flex-direction: column; gap: 1rem; } .columnTitle { font-size: 1rem; font-weight: 700; color: white; margin-bottom: 0.5rem; font-family: var(--font-display); } .footerLink { color: rgba(255, 255, 255, 0.8); text-decoration: none; font-size: 0.9rem; transition: all 0.3s ease; width: fit-content; } .footerLink:hover { color: white; transform: translateX(5px); } .bottomBar { display: flex; flex-direction: column; gap: 1rem; align-items: center; justify-content: center; /* Centered */ padding-top: 2rem; border-top: 1px solid rgba(255, 255, 255, 0.2); } @media (min-width: 768px) { .bottomBar { flex-direction: row; } } .copyright { color: rgba(255, 255, 255, 0.8); font-size: 0.9rem; } .badges { display: flex; gap: 1rem; flex-wrap: wrap; } .badge { display: flex; align-items: center; gap: 0.25rem; padding: 0.5rem 1rem; background: rgba(255, 255, 255, 0.1); border-radius: var(--radius-lg); font-size: 0.85rem; backdrop-filter: blur(10px); }