/* ==========================================================================
   THE PERFECT VERTICAL ARCHITECTURE (FULL FIX FOR PC, MOBILE & IMAGES)
   ========================================================================== */

:root {
    --bg-light-1: #ffffff;       
    --bg-light-2: #f8fafc;       
    --text-dark: #0f172a;        
    --text-muted: #475569;       
    --accent-gradient: linear-gradient(135deg, #00bfa5, #00e676);
    --border-light: rgba(15, 23, 42, 0.08);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth; /* Ø§Ù†ØªÙ‚Ø§Ù„ Ø³Ù„Ø³ Ù„Ù„ØºØ§ÙŠØ© Ø¹Ù†Ø¯ Ø§Ù„Ø¶ØºØ· Ø¹Ù„Ù‰ Ø£Ø²Ø±Ø§Ø± Ø§Ù„Ù€ Navigation Ù„Ù„Ø°Ù‡Ø§Ø¨ Ù„Ù„Ù‚Ø³Ù… */
}

body {
    width: 100%;
    background: var(--bg-light-1);
    font-family: 'Poppins', sans-serif;
    color: var(--text-dark);
    overflow-x: hidden; /* Ù…Ù†Ø¹ Ø£ÙŠ Ø§Ù‡ØªØ²Ø§Ø² Ø£Ùˆ ØªÙ…Ø±ÙŠØ± Ø¬Ø§Ù†Ø¨ÙŠ */
}

/* =================== Ø§Ù„Ù‡ÙŠÙƒÙ„ Ø§Ù„Ø¹Ù…ÙˆØ¯ÙŠ Ø§Ù„Ù…ÙˆØ­Ø¯ Ù„Ù„Ø£Ù‚Ø³Ø§Ù… (Vertical Layout) =================== */
.panels-container {
    display: block; /* Ø¥Ù„ØºØ§Ø¡ Ø§Ù„Ù€ Flex Ø§Ù„Ø£ÙÙ‚ÙŠ ØªÙ…Ø§Ù…Ø§Ù‹ Ù„ÙŠØµØ¨Ø­ Ø§Ù„Ù…ÙˆÙ‚Ø¹ Ø¹Ù…ÙˆØ¯ÙŠØ§Ù‹ ØªÙ‚Ù„ÙŠØ¯ÙŠØ§Ù‹ ÙˆÙ…Ø³ØªÙ‚Ø±Ø§Ù‹ */
    width: 100%;
}

.panel {
    width: 100%;
    min-height: 100vh; /* ÙƒÙ„ Ù‚Ø³Ù… ÙŠØ£Ø®Ø° Ø§Ù„Ø§Ø±ØªÙØ§Ø¹ Ø§Ù„ÙƒØ§Ù…Ù„ Ù„Ù„Ø´Ø§Ø´Ø© ÙˆÙŠØ²ÙŠØ¯ Ø­Ø³Ø¨ Ø§Ù„Ù…Ø­ØªÙˆÙ‰ ØªÙ„Ù‚Ø§Ø¦ÙŠØ§Ù‹ */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 120px 24px 60px 24px; /* Ù…Ø³Ø§ÙØ© Ø¹Ù„ÙˆÙŠØ© Ù…Ù…ØªØ§Ø²Ø© ØªØ¶Ù…Ù† Ø¹Ø¯Ù… Ø§Ø®ØªÙØ§Ø¡ Ø§Ù„Ø¹Ù†Ø§ÙˆÙŠÙ† ØªØ­Øª Ø§Ù„Ù‡ÙŠØ¯Ø± Ø§Ù„Ø«Ø§Ø¨Øª */
}

/* ØªÙˆØ²ÙŠØ¹ Ø®Ù„ÙÙŠØ§Øª Ø§Ù„Ø£Ù‚Ø³Ø§Ù… Ø§Ù„Ù…ØªÙ†Ø§ÙˆØ¨Ø© */
.hero-video-section { background: #050811; padding-top: 0; } 
.about { background: var(--bg-light-1); }
.services { background: var(--bg-light-2); flex-direction: column; }
.works { background: var(--bg-light-1); flex-direction: column; }
.convince { background: var(--bg-light-2); }

/* =================== Ø§Ù„Ù‡ÙŠØ¯Ø± Ø§Ù„ÙØ§Ø®Ø± Ø§Ù„Ø«Ø§Ø¨Øª (Ù‚ÙÙ„ ÙˆØ­Ù„ Ù…Ø´ÙƒÙ„Ø© Ø§Ù„Ø§Ø®ØªÙØ§Ø¡) =================== */
.navbar-glass {
    position: fixed;
    top: 0; 
    left: 0;
    width: 100%; 
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 40px; 
    background: #0f172a; /* Ø®Ù„ÙÙŠØ© Ø¯Ø§ÙƒÙ†Ø© ØµÙ„Ø¨Ø© 100% ØªÙ…Ù†Ø¹ ØªØ¯Ø§Ø®Ù„ Ø§Ù„Ù†ØµÙˆØµ Ù…Ø¹ Ù…Ø§ ÙŠÙ…Ø± Ø®Ù„ÙÙ‡Ø§ */
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    z-index: 999999; /* Ø£Ø¹Ù„Ù‰ Ø·Ø¨Ù‚Ø© ÙÙŠ Ø§Ù„Ù…ÙˆÙ‚Ø¹ Ù„Ø¶Ù…Ø§Ù† Ø¨Ù‚Ø§Ø¡ Ø§Ù„Ø£Ø²Ø±Ø§Ø± Ø¸Ø§Ù‡Ø±Ø© Ø¯Ø§Ø¦Ù…Ø§Ù‹ ÙÙˆÙ‚ ÙƒÙ„ Ø´ÙŠØ¡ */
    box-shadow: 0 4px 25px rgba(0, 0, 0, 0.3);
}

.navbar-glass .logo {
    font-size: 1.35rem;
    font-weight: 700;
    color: #ffffff;
    text-decoration: none;
}

.navbar-glass nav { 
    display: flex; 
    gap: 15px; 
}

.navbar-glass nav a {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.9rem; 
    padding: 6px 14px;
    border-radius: 50px;
    transition: all 0.3s ease;
}

.navbar-glass nav a:hover, 
.navbar-glass nav a.active {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.15);
}

/* =================== Ø´Ø§Ø´Ø© Ø§Ù„Ù€ HERO ÙˆØ§Ù„ÙÙŠØ¯ÙŠÙˆ Ø§Ù„Ø®Ù„ÙÙŠ =================== */
.video-wrapper { 
    position: absolute; 
    inset: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 1; 
    pointer-events: none;
}

.hero-video-section video { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    filter: brightness(0.38); 
}

.hero-video-overlay {
    position: absolute;
    inset: 0;
    background: rgba(5, 8, 17, 0.3);
    z-index: 2;
}

.hero-video-content { 
    position: relative; 
    z-index: 3; 
    color: white; 
    text-align: center; 
    max-width: 850px; 
    padding: 140px 20px 60px 20px;
}

.premium-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 191, 165, 0.15);
    border: 1px solid rgba(0, 191, 165, 0.3);
    color: #00e676;
    padding: 6px 16px;
    border-radius: 100px;
    font-size: 0.85rem;
    margin-bottom: 25px;
    font-weight: 600;
}

.hero-video-content h1 { font-size: 3.3rem; line-height: 1.2; margin-bottom: 20px; font-weight: 700; }
.gradient-text { background: var(--accent-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.hero-video-content p { font-size: 1.2rem; margin-bottom: 35px; color: rgba(255, 255, 255, 0.85); }

.hero-buttons { display: flex; justify-content: center; gap: 18px; }
.hero-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 13px 30px;
    border-radius: 50px;
    background: var(--accent-gradient);
    color: #0f172a;
    text-decoration: none;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(0, 230, 118, 0.25);
}
.hero-btn-glass {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 13px 30px;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    text-decoration: none;
}

/* =================== Ø¨Ø·Ø§Ù‚Ø§Øª Ø§Ù„Ø£Ù‚Ø³Ø§Ù… Ø§Ù„Ø§ÙØªØ±Ø§Ø¶ÙŠØ© =================== */
.glass-card {
    background: #ffffff;
    border: 1px solid var(--border-light);
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.04);
    max-width: 1050px;
    width: 100%;
}

/* =================== Ø­Ù€Ù„ Ù…Ø´ÙƒÙ„Ø© Ø§Ù†Ø¶ØºØ§Ø· ÙˆÙ‚Øµ Ø§Ù„Ù€ PHOTOS (Ù…Ø¹Ø±Ø¶ Ø§Ù„Ø£Ø¹Ù…Ø§Ù„) =================== */
.works .container { max-width: 1100px; width: 100%; }
.section-header { text-align: center; margin-bottom: 35px; }
.section-header h2 { font-size: 2.4rem; font-weight: 700; color: var(--text-dark); margin-bottom: 8px; }

.filter-buttons { display: flex; justify-content: center; gap: 10px; margin-bottom: 30px; flex-wrap: wrap; }
.filter-btn { padding: 9px 22px; border: 1px solid #cbd5e1; border-radius: 50px; background: white; font-size: 0.88rem; color: var(--text-muted); cursor: pointer; transition: 0.2s; }
.filter-btn.active { background: var(--accent-gradient); color: white; border-color: transparent; }

/* Ø¥Ù„ØºØ§Ø¡ Ø§Ù„Ù€ max-height ÙˆØ§Ù„Ù€ overflow Ø§Ù„ØªÙ…Ø±ÙŠÙ‘Ø±ÙŠ Ø§Ù„Ø¯Ø§Ø®Ù„ÙŠ Ù„Ù„ØµÙˆØ± Ù„ØªØ¹Ø±Ø¶ Ø¹Ù…ÙˆØ¯ÙŠØ§Ù‹ Ø¨Ø´ÙƒÙ„ Ø¨Ø±ÙŠÙ…ÙŠÙˆÙ… ÙˆÙ…Ø±ÙŠØ­ Ø¬Ø¯Ø§Ù‹ Ø§Ù„Ø¹ÙŠÙ† */
.scrollable-images-container { 
    width: 100%; 
    max-height: none; 
    overflow-y: visible; 
}

/* ØªØ­Ø¯ÙŠØ« Ø§Ù„Ù€ Grid Ù„ÙŠÙƒÙˆÙ† Ù…ØªÙ†Ø§Ø³Ù‚ ÙˆØªÙ„Ù‚Ø§Ø¦ÙŠ Ø§Ù„Ø£Ø¨Ø¹Ø§Ø¯ Ù„Ù…Ù†Ø¹ Ø¶ØºØ· Ø§Ù„ØµÙˆØ± Ø§Ù„Ø¸Ø§Ù‡Ø± Ø¨Ø§Ù„ØµÙˆØ±Ø© Ø§Ù„Ø«Ø§Ù„Ø«Ø© */
.gallery-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); /* 3 Ø£Ø¹Ù…Ø¯Ø© Ù…ØªÙ†Ø§Ø³Ù‚Ø© Ø¬Ø¯Ø§Ù‹ Ø¹Ù„Ù‰ Ø§Ù„ÙƒÙ…Ø¨ÙŠÙˆØªØ± */
    gap: 24px; 
    width: 100%; 
}

/* Ø­Ù„ Ø¬Ø°Ø±ÙŠ ÙˆØªØ«Ø¨ÙŠØª Ø£Ø¨Ø¹Ø§Ø¯ ÙƒØ±ÙˆØª Ø§Ù„ØµÙˆØ± Ù„Ù…Ù†Ø¹ Ø§Ù„ØªØ´ÙˆÙ‡ */
.custom-project-item { 
    position: relative; 
    width: 100%;
    height: 250px; /* Ø²ÙŠØ§Ø¯Ø© Ø§Ù„Ø§Ø±ØªÙØ§Ø¹ Ù„ÙŠØ¹Ø·ÙŠ Ø§Ù„ØµÙˆØ±Ø© Ù…Ø³Ø§Ø­ØªÙ‡Ø§ Ø§Ù„Ø­Ù‚ÙŠÙ‚ÙŠØ© Ø§Ù„ÙØ§Ø®Ø±Ø© */
    border-radius: 16px; 
    overflow: hidden; 
    box-shadow: 0 8px 25px rgba(0,0,0,0.05);
}

.custom-project-item img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ø§Ù„ØªØºØ·ÙŠØ© Ø§Ù„ÙƒØ§Ù…Ù„Ø© Ø§Ù„Ù…ØªØ²Ù†Ø© Ø¨Ø¯ÙˆÙ† Ø£ÙŠ ØªÙ…Ø·ÙŠØ· Ø£Ùˆ Ø§Ù†Ø¶ØºØ§Ø· Ø¬Ø§Ù†Ø¨ÙŠ Ù„Ù„Ù…Ø§Ø³ÙˆØ±Ø© Ø£Ùˆ Ø§Ù„ØºØ³Ø§Ù„Ø© */
    display: block;
}

/* SERVICES GRID */
.services .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; max-width: 1100px; width: 100%; }
.card-premium { background: #ffffff; border: 1px solid var(--border-light); border-radius: 16px; overflow: hidden; box-shadow: 0 8px 20px rgba(0,0,0,0.02); }
.card-img-container { width: 100%; height: 180px; overflow: hidden; }
.card-img-container img { width: 100%; height: 100%; object-fit: cover; }
.card-content { padding: 20px; text-align: center; color: var(--text-dark); border-top: 1px solid #f1f5f9; }

/* ABOUT COMPONENTS */
.about-flex-container { display: flex; gap: 40px; align-items: center; width: 100%; max-width: 1050px; }
.about-text-box { flex: 1.2; }
.badge-container { display: flex; gap: 10px; margin-bottom: 15px; }
.feature-badge { background: rgba(0, 191, 165, 0.06); border: 1px solid rgba(0, 191, 165, 0.15); color: #00bfa5; padding: 6px 14px; border-radius: 100px; font-size: 0.85rem; font-weight: 600; }
.about-text-box h3 { font-size: 2.2rem; margin-bottom: 15px; font-weight: 700; color: var(--text-dark); }
.about-text-box p { font-size: 1.05rem; line-height: 1.75; color: var(--text-muted); }
.diploma-box { flex: 0.8; background: #f8fafc; border: 1px dashed #cbd5e1; padding: 20px; border-radius: 16px; text-align: center; }
.diploma-box h4 { color: var(--text-dark); font-size: 1.1rem; }
.diploma-img-wrapper { width: 100%; height: 170px; overflow: hidden; border-radius: 10px; margin-top: 15px; }
.diploma-img-wrapper img { width: 100%; height: 100%; object-fit: cover; }

/* WHY CHOOSE US */
.features-grid-french { display: flex; gap: 20px; margin-top: 15px; width: 100%; max-width: 1100px; }
.feature-item-french { flex: 1; background: #ffffff; border: 1px solid var(--border-light); padding: 30px 25px; border-radius: 16px; }
.icon-wrapper { width: 50px; height: 50px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; margin-bottom: 20px; }
.primary-bg { background: rgba(0, 191, 165, 0.1); color: #00bfa5; }
.danger-bg { background: rgba(239, 68, 68, 0.1); color: #ef4444; }
.success-bg { background: rgba(0, 230, 118, 0.1); color: #00e676; }
.feature-item-french h4 { font-size: 1.15rem; margin-bottom: 10px; color: var(--text-dark); font-weight: 600; }
.feature-item-french p { font-size: 0.95rem; line-height: 1.65; color: var(--text-muted); }

/* ==========================================================================
   Ø¥ØµÙ„Ø§Ø­ ÙƒØ§Ø±Øª Ø§Ù„Ø§Ø³ØªÙ…Ø§Ø±Ø© ÙˆÙ…Ù†Ø¹ Ø§Ù†ÙƒØ³Ø§Ø± Ø±ÙˆØ§Ø¨Ø· Ø§Ù„ØªÙˆØ§ØµÙ„ Ø§Ù„Ø³ÙÙ„ÙŠØ© (Form Final Fix)
   ========================================================================== */
.contact {
    position: relative;
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.88), rgba(244, 246, 249, 0.94)), 
                url('../images/about.jpg') no-repeat center center;
    background-size: cover;
    background-position: center;
    padding: 120px 20px 60px 20px; 
    z-index: 5;
}

/* ØµÙ†Ø¯ÙˆÙ‚ Ø§Ù„ØªØ­ÙƒÙ… Ø¨Ø§Ù„Ø§Ø³ØªÙ…Ø§Ø±Ø© Ù„Ù…Ù†Ø¹ Ø§Ù„Ø®Ø±ÙˆØ¬ Ø¹Ù† Ø§Ù„Ø¥Ø·Ø§Ø± Ø§Ù„Ø±Ø£Ø³ÙŠ Ù„Ù„Ù…ÙˆØ¨Ø§ÙŠÙ„ */
.contact-scroll-box {
    width: 100%;
    max-width: 460px; /* Ø§Ù„Ø¹Ø±Ø¶ Ø§Ù„Ù…Ø«Ø§Ù„ÙŠ Ø§Ù„Ù…Ø·Ø§Ø¨Ù‚ Ù„Ø¨Ø·Ø§Ù‚Ø© Ø§Ù„Ø§Ø³ØªÙ…Ø§Ø±Ø© ÙÙŠ Ø§Ù„ØµÙˆØ±Ø© Ø§Ù„Ø«Ø§Ù†ÙŠØ© */
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

.glass-form {
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08) !important;
    border-radius: 24px; 
    overflow: hidden;
    width: 100%;
}

.contact-form-container {
    padding: 26px 24px; 
    width: 100%;
}

.contact-form-container h3 { font-size: 1.5rem; font-weight: 700; margin-bottom: 6px; text-align: center; color: var(--text-dark); }
.form-lead { text-align: center; color: var(--text-muted); font-size: 0.85rem; margin-bottom: 18px; }

.input-group-premium { position: relative; margin-bottom: 12px; }
.input-icon-left { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: #94a3b8; font-size: 0.9rem; }
.input-group-premium textarea + .input-icon-left { top: 18px; }

.input-row-premium { display: flex; gap: 12px; margin-bottom: 12px; }
.input-row-premium .input-group-premium { flex: 1; margin-bottom: 0; }

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form select,
.contact-form textarea {
    width: 100%;
    padding: 11px 14px 11px 40px; 
    border-radius: 10px;
    border: 1px solid #cbd5e1;
    background: #f8fafc;
    color: var(--text-dark);
    font-size: 0.9rem; 
    outline: none;
}
.contact-form textarea { height: 70px; resize: none; }

.form-row-datetime { display: flex; gap: 12px; margin-bottom: 12px; }
.datetime-block { flex: 1; }
.datetime-block label { display: block; font-size: 0.72rem; margin-bottom: 4px; color: var(--text-muted); font-weight: 600; }
.datetime-block input { width: 100%; padding: 8px 12px; border-radius: 8px; font-size: 0.85rem; border: 1px solid #cbd5e1; background: #f8fafc; }

.submit-btn-premium {
    width: 100%;
    padding: 13px; 
    border: none;
    border-radius: 10px;
    background: var(--accent-gradient);
    color: white;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 6px 18px rgba(0, 230, 118, 0.2);
}

/* Ø§Ù„ØªÙ†Ø³ÙŠÙ‚ Ø§Ù„Ø¨Ø±ÙŠÙ…ÙŠÙˆÙ… Ø§Ù„Ù…Ø­Ø¯Ø« Ù„Ø£Ø³ÙÙ„ Ø§Ù„ÙÙˆØ±Ù…: ÙŠÙ…Ù†Ø¹ Ø§Ù†ÙƒØ³Ø§Ø± ÙˆØªØ¯Ø§Ø®Ù„ Ø§Ù„Ø±ÙˆØ§Ø¨Ø· Ù†Ù‡Ø§Ø¦ÙŠØ§Ù‹ ÙˆÙŠØ¬Ø¹Ù„Ù‡Ø§ ÙÙŠ Ø§Ù„Ù…Ù†ØªØµÙ */
.contact-footer { 
    margin-top: 18px; 
    padding-top: 14px;
    border-top: 1px solid #e2e8f0;
    display: flex; 
    flex-direction: column; /* ØªØ±ØªÙŠØ¨ Ø§Ù„Ø±ÙˆØ§Ø¨Ø· Ø¹Ù…ÙˆØ¯ÙŠØ§Ù‹ Ù„Ø­Ù…Ø§ÙŠØªÙ‡Ø§ Ù…Ù† Ø§Ù„Ø§Ù†Ù‚Ø³Ø§Ù… Ø£Ùˆ Ø§Ù„Ø®Ø±ÙˆØ¬ Ø§Ù„Ø¬Ø§Ù†Ø¨ÙŠ */
    align-items: center;
    gap: 8px;
    width: 100%;
}

.contact-footer-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    color: var(--text-muted);
}

.contact-footer a { 
    color: #00bfa5; 
    text-decoration: none; 
    font-weight: 600; 
    white-space: nowrap; /* Ø¥Ø¬Ø¨Ø§Ø± Ø±Ù‚Ù… Ø§Ù„Ù‡Ø§ØªÙ ÙˆØ§Ù„Ø¥ÙŠÙ…ÙŠÙ„ Ù„Ù„Ø¨Ù‚Ø§Ø¡ ÙƒÙƒØªÙ„Ø© ÙˆØ§Ø­Ø¯Ø© Ù…ØµÙ„Ø­Ø© */
}

/* POPUPS */
.popup-overlay { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.4); backdrop-filter: blur(8px); display: flex; justify-content: center; align-items: center; z-index: 99999; opacity: 0; pointer-events: none; transition: 0.3s; }
.popup-overlay.active { opacity: 1; pointer-events: auto; }
.popup-card { text-align: center; max-width: 400px; background: #ffffff; padding: 30px; border-radius: 20px; color: var(--text-dark); }

/* =================== Ø§Ù„Ù…ÙŠØ¯ÙŠØ§ ÙƒÙˆÙŠØ±ÙŠ Ø§Ù„Ø°ÙƒÙŠØ© Ù„Ù„ØªØ¬Ø§ÙˆØ¨ Ø§Ù„Ø¹Ù…ÙˆØ¯ÙŠ Ø§Ù„ÙƒØ§Ù…Ù„ =================== */
@media (max-width: 992px) {
    .panel { padding: 100px 16px 40px 16px; }

    /* ØªØ£Ù…ÙŠÙ† Ø§Ù„Ø£Ø²Ø±Ø§Ø± Ù„ØªØ¸Ù‡Ø± Ø¨Ù…Ø±ÙˆÙ†Ø© Ù…Ø·Ù„Ù‚Ø© Ø¯Ø§Ø®Ù„ Ø§Ù„Ù‡ÙŠØ¯Ø± Ø¹Ù„Ù‰ Ø´Ø§Ø´Ø© Ø§Ù„Ù…ÙˆØ¨Ø§ÙŠÙ„ */
    .navbar-glass { padding: 12px 20px; }
    .navbar-glass nav { display: flex; gap: 8px; }
    .navbar-glass nav a { padding: 5px 10px; font-size: 0.8rem; }
    .navbar-glass .logo { font-size: 1.15rem; }

    .about-flex-container, .features-grid-french, .input-row-premium, .form-row-datetime { flex-direction: column; gap: 15px; }
    
    /* Ø¬Ø¹Ù„ Ù…Ø¹Ø±Ø¶ Ø§Ù„ØµÙˆØ± ÙŠØ¹Ø±Ø¶ ÙÙŠ Ø¹Ù…ÙˆØ¯ÙŠÙ† Ù…ØªÙ†Ø§Ø³Ù‚ÙŠÙ† ØªÙ…Ø§Ù…Ø§Ù‹ Ø¹Ù„Ù‰ Ø§Ù„ØªØ§Ø¨Ù„Øª ÙˆØ§Ù„Ù…ÙˆØ¨Ø§ÙŠÙ„ Ø§Ù„Ø¹Ø±ÙŠØ¶ */
    .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .services .grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    
    .hero-video-content h1 { font-size: 2.2rem; }
}

@media (max-width: 576px) {
    /* Ø´Ø§Ø´Ø§Øª Ø§Ù„Ù…ÙˆØ¨Ø§ÙŠÙ„ Ø§Ù„ØµØºÙŠØ±Ø©: Ø¹Ø±Ø¶ Ø§Ù„ØµÙˆØ± ÙˆØ§Ù„Ø®Ø¯Ù…Ø§Øª ÙÙŠ Ø¹Ù…ÙˆØ¯ ÙˆØ§Ø­Ø¯ Ù„Ù…Ù†Ø¹ Ø£ÙŠ ØªØ´ÙˆÙ‡ Ø£Ùˆ Ø§Ù†Ø¶ØºØ§Ø· Ø¬Ø§Ù†Ø¨ÙŠ */
    .gallery-grid, .services .grid { grid-template-columns: 1fr; }
    .custom-project-item { height: 220px; } /* Ø§Ø±ØªÙØ§Ø¹ Ù…Ø«Ø§Ù„ÙŠ Ø¬Ø¯Ø§Ù‹ Ù„Ù„ØµÙˆØ± Ø¹Ù„Ù‰ Ø§Ù„Ù‡ÙˆØ§ØªÙ */
    
    .hero-buttons { flex-direction: column; gap: 10px; }
    .hero-video-content h1 { font-size: 1.8rem; }
    .navbar-glass nav a { font-size: 0.75rem; padding: 4px 8px; }
}

/* =================== LIGHTBOX =================== */
.lightbox-overlay { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.95); backdrop-filter: blur(10px); display: flex; align-items: center; justify-content: center; z-index: 999999; opacity: 0; pointer-events: none; transition: opacity 0.3s ease; }
.lightbox-overlay.active { opacity: 1; pointer-events: auto; }
.lightbox-content { max-width: 85vw; max-height: 80vh; box-shadow: 0 25px 50px rgba(0,0,0,0.5); border-radius: 12px; overflow: hidden; }
.lightbox-content img { width: 100%; height: 100%; object-fit: contain; }
.lightbox-close { position: absolute; top: 30px; right: 40px; color: white; font-size: 40px; cursor: pointer; }
.lightbox-nav { position: absolute; top: 50%; transform: translateY(-50%); color: white; font-size: 40px; padding: 20px; cursor: pointer; }
.lightbox-prev { left: 30px; }
.lightbox-next { right: 30px; }

/* هذا التعديل يجعل الكارت يتمدد تلقائياً ليحتوي كل النص */
.services .card-premium {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    min-height: 400px; /* زيادة الطول ليحتوي القائمة */
    padding-bottom: 20px;
}

/* تنسيق النص داخل الكارت */
.card-content {
    padding: 20px;
    text-align: left;
}

.card-content h3 {
    margin-bottom: 10px;
    color: #0f172a;
}

/* تنسيق القائمة */
.services .card-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.services .card-content ul li {
    padding: 5px 0;
    color: #475569;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}
/* تحسين شكل القوائم داخل الكروت */
.card-content ul {
    list-style: none; /* إزالة النقاط */
    padding: 10px 0;
    margin: 0;
    text-align: left; /* جعل النص يبدأ من اليسار */
    font-size: 0.85rem;
    color: #475569;
}

.card-content ul li {
    padding: 3px 0;
    position: relative;
    padding-left: 15px; /* مسافة للرمز */
}

/* إضافة رمز بسيط قبل كل عنصر */
.card-content ul li::before {
    content: "•";
    color: #00bfa5; /* لون متناسق مع الموقع */
    font-weight: bold;
    margin-right: 5px;
    position: absolute;
    left: 0;
}