/* IGIDAR Prime — complements to Tailwind (CDN) */

[x-cloak] { display: none !important; }

html { scroll-padding-top: 5rem; -webkit-tap-highlight-color: transparent; }
body { text-rendering: optimizeLegibility; }
html.menu-open { overflow: hidden; }

/* Reveal on scroll (content stays visible without JavaScript) */
.js .reveal { opacity: 0; transform: translate3d(0, 28px, 0); transition: opacity .9s cubic-bezier(.2, .65, .3, 1), transform .9s cubic-bezier(.2, .65, .3, 1); transition-delay: var(--d, 0ms); }
.js .reveal.is-visible { opacity: 1; transform: none; }

/* Slow cinematic zoom on hero images */
.hero-photo { object-position: center 28%; }
.kenburns { animation: kenburns 16s ease-out both; transform-origin: center 28%; }
@keyframes kenburns { from { transform: scale(1.05); } to { transform: scale(1); } }

/* Gold shimmer used on key figures */
.text-gold-gradient {
    background: linear-gradient(110deg, #9A7440 0%, #E2C98F 45%, #C6A15B 60%, #9A7440 100%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
}

/* Thin ornamental frame */
.frame-gold { position: relative; }
.frame-gold::after { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(226, 201, 143, .45); pointer-events: none; }

/* Horizontal snap carousels on mobile */
.snap-row { scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.snap-row::-webkit-scrollbar { display: none; }
.snap-row > * { scroll-snap-align: start; }

/* Progress ring (KPI) */
.ring-track { stroke: rgba(245, 239, 230, .1); }
.ring-value { stroke: url(#goldGradient); transition: stroke-dashoffset 2s cubic-bezier(.2, .65, .3, 1); }

/* RTL: arrows point the other way, Latin letter-spacing is removed for Arabic script */
[dir="rtl"] .flip-rtl { transform: scaleX(-1); }
[dir="rtl"] [class*="tracking-"], [dir="rtl"] .eyebrow { letter-spacing: 0 !important; }
[dir="rtl"] .accent { font-style: normal; }
[dir="rtl"] .eyebrow { font-size: .85rem; }
[dir="rtl"] body { line-height: 1.8; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { line-height: 1.4; }

.article-body { font-size: 1.05rem; line-height: 1.85; color: rgba(11, 11, 12, .82); }
.article-body h2 { font-family: var(--font-display); font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 500; line-height: 1.15; color: #0B0B0C; margin: 2.6rem 0 .4rem; }
.article-body h3 { font-family: var(--font-display); font-size: 1.45rem; font-weight: 500; line-height: 1.25; color: #0B0B0C; margin: 1.8rem 0 .3rem; }
.article-body p { margin-top: 1rem; }
.article-body ul { margin-top: 1.1rem; display: grid; gap: .65rem; }
.article-body li { position: relative; padding-inline-start: 1.3rem; }
.article-body li::before { content: ""; position: absolute; inset-inline-start: 0; top: .75em; width: .45rem; height: 1px; background: #C6A15B; }
.article-body strong { color: #0B0B0C; font-weight: 600; }

.cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.cal-day { min-height: 4.4rem; }
.cal-booked { background: rgba(198, 161, 91, .16); }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
    .js .reveal { opacity: 1; transform: none; }
}
