.footer-developer-link:hover {
    transform: none;
}/* css/footer.css */
.footer {
background: linear-gradient(135deg, var(--charcoal) 0%, var(--warm-gray-800) 100%);
color: rgba(255, 255, 255, 0.9);
padding: var(--spacing-16) 0 0;
position: relative;
overflow: hidden;
margin: 0;
}

.footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent 0%, var(--gold) 50%, transparent 100%);
}

.footer::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: 
    radial-gradient(circle at 30% 20%, rgba(212, 175, 55, 0.02) 0%, transparent 50%),
    radial-gradient(circle at 70% 80%, rgba(212, 175, 55, 0.01) 0%, transparent 50%);
pointer-events: none;
}

.footer-content {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: var(--spacing-8);
margin-bottom: var(--spacing-8);
position: relative;
z-index: 2;
}

.footer-brand {
padding-right: var(--spacing-4);
}

.footer-logo {
margin-bottom: var(--spacing-4);
}

.footer-description {
line-height: 1.7;
margin-bottom: var(--spacing-6);
color: rgba(255, 255, 255, 0.8);
font-size: var(--font-size-base);
}

.footer-links h4,
.footer-services h4,
.footer-contact h4 {
font-size: var(--font-size-lg);
font-weight: 600;
color: var(--white);
margin-bottom: var(--spacing-4);
position: relative;
letter-spacing: -0.01em;
}

.footer-links h4::after,
.footer-services h4::after,
.footer-contact h4::after {
content: '';
position: absolute;
bottom: -6px;
left: 0;
width: 30px;
height: 2px;
background: var(--gradient-primary);
border-radius: 1px;
}

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

.footer-links li,
.footer-services li {
margin-bottom: var(--spacing-3);
transition: transform var(--transition-normal);
}

.footer-links li:hover,
.footer-services li:hover {
transform: translateX(4px);
}

.footer-links a {
color: rgba(255, 255, 255, 0.8);
text-decoration: none;
transition: all var(--transition-normal);
font-size: var(--font-size-base);
position: relative;
display: inline-block;
}

.footer-links a::before {
content: '';
position: absolute;
bottom: -2px;
left: 0;
width: 0;
height: 1px;
background: var(--gold-light);
transition: width var(--transition-normal);
}

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

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

.footer-services li {
color: rgba(255, 255, 255, 0.8);
font-size: var(--font-size-base);
position: relative;
padding-left: var(--spacing-4);
}

.footer-services li::before {
content: '•';
position: absolute;
left: 0;
top: 0;
color: var(--gold);
font-weight: bold;
}

.footer-contact-item {
display: flex;
align-items: center;
gap: var(--spacing-3);
margin-bottom: var(--spacing-3);
padding: var(--spacing-2);
border-radius: var(--radius);
transition: all var(--transition-normal);
}

.footer-contact-item:hover {
background: rgba(212, 175, 55, 0.05);
transform: translateX(4px);
}

.footer-contact-item svg {
width: 18px;
height: 18px;
color: var(--gold-light);
flex-shrink: 0;
}

.footer-contact-item span {
color: rgba(255, 255, 255, 0.8);
font-size: var(--font-size-base);
}

.footer-bottom {
border-top: 1px solid rgba(212, 175, 55, 0.2);
padding: var(--spacing-6) 0;
text-align: center;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: var(--spacing-4);
position: relative;
z-index: 2;
margin: 0;
}

.footer-bottom::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 1px;
background: var(--gradient-primary);
}

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

.footer-developer-link {
color: var(--gold-light);
text-decoration: none;
font-weight: 600;
transition: all var(--transition-normal);
position: relative;
}

.footer-developer-link::before {
content: '';
position: absolute;
bottom: -2px;
left: 0;
width: 0;
height: 1px;
background: var(--gold-light);
transition: width var(--transition-normal);
}

.footer-developer-link:hover {
color: var(--gold);
transform: translateY(-1px);
}

.footer-developer-link:hover::before {
width: 100%;
}

/* Otimizações específicas para dispositivos móveis */
@media (max-width: 768px) {
.footer {
    padding: var(--spacing-8) 0 0; /* Reduzido de spacing-16 para spacing-8 */
}

.footer-content {
    grid-template-columns: 1fr;
    gap: var(--spacing-4); /* Reduzido de spacing-8 para spacing-4 */
    text-align: left; /* Mudado de center para left para melhor organização */
    margin-bottom: var(--spacing-4); /* Reduzido de spacing-8 para spacing-4 */
}

/* Ocultar seções de Navegação e Serviços no mobile */
.footer-links,
.footer-services {
    display: none;
}

.footer-brand {
    padding-right: 0;
    margin-bottom: var(--spacing-3); /* Reduzido de spacing-4 para spacing-3 */
    text-align: center; /* Brand centralizada */
}

.footer-description {
    font-size: var(--font-size-sm); /* Reduzido o tamanho da fonte */
    line-height: 1.5; /* Reduzido de 1.7 para 1.5 */
    margin-bottom: var(--spacing-4); /* Reduzido de spacing-6 para spacing-4 */
    text-align: center; /* Descrição centralizada */
}

.footer-contact h4 {
    font-size: var(--font-size-base); /* Reduzido de font-size-lg */
    margin-bottom: var(--spacing-2); /* Reduzido de spacing-4 para spacing-2 */
}

.footer-contact h4::after {
    display: none; /* Remove as barrinhas decorativas para economizar espaço */
}

.footer-contact-item {
    margin-bottom: var(--spacing-2); /* Reduzido de spacing-3 para spacing-2 */
    padding: var(--spacing-1); /* Reduzido de spacing-2 para spacing-1 */
    justify-content: flex-start; /* Alinhamento à esquerda */
}

.footer-contact-item svg {
    width: 16px; /* Reduzido de 18px para 16px */
    height: 16px;
}

.footer-contact-item span {
    font-size: var(--font-size-sm); /* Reduzido para font-size-sm */
}

.footer-bottom {
    flex-direction: column;
    text-align: center;
    gap: var(--spacing-2);
    padding: var(--spacing-3) 0; /* Reduzido de spacing-6 para spacing-3 */
}

.footer-bottom p {
    font-size: 12px; /* Fonte ainda menor para o copyright */
    line-height: 1.4;
}

/* Remove animações hover no mobile para melhor performance */
.footer-contact-item:hover {
    transform: none;
}
}

/* Para dispositivos muito pequenos (menos de 480px) */
@media (max-width: 480px) {
.footer {
    padding: var(--spacing-6) 0 0; /* Ainda mais compacto */
}

.footer-content {
    gap: var(--spacing-3); /* Gap ainda menor */
}

.footer-brand {
    margin-bottom: var(--spacing-2);
}

.footer-description {
    margin-bottom: var(--spacing-3);
}

.footer-bottom {
    padding: var(--spacing-2) 0; /* Footer bottom mais fino */
}
}