:where([class^="ri-"])::before { content: "\f3c2"; }
body {
    font-family: 'Poppins', sans-serif;
    background-color: #111827;
    color: #e5e7eb;
}

/* RTL Support */
[dir="rtl"] {
    direction: rtl;
    text-align: right;
}

[dir="rtl"] .space-x-2 > * + * {
    margin-right: 0.5rem;
    margin-left: 0;
}

[dir="rtl"] .space-x-3 > * + * {
    margin-right: 0.75rem;
    margin-left: 0;
}

[dir="rtl"] .space-x-4 > * + * {
    margin-right: 1rem;
    margin-left: 0;
}

[dir="rtl"] .space-x-6 > * + * {
    margin-right: 1.5rem;
    margin-left: 0;
}

[dir="rtl"] .space-x-8 > * + * {
    margin-right: 2rem;
    margin-left: 0;
}

[dir="rtl"] .mr-2 {
    margin-right: 0;
    margin-left: 0.5rem;
}

[dir="rtl"] .mr-3 {
    margin-right: 0;
    margin-left: 0.75rem;
}

[dir="rtl"] .mr-4 {
    margin-right: 0;
    margin-left: 1rem;
}

[dir="rtl"] .ml-2 {
    margin-left: 0;
    margin-right: 0.5rem;
}

[dir="rtl"] .ml-3 {
    margin-left: 0;
    margin-right: 0.75rem;
}

[dir="rtl"] .pr-8 {
    padding-right: 0;
    padding-left: 2rem;
}

[dir="rtl"] .right-3 {
    right: auto;
    left: 0.75rem;
}

[dir="rtl"] .right-0 {
    right: auto;
    left: 0;
}

[dir="rtl"] .left-1\/2 {
    left: auto;
    right: 50%;
}

[dir="rtl"] .-translate-x-1\/2 {
    transform: translateX(50%);
}

[dir="rtl"] .text-left {
    text-align: right;
}

[dir="rtl"] .text-right {
    text-align: left;
}

/* Fix for flex layouts in RTL */
[dir="rtl"] .flex.items-center.space-x-2 > * + * {
    margin-right: 0.5rem;
    margin-left: 0;
}

[dir="rtl"] .flex.items-center.space-x-3 > * + * {
    margin-right: 0.75rem;
    margin-left: 0;
}

[dir="rtl"] .flex.items-center.space-x-4 > * + * {
    margin-right: 1rem;
    margin-left: 0;
}

[dir="rtl"] .flex.items-center.space-x-6 > * + * {
    margin-right: 1.5rem;
    margin-left: 0;
}

[dir="rtl"] .flex.items-center.space-x-8 > * + * {
    margin-right: 2rem;
    margin-left: 0;
}

/* Fix for grid layouts in RTL */
[dir="rtl"] .grid.grid-cols-1.md\:grid-cols-2.gap-6 > *:first-child {
    order: 2;
}

[dir="rtl"] .grid.grid-cols-1.md\:grid-cols-2.gap-6 > *:last-child {
    order: 1;
}

[dir="rtl"] .grid.grid-cols-1.lg\:grid-cols-2.gap-12 > *:first-child {
    order: 2;
}

[dir="rtl"] .grid.grid-cols-1.lg\:grid-cols-2.gap-12 > *:last-child {
    order: 1;
}

/* Fix for dropdown positioning in RTL */
[dir="rtl"] .absolute.right-0 {
    right: auto;
    left: 0;
}

/* Fix for breadcrumb arrows in RTL */
[dir="rtl"] .ri-arrow-right-s-line {
    transform: scaleX(-1);
}

/* Fix for form elements in RTL */
[dir="rtl"] .appearance-none.pr-8 {
    padding-right: 0.75rem;
    padding-left: 2rem;
}

[dir="rtl"] .absolute.right-3.top-1\/2 {
    right: auto;
    left: 0.75rem;
}

/* Fix for social media icons spacing in RTL */
[dir="rtl"] .flex.space-x-4 > * + * {
    margin-right: 1rem;
    margin-left: 0;
}

/* Fix for contact info icons in RTL */
[dir="rtl"] .flex.items-start > .w-10.h-10.rounded-full {
    order: 2;
}

[dir="rtl"] .flex.items-start > div:last-child {
    order: 1;
}

/* Fix for mobile menu in RTL */
[dir="rtl"] .md\:hidden.hidden.bg-gray-900\/95 {
    text-align: right;
}

/* Fix for footer grid in RTL */
[dir="rtl"] .grid.grid-cols-1.md\:grid-cols-4.gap-8 {
    direction: rtl;
}

[dir="rtl"] .grid.grid-cols-1.md\:grid-cols-4.gap-8 > * {
    direction: ltr;
}

.hero-slider {
    position: relative;
    height: 600px;
    overflow: hidden;
}
.slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}
.slide.active {
    opacity: 1;
}
.hero-overlay {
    background: linear-gradient(90deg, rgba(12,44,69,0.9) 0%, rgba(12,44,69,0.7) 50%, rgba(12,44,69,0.4) 100%);
}

[dir="rtl"] .hero-overlay {
    background: linear-gradient(270deg, rgba(12,44,69,0.9) 0%, rgba(12,44,69,0.7) 50%, rgba(12,44,69,0.4) 100%);
}

.custom-shadow {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.lang-selector:focus {
    outline: none;
}
.cookie-banner {
    animation: slideUp 0.5s ease-out forwards;
}
@keyframes slideUp {
    from { transform: translateY(100%); }
    to { transform: translateY(0); }
}
.project-card:hover {
    transform: translateY(-5px);
    transition: transform 0.3s ease;
}
.timeline-dot::before {
    content: '';
    position: absolute;
    left: -35px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-color: #d00024;
    border-radius: 50%;
    z-index: 1;
}
.timeline-dot::after {
    content: '';
    position: absolute;
    left: -26px;
    top: -100%;
    height: 200%;
    width: 2px;
    background-color: #e5e7eb;
    z-index: 0;
}
.timeline-dot:first-child::after {
    top: 0;
    height: 100%;
}
.timeline-dot:last-child::after {
    height: 100%;
    top: -100%;
}
[dir="rtl"] .timeline-dot::before {
    right: -35px;
    left: auto;
}
[dir="rtl"] .timeline-dot::after {
    right: -26px;
    left: auto;
}