/**
 * Regional Prestige Concierge - RTL & Arabic Support
 * 
 * Right-to-left layout and Arabic typography enhancements
 */

/* ============================================================================
   ARABIC FONT & RTL ENHANCEMENTS
   ============================================================================ */

[dir="rtl"] *:not(.logo-text):not(.logo-text-top):not(.logo-text-bottom) {
	font-family: 'Tajawal', 'Montserrat', Arial, sans-serif;
}

[dir="rtl"] body {
	font-family: 'Tajawal', 'Montserrat', Arial, sans-serif;
}

[dir="rtl"] .hero-headline {
	font-family: 'Tajawal', serif;
	font-size: clamp(3rem, 10vw, 5.5rem);
	font-weight: 500;
	letter-spacing: 0;
}

[dir="rtl"] .philosophy-text {
	font-family: 'Tajawal', serif;
	font-size: 36px;
	font-weight: 400;
	line-height: 1.6;
}

[dir="rtl"] .services-heading,
[dir="rtl"] .contact-heading,
[dir="rtl"] .callback-section-title,
[dir="rtl"] .philosophy-heading {
	font-size: 28px;
	letter-spacing: 2px;
}

[dir="rtl"] .services-intro,
[dir="rtl"] .contact-intro {
	font-size: 18px;
	line-height: 1.8;
}

[dir="rtl"] .card-title {
	font-size: 20px;
	font-weight: 600;
}

[dir="rtl"] .card-subtitle {
	font-size: 15px;
}

[dir="rtl"] .card-description {
	font-size: 15px;
	line-height: 1.7;
}

[dir="rtl"] .nav-link {
	font-size: 15px;
	letter-spacing: 1px;
}

[dir="rtl"] .nav-cta,
[dir="rtl"] .hero-cta,
[dir="rtl"] .callback-cta {
	font-size: 17px;
	letter-spacing: 1px;
}

[dir="rtl"] .callback-label {
	font-size: 16px;
}

[dir="rtl"] .contact-label-text {
	font-size: 16px;
}

[dir="rtl"] .contact-person-name {
	font-size: 20px;
}

[dir="rtl"] .contact-person-title {
	font-size: 14px;
}

[dir="rtl"] .footer-section-title {
	font-size: 18px;
}

[dir="rtl"] .footer-link {
	font-size: 15px;
}

[dir="rtl"] .footer-copyright {
	font-size: 15px;
}

[dir="rtl"] .contact-name {
	font-size: 17px;
}

[dir="rtl"] .contact-title {
	font-size: 14px;
}

[dir="rtl"] .contact-label {
	font-size: 14px;
}

[dir="rtl"] .contact-link {
	font-size: 15px;
}

[dir="rtl"] .custom-alert-title {
	font-size: 26px;
}

[dir="rtl"] .custom-alert-message {
	font-size: 18px;
}

[dir="rtl"] .custom-alert-button {
	font-size: 16px;
}

/* ============================================================================
   RTL LAYOUT ADJUSTMENTS
   ============================================================================ */

[dir="rtl"] .nav-container {
	flex-direction: row-reverse;
}

[dir="rtl"] .nav-brand {
	flex-direction: row;
	transform-origin: right center;
}

[dir="rtl"] .nav-menu {
	left: 50%;
	transform: translateX(-50%);
}

[dir="rtl"] .footer-content,
[dir="rtl"] .philosophy-container {
	direction: rtl;
}

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

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

[dir="rtl"] .contact-details-section {
	align-items: center;
	text-align: center;
}

[dir="rtl"] .contact-label-text {
	text-align: center;
	min-width: 140px;
}

[dir="rtl"] .contact-link-text {
	text-align: center;
}

[dir="rtl"] .contact-item {
	flex-direction: row-reverse;
	justify-content: flex-end;
	gap: 0;
}

[dir="rtl"] .contact-label {
	text-align: left;
	min-width: 120px;
	margin-right: 0;
	margin-left: 8px;
}

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

/* Keep phone input LTR even in RTL mode */
[dir="rtl"] .phone-input {
	direction: ltr;
	text-align: left;
}

/* ============================================================================
   RTL LANGUAGE TRANSITION ANIMATION
   ============================================================================ */

[dir="rtl"] .lang-transition {
	animation: fadeSlideRTL .4s cubic-bezier(.4, 0, .2, 1);
}

@keyframes fadeSlideRTL {
	0% {
		opacity: 0;
		transform: translateX(15px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/* ============================================================================
   RTL MOBILE MENU
   ============================================================================ */

@media(max-width:1024px) {
	[dir="rtl"] .nav-brand {
		left: 50%;
		right: auto;
		transform: translateX(-50%) scale(0.85);
		transform-origin: center center;
	}

	[dir="rtl"] .nav-menu {
		right: auto;
		left: -100%;
		border-left: none;
		border-right: 1px solid var(--gold);
		align-items: flex-end;
		text-align: right;
	}

	[dir="rtl"] .nav-menu.active {
		left: 0;
		right: auto;
	}
	
	[dir="rtl"] .nav-link {
		text-align: right;
	}
}

@media(max-width:768px) {
	[dir="rtl"] .nav-brand {
		transform: translateX(-50%) scale(0.75);
	}

	[dir="rtl"] .philosophy-text {
		font-size: 28px;
	}
}

@media(max-width:480px) {
	[dir="rtl"] .nav-brand {
		transform: translateX(-50%) scale(0.65);
	}
}

