/* --- تنسيق التذييل الفخم والمستقر --- */
.footer-section {
    background: linear-gradient(135deg, #3C9CD1 0%, #2c3e50 100%);
    padding: 60px 0 30px;
    color: #ffffff;
    width: 100%;
    margin-top: 100px;
    clear: both; /* يمنع تداخل العناصر العلوية */
}

.footer-container { 
    max-width: 1140px; 
    margin: 0 auto; 
    padding: 0 20px;
    display: flex;
    flex-direction: column; /* ترتيب العناصر عمودياً لمنع التداخل */
    gap: 40px;
}

.footer-top { 
    display: flex; 
    flex-wrap: wrap; 
    justify-content: space-between; 
    gap: 30px;
}

.footer-info { flex: 1; min-width: 300px; }
.footer-contact-block { flex: 1; min-width: 300px; display: flex; flex-direction: column; align-items: flex-start; }

.footer-title { font-size: 24px; font-weight: bold; margin-bottom: 20px; border-right: 5px solid #f1c40f; padding-right: 15px; }
.footer-description { font-size: 15px; line-height: 1.8; opacity: 0.9; margin-bottom: 20px; }

.contact-list { list-style: none; padding: 0; margin-bottom: 20px; }
.contact-list li { display: flex; align-items: center; gap: 15px; margin-bottom: 12px; }
.contact-list img { width: 20px; filter: brightness(0) invert(1); }
.contact-list a { color: white; text-decoration: none; font-size: 16px; }

.social-icons { display: flex; gap: 20px; }
.social-icons a { color: white; font-size: 22px; transition: 0.3s; opacity: 0.8; }
.social-icons a:hover { opacity: 1; transform: translateY(-3px); color: #f1c40f; }

.license-container {
    background: rgba(255, 255, 255, 0.1);
    padding: 20px;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    max-width: 250px;
}
.license-container img { max-width: 100%; border-radius: 10px; margin-bottom: 10px; }

.map-container {
    width: 100%;
    height: 300px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}
.map-container iframe { width: 100%; height: 100%; border: 0; }

.footer-bottom {
    text-align: center;
    padding-top: 30px;
    border-top: 1px solid rgba(255,255,255,0.1);
    font-size: 14px;
    opacity: 0.8;
}