@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700&display=swap');

/* GE Dinar One Medium Font */
@font-face {
    font-family: 'GE Dinar One Medium';
    src: url('../fonts/GE Dinar One Medium/GE Dinar One Medium.woff2') format('woff2'),
         url('../fonts/GE Dinar One Medium/GE Dinar One Medium.woff') format('woff'),
         url('../fonts/GE Dinar One Medium/GE Dinar One Medium.ttf') format('truetype'),
         url('../fonts/GE Dinar One Medium/GE Dinar One Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Futura BT Medium Font */
@font-face {
    font-family: 'Futura BT';
    src: url('../fonts/Futura BT/Medium/futura-medium-bt.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

body {
    font-family: 'Futura BT', 'Montserrat', sans-serif;
    background-color: #f8f9fa;
    color: #333;
    scroll-behavior: smooth;
}

body.rtl {
    font-family: 'GE Dinar One Medium', 'Cairo', sans-serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Arabic-specific font optimizations */
body.rtl h1, body.rtl h2, body.rtl h3, body.rtl h4, body.rtl h5, body.rtl h6 {
    font-family: 'GE Dinar One Medium', 'Cairo', sans-serif;
    font-weight: 500;
    line-height: 1.4;
}

body.rtl p, body.rtl span, body.rtl div {
    font-family: 'GE Dinar One Medium', 'Cairo', sans-serif;
    line-height: 1.6;
}
h1.text-4xl.md\:text-5xl.lg\:text-6xl.font-bold.leading-tight.mb-6 {
    line-height: 1.4;
}

/* Justify all paragraphs */
p {
    text-align: justify;
}

/* Center specific elements */
[data-translate-key="portfolio_subtitle"],
[data-translate-key="contact_subtitle"] {
    text-align: center !important;
}

/* Center text in contact cards */
.bg-white.bg-opacity-10.rounded-xl.p-6.text-center.backdrop-filter.backdrop-blur-lg p,
.bg-white.bg-opacity-10.rounded-xl.p-6.text-center.backdrop-filter.backdrop-blur-lg a {
    text-align: center !important;
}

/* Center company descriptions in company cards */
.company-card p[data-translate-key*="company_"] {
    text-align: center !important;
}

/* Center text-gray-600 mb-6 elements on mobile only */
@media (max-width: 768px) {
    .text-gray-600.mb-6 {
        text-align: center !important;
    }
    
    .mx-auto-mob {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Center flex flex-wrap gap-4 elements on mobile */
    .flex.flex-wrap.gap-4 {
        justify-content: center !important;
    }
    
    /* Center text elements with text-3xl md:text-4xl font-bold text-[#1D2452] mb-6 on mobile */
    .text-3xl.md\:text-4xl.font-bold.text-\[#1D2452\].mb-6 {
        text-align: center !important;
    }
    
    /* Center the about_title specifically on mobile */
    [data-translate-key="about_title"] {
        text-align: center !important;
    }
    
    /* Center the divider line w-24 h-1 bg-[#1D2452] mb-6 on mobile */
    .w-24.h-1.bg-\[#1D2452\].mb-6 {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Alternative selector for the divider line */
    div.w-24.h-1.bg-\[#1D2452\].mb-6 {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Center the logo image h-10 object-contain on mobile */
    .h-10.object-contain {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Center footer_desc element on mobile */
    [data-translate-key="footer_desc"] {
        text-align: center !important;
    }
}

/* Ensure proper Arabic text rendering */
body.rtl {
    font-feature-settings: "liga" 1, "kern" 1;
}

.text-3xl
{
    font-size: 1.775rem !important;
}

.text-4xl {
    font-size: 2.05rem !important;
}
.gradient-bg {
    background: linear-gradient(135deg, #1D2452 0%, #2a3a7a 100%);
}

.company-card {
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    border-radius: 12px;
    overflow: hidden;
    background: white;
}

.company-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.15);
}

.logo-container {
    height: 120px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: white;
    border-radius: 8px;
}

.logo-container img {
    height: 230px;
    width: auto;
    object-fit: cover;
    object-position: center;
    display: block;
    margin-top: -20px; /* Adjust to crop top padding */
}

.fade-in {
    animation: fadeIn 1s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.section-divider {
    height: 100px;
    background: linear-gradient(135deg, #25326d 0%, #2a3a7a 100%);
    clip-path: polygon(0 0, 100% 0, 100% 60%, 0 100%);
}

/* Apply different background on desktop (min-width: 768px and up) */
@media (min-width: 768px) {
    .section-divider {
        background: linear-gradient(135deg, #232d63 0%, #2a3a7a 100%);
    }
}

@media (max-width: 768px) {
  .hide-mob {
        display: none;
    }
    /* h1.text-4xl.md\:text-5xl.lg\:text-6xl.font-bold.leading-tight.mb-6 {
        text-align: center;
    } */
}

.mob-header {
    margin-top: 20px;
}

.footer-divider {
    height: 100px;
    background: linear-gradient(135deg, #1D2452 0%, #2a3a7a 100%);
    clip-path: polygon(0 40%, 100% 0, 100% 100%, 0 100%);
}

.nav-link {
    position: relative;
}

.nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -2px;
    left: 0;
    background-color: white;
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

.scroll-indicator {
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
    40% {transform: translateY(-15px);}
    60% {transform: translateY(-7px);}
}

/* RTL-specific styles */
body.rtl {
    direction: rtl;
}

body.rtl .text-right {
    text-align: left;
}

body.rtl .text-left {
    text-align: right;
}

body.rtl .space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
}

body.rtl .space-x-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
}

body.rtl .space-x-8 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
}

body.rtl .md\:pl-12 {
    padding-right: 3rem;
    padding-left: 0;
}

body.rtl .ml-1 {
    margin-right: 0.25rem;
    margin-left: 0;
}

body.rtl .mr-2 {
    margin-left: 0.5rem;
    margin-right: 0;
} 

a.block.opacity-90.hover\:opacity-100 {
    direction: ltr;
}