/**
 * Salam — Overrides RTL (arabe)
 */

/* En arabe, IBM Plex Sans Arabic (Google Fonts) remplace toutes les polices du site. */
html[dir="rtl"] {
	--salam-font-open: "IBM Plex Sans Arabic", sans-serif;
	--salam-font-heading: "IBM Plex Sans Arabic", sans-serif;
	--salam-font-body: "IBM Plex Sans Arabic", sans-serif;
	--salam-font-nav: "IBM Plex Sans Arabic", sans-serif;
	--salam-font-display: "IBM Plex Sans Arabic", sans-serif;
	--salam-font-optima: "IBM Plex Sans Arabic", sans-serif;
}

html[dir="rtl"] .site-header__panel--start {
	justify-content: flex-start;
}

html[dir="rtl"] .site-header__panel--end {
	justify-content: space-between;
}

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

html[dir="rtl"] .site-header__toggle {
	right: auto;
	left: 1rem;
}

@media (max-width: 1023px) {
	html[dir="rtl"] .site-header__toggle {
		left: auto;
	}
}

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

html[dir="rtl"] body.is-menu-open .site-header__mobile-nav {
	border-right: none;
	border-left: 3px solid var(--salam-color-accent);
}

html[dir="rtl"] .site-header__mobile-close {
	right: auto;
	left: -0.5rem;
}

html[dir="rtl"] .site-header__mobile-menu li {
	transform: translateY(1rem);
}

html[dir="rtl"] body.is-menu-open .site-header__mobile-menu li {
	transform: translateY(0);
}

html[dir="rtl"] .site-header__mobile-nav .salam-social-links {
	justify-content: flex-end;
}

@media (max-width: 1023px) {
	html[dir="rtl"] body.is-menu-open .site-frame {
		transform: translateX(calc(-1 * var(--salam-menu-width, min(80vw, 320px))));
	}
}

html[dir="rtl"] .site-header__ornament--left {
	transform: scaleX(-1);
}

html[dir="rtl"] .site-header__ornament--right {
	transform: scaleX(-1);
}

html[dir="rtl"] .salam-breadcrumb__list {
	direction: rtl;
}

html[dir="rtl"] .salam-breadcrumb.is-overflow-end .salam-breadcrumb__list {
	-webkit-mask-image: linear-gradient(
		to left,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
	mask-image: linear-gradient(
		to left,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
}

html[dir="rtl"] .salam-breadcrumb.is-overflow-start .salam-breadcrumb__list {
	-webkit-mask-image: linear-gradient(
		to right,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
	mask-image: linear-gradient(
		to right,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
}

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

html[dir="rtl"] .breadcrumb__separator {
	transform: scaleX(-1);
}

html[dir="rtl"] .hero-carousel__nav--prev {
	left: auto;
	right: clamp(1rem, 3vw, 2.5rem);
	transform: translateY(-50%) translateX(-0.75rem);
}

html[dir="rtl"] .hero-carousel__nav--next {
	right: auto;
	left: clamp(1rem, 3vw, 2.5rem);
	transform: translateY(-50%) translateX(0.75rem);
}

html[dir="rtl"] .hero-carousel:hover .hero-carousel__nav--prev,
html[dir="rtl"] .hero-carousel:focus-within .hero-carousel__nav--prev,
html[dir="rtl"] .hero-carousel:hover .hero-carousel__nav--next,
html[dir="rtl"] .hero-carousel:focus-within .hero-carousel__nav--next {
	transform: translateY(-50%) translateX(0);
}

html[dir="rtl"] .product-tabs__list {
	flex-direction: row-reverse;
}

html[dir="rtl"] .single-produit__intro-text,
html[dir="rtl"] .single-produit__title,
html[dir="rtl"] .formats-section__title,
html[dir="rtl"] .home-title:not(.gamme-block__title),
html[dir="rtl"] .community-block__subtitle {
	text-align: right;
}

/* Titres de section — IBM Plex Arabic paraît plus petit que Salam Display */
html[dir="rtl"] .home-title {
	font-size: clamp(2rem, 4.5vw, 2.75rem);
}

html[dir="rtl"] .hero-carousel__title {
	font-size: clamp(2rem, 5vw, 2.75rem);
}

html[dir="rtl"] .hero-carousel__subtitle {
	font-size: clamp(1.0625rem, 2.25vw, 1.3125rem);
}

/* Fioritures ::before / ::after inversées pour le sens de lecture RTL */
html[dir="rtl"] .home-title:not(.gamme-block__title) {
	flex-direction: row-reverse;
}

html[dir="rtl"] .home-title::before,
html[dir="rtl"] .community-block .home-title::before {
	transform: scaleX(-1);
}

html[dir="rtl"] .home-title::after,
html[dir="rtl"] .community-block .home-title::after {
	transform: none;
}

/* Bloc gamme — titre centré et fioritures inversées */
html[dir="rtl"] .gamme-block__title {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	align-self: center;
	width: auto;
	text-align: center;
	font-size: 30px;
}

@media (min-width: 1024px) {
	html[dir="rtl"] .home-title {
		font-size: 2.75rem;
	}

	html[dir="rtl"] .hero-carousel__title {
		font-size: 2.75rem;
	}

	html[dir="rtl"] .hero-carousel__subtitle {
		font-size: 1.3125rem;
	}

	html[dir="rtl"] .gamme-block__title {
		font-size: 2.5rem;
	}
}

html[dir="rtl"] .produit-infos__tabs-viewport.is-overflow-end .produit-infos__tabs {
	-webkit-mask-image: linear-gradient(
		to left,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
	mask-image: linear-gradient(
		to left,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
}

html[dir="rtl"] .produit-infos__tabs-viewport.is-overflow-start .produit-infos__tabs {
	-webkit-mask-image: linear-gradient(
		to right,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
	mask-image: linear-gradient(
		to right,
		#000 0,
		#000 calc(100% - 2.75rem),
		transparent 100%
	);
}

html[dir="rtl"] .produit-infos__title,
html[dir="rtl"] .produit-infos__panel {
	text-align: right;
}

html[dir="rtl"] .produit-infos__panel ul,
html[dir="rtl"] .produit-infos__panel ol,
html[dir="rtl"] .single-produit__tabs-panel ul,
html[dir="rtl"] .single-recette__ingredients-list,
html[dir="rtl"] .single-recette__grid .content-section__body ul,
html[dir="rtl"] .single-recette__grid .content-section__body ol,
html[dir="rtl"] .single-recette__media-grid .content-section__body ul,
html[dir="rtl"] .single-recette__media-grid .content-section__body ol {
	padding-inline-start: 1.25rem;
	padding-inline-end: 0;
}

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

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

html[dir="rtl"] .site-footer__columns {
	direction: rtl;
}

html[dir="rtl"] .site-footer__menu {
	text-align: right;
}

html[dir="rtl"] .gamme-block__filter-list {
	flex-direction: row-reverse;
}

html[dir="rtl"] .swiper-button-prev {
	left: auto;
	right: 10px;
}

html[dir="rtl"] .swiper-button-next {
	right: auto;
	left: 10px;
}

html[dir="rtl"] .salam-tab::before,
html[dir="rtl"] .salam-banner-btn::before {
	background-image: var(--salam-img-btn-droite);
}

html[dir="rtl"] .salam-tab::after,
html[dir="rtl"] .salam-banner-btn::after {
	background-image: var(--salam-img-btn-gauche);
}

@media (max-width: 767px) {
	html[dir="rtl"] .site-header__toggle {
		margin-left: 0;
		margin-right: auto;
	}
}
