
 /* =============================================
           5. FOOTER COMPONENT
        ============================================= */
 .footer {
     background-color: var(--primary-blue);
     color: var(--white);
     padding-top: 60px;
     padding-bottom: 20px;
 }

 .footer-grid {
     display: grid;
     grid-template-columns: 1fr;
     gap: 40px;
     margin-bottom: 40px;
     align-items: start;
     justify-items: center;
 }

 .footer-title {
     color: var(--accent-yellow);
     padding: 1rem 0;
     font-size: var(--fs-base);
     text-transform: uppercase;
     letter-spacing: 0.5px;
     font-weight: 700;
 }

 .footer ul li {
     margin-bottom: 8px;
     font-size: var(--fs-sm);
     opacity: 0.9;
 }

 .footer ul li a:hover {
     color: var(--accent-yellow);
     opacity: 1;
 }

 .footer-logo-box {
     padding: 10px 0;
     border-radius: 8px;
     display: inline-block;
     margin-bottom: 15px;
     min-height: 65px;
 }

 .footer-logo-box svg {
     width: 220px;
     height: 65px;
 }

 .footer-tagline {
     font-size: var(--fs-sm);
     line-height: 1.4;
     margin-bottom: 20px;
     opacity: 0.8;
     max-width: 250px;
     margin-left: auto;
     margin-right: auto;
 }

 .social-row {
     display: flex;
     gap: 10px;
     justify-content: center;
 }

 .social-btn {
     width: 36px;
     height: 36px;
     background: rgba(255, 255, 255, 0.1);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: background 0.3s;
 }

 .social-btn:hover {
     background: var(--accent-yellow);
 }

 .social-btn svg {
     width: 18px;
     height: 18px;
     fill: var(--white);
 }

 .social-btn:hover svg {
     fill: var(--primary-blue);
 }

 .footer-contact-item {
     display: flex;
     gap: 10px;
     margin-bottom: 15px;
     font-size: var(--fs-sm);
     opacity: 0.9;
     justify-content: center;
     text-align: center;
 }

 .footer-contact-icon {
     flex-shrink: 0;
     fill: var(--accent-yellow);
 }

 .footer-bottom {
     border-top: 1px solid rgba(255, 255, 255, 0.1);
     padding-top: 20px;
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 10px;
     font-size: var(--fs-sm);
     opacity: 0.6;
     text-align: center;
 }

 .footer-links a {
     margin: 0 10px;
 }

 .footer-links a:hover {
     color: var(--white);
     text-decoration: underline;
 }

 @media (min-width: 600px) {
     .footer-grid {
         grid-template-columns: repeat(2, 1fr);
         justify-items: start;
         text-align: left;
     }

     .footer-tagline,
     .footer-contact-item,
     .social-row {
         margin-left: 0;
         margin-right: 0;
         justify-content: flex-start;
         text-align: left;
     }
 }

 @media (min-width: 1024px) {
     .footer-grid {
         grid-template-columns: repeat(4, 1fr);
     }
 }

 @media (min-width: 768px) {
     .footer-bottom {
         flex-direction: column;
         justify-content: space-between;
         text-align: left;
     }

     .footer-links a {
         margin-right: 0;
         text-align: center;
     }
 }
 @media (max-width: 425px) {
     .footer {
         text-align: center;
     }

     .footer-links a {
         padding: 0.5rem;
     }
 }

/* ============================================
   PRE-FOOTER
   ============================================ */
.pre-footer {
    background-color: #f9f9f9;
    text-align: center;
    border-top: 5px solid var(--accent-yellow);
}

.pre-footer-title {
    color: var(--primary-blue);
    margin-bottom: 20px;
    font-size: var(--fs-2xl);
}
