/* ============================= */
/* MUSMEGP — Global Styles       */
/* ============================= */

:root {
    --gold-gradient: linear-gradient(135deg, #d4a64a 0%, #f4d69a 40%, #efc06e 60%, #b8872e 100%);
    --dark-gradient: linear-gradient(180deg, #171614 0%, #242220 50%, #171614 100%);
    --hero-overlay: linear-gradient(180deg, rgba(13,12,11,0.85) 0%, rgba(13,12,11,0.5) 40%, rgba(13,12,11,0.7) 100%);
}

* { box-sizing: border-box; }

/* RTL Arabic font override */
html[dir="rtl"] .font-body,
html[dir="rtl"] .font-display,
html[dir="rtl"] p, html[dir="rtl"] span, html[dir="rtl"] a, html[dir="rtl"] li,
html[dir="rtl"] h1, html[dir="rtl"] h2, html[dir="rtl"] h3, html[dir="rtl"] h4,
html[dir="rtl"] label, html[dir="rtl"] button, html[dir="rtl"] summary,
html[dir="rtl"] input, html[dir="rtl"] select, html[dir="rtl"] textarea, html[dir="rtl"] td, html[dir="rtl"] th {
    font-family: 'Noto Kufi Arabic', sans-serif !important;
}

/* Hero background */
.hero-bg {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Cdefs%3E%3ClinearGradient id='g1' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0%25' stop-color='%23d4a64a' stop-opacity='0.08'/%3E%3Cstop offset='100%25' stop-color='%23b8872e' stop-opacity='0.03'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect fill='%230d0c0b' width='1200' height='800'/%3E%3Crect fill='url(%23g1)' width='1200' height='800'/%3E%3C/svg%3E") center/cover;
}

/* Gold text gradient */
.gold-text {
    background: var(--gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.gold-border { border-image: var(--gold-gradient) 1; }

/* Hieroglyph pattern background */
.hieroglyph-pattern {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M30 5 L35 15 L30 25 L25 15Z' fill='none' stroke='%23d4a64a' stroke-width='0.5' opacity='0.07'/%3E%3Ccircle cx='15' cy='40' r='4' fill='none' stroke='%23d4a64a' stroke-width='0.5' opacity='0.05'/%3E%3Cpath d='M45 35 L50 45 L40 45Z' fill='none' stroke='%23d4a64a' stroke-width='0.5' opacity='0.06'/%3E%3C/svg%3E");
}

/* Animations */
.fade-in { animation: fadeIn 0.8s ease-out forwards; opacity: 0; }
.fade-in-up { animation: fadeInUp 0.9s ease-out forwards; opacity: 0; }
.slide-left { animation: slideLeft 0.7s ease-out forwards; opacity: 0; }

@keyframes fadeIn { to { opacity: 1; } }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@keyframes slideLeft { from { opacity: 0; transform: translateX(40px); } to { opacity: 1; transform: translateX(0); } }
@keyframes shimmer { 0% { background-position: -200% center; } 100% { background-position: 200% center; } }
@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }

.shimmer-gold {
    background: linear-gradient(90deg, #d4a64a 0%, #f4d69a 25%, #efc06e 50%, #d4a64a 75%, #b8872e 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shimmer 4s linear infinite;
}

.stagger-1 { animation-delay: 0.1s; }
.stagger-2 { animation-delay: 0.25s; }
.stagger-3 { animation-delay: 0.4s; }
.stagger-4 { animation-delay: 0.55s; }
.stagger-5 { animation-delay: 0.7s; }

/* Card hover */
.card-hover { transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.card-hover:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(212,166,74,0.12); }

/* Divider ornament */
.divider-ornament { display: flex; align-items: center; gap: 16px; }
.divider-ornament::before, .divider-ornament::after {
    content: ''; flex: 1; height: 1px;
    background: linear-gradient(90deg, transparent, #d4a64a40, transparent);
}

/* Nav links */
.nav-link { position: relative; }
.nav-link::after {
    content: ''; position: absolute; bottom: -2px; left: 50%; width: 0; height: 1px;
    background: #d4a64a; transition: all 0.3s; transform: translateX(-50%);
}
.nav-link:hover::after { width: 80%; }
.nav-link.active { color: #d4a64a !important; }
.nav-link.active::after { width: 80%; }

/* Cookie banner */
.cookie-banner {
    position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999;
    transform: translateY(100%); transition: transform 0.5s ease;
}
.cookie-banner.show { transform: translateY(0); }

/* Scroll reveal */
.scroll-reveal { opacity: 0; transform: translateY(20px); transition: all 0.6s ease; }
.scroll-reveal.visible { opacity: 1; transform: translateY(0); }

/* Print */
@media print { .no-print { display: none !important; } }
