/* Custom Styles for Carthagène Olive Oil */

:root {
    --olive: #6B8E23;
    --olive-dark: #556B2F;
    --olive-light: #9ACD32;
}

/* Tailwind custom color */
.bg-olive {
    background-color: var(--olive);
}

.text-olive {
    color: var(--olive);
}

.border-olive {
    border-color: var(--olive);
}

/* Fonts */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

body[dir="rtl"] {
    font-family: 'Cairo', sans-serif;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #000;
}

::-webkit-scrollbar-thumb {
    background: var(--olive);
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--olive-dark);
}

/* Language button active state */
.lang-btn.active {
    background-color: var(--olive);
    color: #000;
    font-weight: 600;
}

/* Animation utilities */
.fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.animate-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Smooth transitions for interactive elements */
a, button {
    transition: transform 0.3s ease, color 0.3s ease, background-color 0.3s ease;
}

a:hover, button:hover {
    transition: transform 0.3s ease, color 0.3s ease, background-color 0.3s ease;
}

/* RTL adjustments */
[dir="rtl"] {
    direction: rtl;
    text-align: right;
}

[dir="rtl"] .container {
    direction: rtl;
}

[dir="rtl"] nav .flex {
    flex-direction: row-reverse;
}

[dir="ltr"] {
    direction: ltr;
    text-align: left;
}

/* RTL spacing adjustments */
[dir="rtl"] .space-x-8 > * + * {
    margin-left: 0;
    margin-right: 2rem;
}

[dir="rtl"] .space-x-2 > * + * {
    margin-left: 0;
    margin-right: 0.5rem;
}

[dir="rtl"] .ml-4 {
    margin-left: 0;
    margin-right: 1rem;
}

[dir="rtl"] .mr-6 {
    margin-right: 0;
    margin-left: 1.5rem;
}

/* RTL flex direction */
[dir="rtl"] .flex-row {
    flex-direction: row-reverse;
}

/* RTL text alignment */
[dir="rtl"] .text-left {
    text-align: right;
}

[dir="rtl"] .text-right {
    text-align: left;
}

/* Responsive typography */
@media (max-width: 640px) {
    h1 {
        font-size: 2.5rem;
    }
    
    h2 {
        font-size: 2rem;
    }
}

