@media (min-width: 992px) {

	.d-none.d-lg-flex.w-100 {
		display: flex !important;
		flex: 1 1 0 !important;
		align-items: center !important;
		justify-content: space-between !important;
		width: 100%;
		gap: 0;
	}
	
	
	
}
@media (min-width: 992px) {
	.navbar-logo {
		height: 24px;
		max-height: 48px;
		width: auto;
		
		
		display: block;
		
	}
	
}
@media (max-width: 600px) {
	.about-mobile-navbar img {
		height: 28px !important;
		width: auto !important;
		max-width: 120px !important;
		object-fit: contain !important;
		display: inline-block !important;
		 margin-left: 5vw !important;
		padding: 0 !important;
		vertical-align: middle !important;
	}
	.about-mobile-navbar {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		width: 100vw !important;
		z-index: 3200 !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(0,0,0,0.04);
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		min-height: 48px !important;
		height: 48px !important;
		padding: 0 12px !important;
	}
	.about-mobile-menu-icon {
		font-size: 18px !important;
		color: #222 !important;
		margin-right: 18px !important;
	}
	.about-mobile-title {
		font-size: 18px !important;
		font-weight: bold !important;
		color: #222 !important;
		margin-right: -180px !important;
		flex: 1 1 auto !important;
		text-align: center !important;
	}
	.about-mobile {
		padding-top: 48px !important;
	}
}
@media (max-width: 600px) {
	.d-flex.d-lg-none.w-100.align-items-center.justify-content-between {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		z-index: 3100 !important;
		background: #fff !important;
		box-shadow: 0 2px 8px rgba(0,0,0,0.04);
		width: 100% !important;
		min-height: 48px !important;
		height: 48px !important;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
	}
	body {
		padding-top: 48px !important;
	}
}
/* Sidebar mobile overlay */
.about-mobile-sidebar-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 70vw;
	height: 120vh;
	background: rgba(0, 0, 0, 0.55); /* Overlay noir, opacité forte */
	z-index: 1000;
	display: none;
}

/* Sidebar drawer */
 .about-mobile-sidebar {
	   background: rgba(101, 67, 33, 0.7) !important;
	   width: 65vw !important;
	   max-width: 320px !important;
	   height: 110vh;
	   box-shadow: 0 2px 16px rgba(0,0,0,0.08);
	   border-radius: 0 18px 18px 0;
	   position: relative;
	   display: flex;
	   flex-direction: column;
	   justify-content: flex-start;
	   backdrop-filter: blur(5px);
	   -webkit-backdrop-filter: blur(10px);
   /* Inverser l'ordre pour que .sidebar-nav soit en haut et .sidebar-header en dessous */
}

.about-mobile-sidebar > .sidebar-nav {
	order: 2;
}
.about-mobile-sidebar > .sidebar-header {
	order: 1;
  animation: slideInSidebar .25s cubic-bezier(.4,0,.2,1);
 }


.sidebar-header {
	background: transparent;
	border-top-right-radius: 18px;
		padding: 12px 24px 0 24px;
		color: black;
		margin-top: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	
}

.sidebar-header h2,
.close-sidebar {
	color: black;
}


.sidebar-nav {
	background: transparent;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
		gap: 8px;
		margin: 2px 0 0 0;
	padding: 0 0px 0 24px;
	border-bottom-right-radius: 18px;
}

@keyframes slideInSidebar {
	from { transform: translateX(-100%); }
	to { transform: translateX(0); }
}

.sidebar-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 18px 8px 18px;
}
.sidebar-header h2 {
	font-size: 18px;
	font-weight: 700;
	color: black;
	margin: 0;
}
.close-sidebar {
	 background: none;
    border: none;
    color: black;
    font-size: 30px;
    cursor: pointer;
    position: absolute;
    top: 15px;
    left: 200px;
    right: 0;
    padding: 0 0 0 8px;
    z-index: 4;
}

.sidebar-nav {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 12px;
	overflow: hidden;
}

.sidebar-link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 3px 0;
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	font-size: 10px;
	border-radius: 6px;
	transition: background 0.15s, color 0.15s;
	width: 100%;
	box-sizing: border-box;
}

.sidebar-link.active,
.sidebar-link:hover {
	background: rgba(255,255,255,0.18);
	color: #fff;
	border-radius: 6px;
	box-sizing: border-box;
	width: 70%;
}

.language-selector {
	display: flex;
	gap: 6px;
	justify-content: flex-start;
	align-items: center;
	margin: 52px 40px 40px 32px;
	font-size: 13px;
	color: #fff;
	font-weight: 500;
	padding-left: 0;
}
.language-selector span {
	cursor: pointer;
}

.social-links {
	display: flex;
	gap: 40px;
	margin: 24px 0 32px 32px;
	padding-left: 0;
}
.social-link {
	color: #fff;
	transition: color 0.15s;
	font-size: 28px;
}
/* Séparateur horizontal dans la sidebar */
.sidebar-separator {
	width: 80%;
	height: 2px;
	background: rgba(255,255,255,0.5);
	margin: 32px auto 24px auto;
	border-radius: 2px;
}
.social-link:hover {
	color: #222;
}
/* Sidebar mobile overlay et drawer */
.about-mobile-sidebar-overlay {
	display: none;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.32);
}

/* doublon supprimé */
@media (max-width: 900px) {
		/* doublon supprimé, la règle principale s'applique déjà */
}
	.about-mobile-title {
		order: 2;
		font-size: 48px;
		font-weight: 700;
		color: #222;
		margin-left: auto;
	}
@media (max-width: 900px) {
	.about-mobile-achievement-card img {
		box-shadow: none !important;
	}
	.about-mobile-col:first-child {
		padding-left: 12px !important;
	}
		section.about-mobile-block.about-mobile-values {
			margin-top: -10px !important;
		}
}
	   .about-mobile-team {
		   background: #fff6ec !important;
		   width: 45vw !important;
		   height: 42vw;
		   max-width: 100vw !important;
		   margin-left: auto !important;
		   margin-right: auto !important;
		   border-radius: 28px !important;
		   padding: 22px 0 !important;
	   }
	.about-mobile-values-title {
		font-size: 15px !important;
		white-space: nowrap !important;
	}
	.about-mobile-block.about-mobile-story * {
		font-size: 5px !important;
	}
	.about-mobile-achievements-row .about-mobile-achievement-card .about-mobile-achievement-icon {
		width: 8px !important;
		height: 8px !important;
		min-width: 8px !important;
		min-height: 8px !important;
		max-width: 8px !important;
		max-height: 8px !important;
		margin-bottom: 0 !important;
	}
	.about-mobile-achievement-card .about-mobile-achievement-icon {
		width: 10px !important;
	.header-mobile-title {
		display: none;
	}
	
	/* Strong mobile header alignment fixes (same as home.css) */
	@media (max-width: 768px) {
	    header, header.bg-white {
	        display: flex !important;
	        align-items: center !important;
	        justify-content: space-between !important;
	        padding: 8px 12px !important;
	        height: 64px !important;
	        min-height: 64px !important;
	    }

	    .mobile-menu-btn, .about-mobile-menu-icon {
	        display: flex !important;
	        align-items: center !important;
	        justify-content: center !important;
	        height: 48px !important;
	        width: 48px !important;
	        padding: 6px !important;
	        margin: 0 !important;
	        order: 1 !important;
	    }

	    .header-mobile-title, .about-mobile-title {
	        display: flex !important;
	        align-items: center !important;
	        justify-content: center !important;
	        text-align: center !important;
	        margin: 0 !important;
	        padding: 0 8px !important;
	        order: 2 !important;
	        flex: 1 1 auto !important;
	    }

	    .header-mobile-title img, .about-mobile-title img {
	        height: 28px !important;
	        width: auto !important;
	        max-width: 100% !important;
	        vertical-align: middle !important;
	    }
	}
		height: 10px !important;
		margin-bottom: 1px !important;
	}
	.about-mobile-team-card * {
		font-size: 5px !important;
	}
	.about-mobile-team-card .about-mobile-team-desc,
	.about-mobile-team-card .about-mobile-team-name {
		font-size: 3px !important;
	}
	.about-mobile-team-block {
		background: #fff6ec !important;
	}
	/* Section Meet the Team - style mobile comme la capture */
	.about-mobile-team-cards {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
		justify-items: center !important;
	}
	.about-mobile-team-card {
		background: #fff !important;
		border-radius: 14px !important;
		box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
		padding: 10px 8px !important;
		min-width: 90px !important;
		max-width: 140px !important;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		text-align: left !important;
	}
	.about-mobile-team-card img {
		width: 20px !important;
		height: 20px !important;
		border-radius: 50% !important;
		object-fit: cover !important;
		margin-right: 4px !important;
	}
	.about-mobile-team-desc {
		font-size: 4px !important;
		color: #222 !important;
		margin-bottom: 1px !important;
	}
	.about-mobile-team-name {
		font-size: 5px !important;
		font-weight: 700 !important;
		color: #222 !important;
	}
	.about-mobile-block.about-mobile-story h2 {
		font-size: 12px !important;
		margin-bottom: 2px !important;
	}
	.about-mobile-block.about-mobile-story p,
	.about-mobile-block.about-mobile-story ul,
	.about-mobile-block.about-mobile-story div {
		font-size: 8px !important;
		line-height: 1.2 !important;
		margin-bottom: 3px !important;
	}
	.about-mobile-block.about-mobile-story {
		font-size: 7px !important;
		line-height: 1.2 !important;
		padding: 0 !important;
		max-width: 90% !important;
	}
	/* Section Our Mission & Values - style mobile comme la capture */
	.about-mobile-value-card {
		background: #fff6ec !important;
		border-radius: 15px !important;
		box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
		padding: 6px 7px !important;
		min-width: 60px !important;
		max-width: 100px !important;
		min-height: 32px !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;

		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
	}
	.about-mobile-value-card img {
		width: 26px !important;
		height: 26px !important;
		margin-bottom: 2px !important;
	}
	.about-mobile-value-title {
		font-size: 128x !important;
		font-weight: 700 !important;
		margin-bottom: 0px !important;
		color: #222 !important;
	}
	.about-mobile-value-desc {
		font-size: 4px !important;
		color: #222 !important;
		margin-bottom: 0 !important;
	}
@media (max-width: 900px) {
	.about-mobile { display: block !important; }
	body > :not(.about-mobile) { display: none !important; }

	/* Pour réduire l'espace vide entre les colonnes */
	.about-mobile-sections-grid {
		display: grid;
		grid-template-columns: 50% 50%; /* colonne gauche 40%, droite 60% */
		gap: 0 !important; /* aucun espace entre les colonnes */
		border: none !important;
		width: 100vw;
		margin: 0 !important;
		padding: 0 !important;
		align-items: start;
		box-sizing: border-box;
	}

	.about-mobile-col {
		display: flex;
		flex-direction: column;
		gap: 0 !important;
		width: 100%;
		box-sizing: border-box;
		padding: 0 0 0 10px !important;
		margin: 0 !important;
	}

	.about-mobile-block,
	.about-mobile-achievements,
	.about-mobile-values-block,
	.about-mobile-team-block {
		padding: 0 !important;
		margin: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	/* Correction pour les cartes "What We've Achieved" */
	.about-mobile-achievements-row {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 0 !important; /* réduit l'espace entre les cartes */
		width: 100%;
	}

	.about-mobile-achievement-card {
		background: none !important;
		box-shadow: none !important;
		border-radius: 10px;
		padding: 4px 2px;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 2px;
		min-width: 0;
	}

	.about-mobile-achievement-icon {
		width: 12px !important;
		height: 12px !important;
		margin-bottom: 1px !important;
	}

	.about-mobile-achievement-value {
		font-size: 12px;
		font-weight: 700;
		color: #111;
		margin-bottom: 1px;
	}

	.about-mobile-achievement-label {
		font-size: 9px;
		color: #111;
		text-align: center;
		font-weight: 500;
	}

	.about-mobile-col {
		display: flex;
		flex-direction: column;
		gap: 8px;
		width: 100%;
		box-sizing: border-box;
		padding: 0 !important;
		margin: 0 !important;
	}

	.about-mobile-block,
	.about-mobile-achievements,
	.about-mobile-values-block,
	.about-mobile-team-block {
		padding: 0 !important;
		margin: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	.about-mobile-values-block,
	.about-mobile-team-block {
		background: #fff6ec;
	}

	.about-mobile-block h2,
	.about-mobile-achievements-title,
	.about-mobile-values-title,
	.about-mobile-team-title {
		white-space: nowrap !important;
		font-size: 13px;
		margin-bottom: 2px;
		font-weight: 700;
		color: #222;
	}

	.about-mobile-block p,
	.about-mobile-block ul,
	.about-mobile-block div,
	.about-mobile-team-card .about-mobile-team-desc,
	.about-mobile-team-card .about-mobile-team-name,
	.about-mobile-value-title,
	.about-mobile-value-desc,
	.about-mobile-achievement-value,
	.about-mobile-achievement-label {
		font-size: 10px;
		line-height: 1.4;
		color: #222;
		margin: 0 0 4px 0;
		padding: 0;
	}

	.about-mobile-value-card,
	.about-mobile-team-card,
	.about-mobile-achievement-card {
		padding: 6px 4px;
		border-radius: 10px;
		gap: 4px;
		background: #ffe9cc;
		box-shadow: 0 2px 8px rgba(0,0,0,0.08);

		min-height: unset;
	}

	.about-mobile-team-card,
	.about-mobile-achievement-card {
		background: #fff;
	}

	.about-mobile-value-card img,
	.about-mobile-team-card img,
	.about-mobile-achievement-icon {
		width: 22px;
		height: 22px;
		margin-bottom: 2px;
		object-fit: contain;
	}

	.about-mobile-values-grid,
	.about-mobile-achievements-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	}

.about-mobile-team-cards {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	}

	.about-mobile-sub-block {
		margin-top: 4px;
	}

	/* Section Our Story: taille réduite mais tout le texte visible, pas scrollable */
	.about-mobile-block.about-mobile-story {
		max-height: 380px;
		overflow-y: auto;
		padding: 2px 2px;
		font-size: 10px;
		width: 100%; /* occupe toute la largeur de la colonne */
		box-sizing: border-box;
	}

	/* Force la colonne de droite à ne pas avoir de margin/padding */
	.about-mobile-col:last-child {
		margin: 0 !important;
		padding: 0 !important;
	}

	/* Force tous les enfants directs de la colonne de droite à ne pas avoir de margin/padding */
	.about-mobile-col:last-child > * {
		margin: 0 !important;
		padding: 0 !important;
	}
}
.header-mobile-title {
	display: none;
}
.nav, .nav-item, .nav-link, .nav-custom {
	font-family: 'Montserrat', Arial, sans-serif !important;
}
.nav-link.nav-custom {
		border-bottom: none !important;
		text-decoration: none !important;
		font-family: 'Montserrat', Arial, sans-serif;
}
.nav-link.nav-custom:hover,
.nav-link.nav-custom:focus {
	border-bottom: none !important;
	text-decoration: none !important;
}
/* Soulignement orange uniquement sous le lien actif */
.nav-link.nav-custom.active {
	position: relative;
}
.nav-link.nav-custom.active::after {
	margin-top: -10px;
	content: "";
	display: block;
	position: absolute;
		left: 50%;
			bottom: -5px;
		width: 150%;
		height: 2px;
		transform: translateX(-50%);
	background: #ff9800;
	border-radius: 2px;
	box-shadow: none;
}
/* Navbar styles for navbar.html selectors */
header {
	background: #fff;
	border: none;
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	z-index: 3000 !important;
	background: #fff !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
	margin: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	min-width: 100vw !important;
	max-width: 100vw !important;
}

.nav {
	display: flex;
	font-family: 'Montserrat', Arial, sans-serif;
	flex-direction: row;
	align-items: center;
	gap: 32px;
	list-style: none;
	margin-top: 0px;
		padding: 0 0 0 8px;
}
.nav-custom {
    color: #ff9800 !important;
    font-weight: 300;
	font-size: 13px;
		border-bottom: none !important;
    padding-bottom: 0.25rem;
    transition: color 0.2s;
}
.nav-custom.active {
    color: #222 !important;
		border-bottom: none !important;
}
.nav-custom:hover {
    color: #e67e22 !important;
}

/* Navbar styles for pixel-perfect match */
nav {
	width: 100%;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	box-shadow: none;
}
.user-avatar {
	width: 32px;
	height: 32px;
	object-fit: cover;
	margin-top: -8px;
	margin-right: 18px;
}

.hero-section {
	margin-top: 64px;
}


header {
    border-bottom: none !important;
	padding: 2px 0 0 0;
    width: 100%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 48px;
    
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 32px;
}

.header-title {
    margin-left: 32px;
    font-size: 28px;
    font-family: 'Montserrat', Arial, sans-serif;
    color: #222;
    font-weight: 500;
}

/* Responsive mobile */


.mobile-menu-btn {
    display: none;
    background: none !important;
    border: none !important;
    font-size: 24px !important;
    color: #333 !important;
    order: 2;
    margin-top: 20px !important;
}

.mobile-menu-icon {
    font-size: 20px;
    color: #222;
}

.mobile-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    z-index: 1000;
    border-top: 1px solid #eee;
}

body {
    font-family: 'Montserrat', Arial, sans-serif;
    color: #222;
}
.contact-section {
	background: #fbeee0;
	border-radius: 0;
	padding: 48px 0 40px 0;
	width: 100vw;
	margin: 64px 0 48px 0;
	text-align: center;
}
.contact-title {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 18px;
	color: #222;
}
.contact-desc {
	text-align: center;
	font-size: 18px;
	color: #222;
	margin-bottom: 32px;
	line-height: 2.6;
}
.contact-form {
	max-width: 900px;
	margin: 0 auto 24px auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contact-form-row {
	display: flex;
	gap: 24px;
	width: 100%;
	margin-bottom: 16px;
}
.contact-input {
	flex: 1;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 12px;
	font-size: 16px;
	background: #fff;
}
.contact-textarea {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 12px;
	font-size: 16px;
	background: #fff;
	margin-bottom: 16px;
	resize: vertical;
}
.contact-btn {
	background: #8c3c3c;
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 20px;
	font-weight: 700;
	padding: 12px 0;
	width: 220px;
	margin: 0 auto 32px auto;
	box-shadow: 0 2px 8px rgba(0,0,0,0.07);
	cursor: pointer;
	transition: background 0.2s;
	display: block;
}
.contact-btn:hover {
	background: #6e2a2a;
}
.contact-cards-row {
	display: flex;
	gap: 90px;
	justify-content: center;
	margin-top: 24px;
}
.contact-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 16px rgba(0,0,0,0.08);
	flex: 1;

	min-width: 180px;
	max-width: 240px;
	padding: 28px 18px 18px 18px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contact-card-icon {
	width: 50px;
	height: 40px;
	margin-bottom: 12px;
}
.contact-card-title {
	font-size: 17px;
	font-weight: 700;
	margin-bottom: 6px;
	color: #222;
}
.contact-card-desc {
	font-size: 15px;
	color: #222;
}
.ready-explore-btn-row {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 38px;
}
.ready-explore-btn {
	background: #8c3c3c;
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 24px;
	font-weight: 700;
	padding: 14px 48px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.07);
	cursor: pointer;
	text-decoration: none;
	transition: background 0.2s;
	display: inline-block;
	text-align: center;
}
.ready-explore-btn:hover {
	background: #6e2a2a;
}
.ready-explore-title {
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	margin-top: 56px;
	margin-bottom: 18px;
	color: #222;
}
.why-choose-section {
	margin-bottom: 48px;
}
.why-choose-title {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 24px;
	color: #222;
}
.why-choose-text {
	text-align: center;
	font-size: 22px;
	color: #222;
	margin-bottom: 40px;
	max-width: 60vw;
	margin-left: auto;
	margin-right: auto;
	line-height: 2.1;
}
.why-choose-img {
	display: block;
	width: 90vw;
	height: 40vw;
	margin: 0 auto;
	border-radius: 24px;
	object-fit: cover;
}
.meet-team-outer {
	background: #fff6ec;
	border-radius: 36px;
	padding: 32px 24px;
	max-width: 80vw;
	margin: 0 auto 40px auto;
}
.meet-team-row {
	display: flex;
	gap: 8vw;
	justify-content: center;
}
.meet-team-card {
	background: #fff;
	border-radius: 18px;
	display: flex;
	align-items: center;
	padding: 32px 32px;
	width: 60vw;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.meet-team-img {
	width: 10vw;
	height: 10vw;
	border-radius: 50%;
	object-fit: cover;
	margin-right: 32px;
}
.meet-team-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.meet-team-desc {
	font-size: 17px;
	color: #222;
	margin-bottom: 18px;
}
.meet-team-name {
	font-size: 18px;
	font-weight: 700;
	color: #222;
}
.meet-team-title {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 32px;
	color: #222;
}
.mission-values-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px 48px;
	margin-bottom: 32px;
}
.mission-value-card {
	margin-bottom: 0 !important;
	margin-bottom: 32px;
	background: #fff6ec;
	border-radius: 18px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.03);
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	padding: 32px 24px;
	min-width: 300px;
	min-height: 120px;
}
.mission-value-icon {
	width: 48px;
	height: 48px;
	margin-right: 32px;
	flex-shrink: 0;
}
.mission-value-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
.mission-value-title {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 0px;
	color: #222;
}
.mission-value-desc {
	font-size: 15px;
	color: #222;
	margin-bottom: 0;
}
.mission-values-row {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	gap: 48px;
	margin-bottom: 8px;
}
.mission-value-img-card {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff6ec;
	border-radius: 18px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.03);
	min-width: 120px;
	min-height: 120px;
	padding: 32px 24px;
}
.mission-value-card {
	background: #fff6ec;
	border-radius: 18px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.03);
	flex: 1;
	min-width: 280px;
	max-width: 400px;
	padding: 48px 24px 36px 24px;
	text-align: left;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.mission-values-row {
	display: flex;
	justify-content: center;
	gap: 280px;
	margin-bottom: 8px;
}
.mission-value-card {
	background: #fff6ec;
	border-radius: 18px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.03);
	flex: 1;
	min-width: 8vw;
	max-width: 30vw;
	padding: 48px 24px 36px 24px;
	text-align: left;
	display: flex;
	flex-direction: row;
	align-items: center;
}
.mission-value-icon {
	width: 64px;
	height: 64px;
	margin-bottom: 18px;
	margin-right: 24px;
	width: 64px;
	height: 64px;
	flex-shrink: 0;
}
.mission-value-title {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 12px;
	color: #222;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.mission-value-desc {
	font-size: 18px;
	color: #222;
	margin-bottom: 0;
}
.mission-values-title {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 32px;
	color: #222;
}
.achievements-section .row {
	display: flex;
	justify-content: center;
	gap: 48px;
}
.achievement-card {
	gap: 84px;
	row-gap: 8px;
	flex-direction: column;
	align-items: center;
	background: none;
	box-shadow: none;
	border: none;
	padding: 24px 32px;
	min-width: 180px;
	min-height: 180px;
}
.achievement-icon {
	width: 150px;
	height: 120px;
	margin-left: 60px;
	margin-bottom: 16px;
}
.achievement-value {
	margin-left: 55px;
	font-size: 38px;
	font-weight: 700;
	color: #111;
	margin-bottom: 8px;
}
.achievement-label {
	font-size: 18px;
	color: #111;
	text-align: center;
	margin-left: 15px;
	font-weight: 500;
}
.achievements-title {
	text-align: center;
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 32px;
	color: #111;
}
.timeline-container {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 56px auto 0 auto;
	position: relative;
	width: 100%;
	max-width: 100%;
	margin-bottom: 0;
}
.timeline-label {
	width: 200px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	padding: 0;
	
}
.timeline-label strong {
	font-size: 26px;
	font-weight: 700;
	color: #222;
	margin-bottom: 0;
	line-height: 1.1;
}
.timeline-label-desc {
	font-size: 15px;
	color: #222;
	font-weight: 400;
margin-top: 0px;
	line-height: 1.3;
}
.timeline-label {
	width: 200px;
	text-align: left;
	font-size: 18px;
	color: #222;
	font-weight: 700;
	line-height: 1.3;
}
.timeline-bar {
	flex: 1;
	height: 2px;
	background: #e0e0e0;
	width: 100%;
	position: relative;
	margin: 0 12px;
	display: block;
	font-size: 20px;
	margin-bottom: 6px;
	color: #222;
}
.timeline-dot {
	position: absolute;
	left: 50%;
	top: -6px;
	transform: translateX(-50%);
	width: 14px;
	height: 14px;
	background: #fbeee0;
	border-radius: 50%;
	border: 2px solid #e0e0e0;
	z-index: 2;
}
.special-block-custom h2 {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 8px;
	color: #222;
}
.special-block-custom {
	background: #fff6ec;
	border-radius: 20px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
	padding: 66px 58px 58px 58px;
	max-width: 100px;
	width: 90%;
	min-height: 20px;
	margin: -88px auto 32px auto;
	position: relative;
	z-index: 2;
}
.hero-text-overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 300px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	pointer-events: none;
}
.hero-title {
	margin-top: 180px;
	color: #fff;
	font-size: 38px;
	font-weight: 700;
	text-align: center;
	text-shadow: 0 2px 8px rgba(0,0,0,0.3);
	letter-spacing: 1px;
	width: 100%;
}
.section.hero-section {
	position: relative;
	margin-top: 198px;
}
.places-main-image {
	width: 100%;
	height: 300px;
	object-fit: cover;
	display: block;
	margin: 0;
	border-radius: 0;
		gap: 12px;
		height: 50%;
	}
	.about-mobile-col:first-child {
			flex: 0 0 auto;
			width: 100%;
			height: auto;
			margin-right: 0 !important;
			border-right: none !important;
			min-width: 0 !important;
			max-width: none !important;
			overflow: visible !important;
		}
	.about-mobile-col:last-child {
		flex: 1;
		max-width: 60%;
		height: 100%;
		font-size: 24px;
	font-weight: 700;
	margin-bottom: 12px;
	color: #222;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.mission-value-desc {
	font-size: 18px;
	color: #222;
	margin-bottom: 0;
}
.mission-values-title {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 32px;
	color: #222;
}
.achievements-section .row {
	display: flex;
	justify-content: center;
	gap: 48px;
}
.achievement-card {
	gap: 40px;
	row-gap: 8px;
	flex-direction: column;
	align-items: center;
	background: none;
	box-shadow: none;
	border: none;
	padding: 24px 32px;
	width: 17vw;
	
}
.achievement-icon {
	width: 10px;
	height: 120px;
	margin-left: 60px;
	margin-bottom: 16px;
}
.achievement-value {
	margin-left: 75px;
	font-size: 48px;
	font-weight: 700;
	color: #111;
	margin-bottom: 8px;
}
.achievement-label {
	font-size: 22px;
	color: #111;
	text-align: center;
	margin-left: -10px;
	font-weight: 500;
}
.achievements-title {
	text-align: center;
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 32px;
	color: #111;
}
.timeline-container {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 56px auto 0 auto;
	position: relative;
	width: 100%;
	max-width: 100%;
	margin-bottom: 0;
}
.timeline-label {
	width: 200px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	padding: 0;
	
}
.timeline-label strong {
	font-size: 26px;
	font-weight: 700;
	color: #222;
	margin-bottom: 0;
	line-height: 1.1;
}
.timeline-label-desc {
	font-size: 15px;
	color: #222;
	font-weight: 400;
margin-top: 0px;
	line-height: 1.3;
}
.timeline-label {
	width: 200px;
	text-align: left;
	font-size: 18px;
	color: #222;
	font-weight: 700;
	line-height: 1.3;
}
.timeline-bar {
	flex: 1;
	height: 2px;
	background: #e0e0e0;
	width: 100%;
	position: relative;
	margin: 0 12px;
	display: block;
	font-size: 20px;
	margin-bottom: 6px;
	color: #222;
}
.timeline-dot {
	position: absolute;
	left: 50%;
	top: -6px;
	transform: translateX(-50%);
	width: 14px;
	height: 14px;
	background: #fbeee0;
	border-radius: 50%;
	border: 2px solid #e0e0e0;
	z-index: 2;
}
.special-block-custom h2 {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 8px;
	color: #222;
}
.special-block-custom {
	background: #fff6ec;
	border-radius: 20px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
	padding: 66px 58px 58px 58px;
	max-width: 100vw;
	width: 90%;
	min-height: 20vw;
	margin: -88px auto 32px auto;
	position: relative;
	z-index: 2;
}
.hero-text-overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 300px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	pointer-events: none;
}
.hero-title {
	margin-top: 180px;
	color: #fff;
	font-size: 38px;
	font-weight: 700;
	text-align: center;
	text-shadow: 0 2px 8px rgba(0,0,0,0.3);
	letter-spacing: 1px;
	width: 100%;
}
.section.hero-section {
	position: relative;
	margin-top: 198px;
}
.places-main-image {
	width: 100%;
	height: 450px;
	object-fit: cover;
	display: block;
	margin: 0;
	border-radius: 0;
}
	.about-mobile-col:first-child {
		flex: 0 0 40%;
		max-width: 40%;
		height: 100%;
	}
	.about-mobile-col:last-child {
		flex: 1;
		max-width: 60%;
		height: 100%;
	}
	.footer {
    background: #f8f8f8;
    padding: 30px 0 0 0;
}
.footer-content {
    max-width: 90vw;
    margin: 0 auto;
    display: flex;
    gap: 30px;
    font-size: 13px;
}
.footer-section {
    flex: 1;
}
.footer-section h4 {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 10px;
}
.footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-links li {
    margin-bottom: 6px;
}
.footer-bottom {
    text-align: center;
    font-size: 11px;
    color: #aaa;
    margin-top: 18px;
}
.footer-social {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}
.footer-social a {
    width: 24px;
    height: 24px;
    display: inline-block;
}
.footer-social img {
    width: 100%;
    height: 100%;
}
.footer-custom {
    background: white;
    margin: 48px 20px 20px 20px;
    padding: 40px 50px 20px;
    border-radius: 16px;
}

.footer-container {
    max-width: 90vw;
    padding: 0;
}

.footer-section-content {
    margin-bottom: 25px;
}

.footer-label {
    font-weight: bold;
    margin-bottom: 8px;
}

.footer-value {
    color: #666;
    font-size: 14px;
}

/* Classes pour les listes du footer */
.footer-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-list-title {
    font-weight: bold;
    margin-bottom: 15px;
}

/* Classes pour les éléments de liste du footer */
.footer-list-item {
    margin-bottom: 8px;
    color: #666;
    font-size: 14px;
}

/* Classes pour les liens du footer */
.footer-link {
    margin-bottom: 8px;
    color: #666;
	   font-size: 14px;
}



/* RTL: move mobile logo to left and hamburger to the right on Arabic (scoped to about page) */
body.rtl .d-flex.d-lg-none.w-100.align-items-center.justify-content-between {
	/* reverse the visual order so title/logo appears first (left) and hamburger second (right) */
	flex-direction: row-reverse !important;
}
body.rtl .d-flex.d-lg-none.w-100.align-items-center.justify-content-between .mobile-menu-btn {
	order: 2 !important;
	margin-left: 0 !important;
	margin-right: 8px !important; /* small gap from edge */
}
body.rtl .d-flex.d-lg-none.w-100.align-items-center.justify-content-between .header-mobile-title {
	order: 1 !important;
	margin-right: 12px !important;
	margin-left: 0 !important;
	text-align: left !important;
}

/* Also handle the about page's internal mobile nav (.about-mobile-navbar) */
body.rtl .about-mobile-navbar {
	flex-direction: row-reverse !important;
}
body.rtl .about-mobile-navbar .about-mobile-menu-icon,
body.rtl .about-mobile-navbar .mobile-menu-icon {
	order: 2 !important;
	margin-left: 0 !important;
	margin-right: 8px !important;
}
body.rtl .about-mobile-navbar .about-mobile-title,
body.rtl .about-mobile-navbar .header-mobile-title {
	order: 1 !important;
	margin-left: 8px !important;
	margin-right: 0 !important;
	text-align: left !important;
}

/* RTL: flip the about page mobile sidebar overlay/drawer to the right side */
body.rtl .about-mobile-sidebar-overlay {
	left: auto !important;
	right: 0 !important;
}

body.rtl .about-mobile-sidebar {
	left: auto !important;
	right: 0 !important;
	border-radius: 18px 0 0 18px !important; /* mirror the rounded corner */
	animation: slideInSidebarR .25s cubic-bezier(.4,0,.2,1) !important;
}

/* RTL-specific slide-in from right */
@keyframes slideInSidebarR {
	from { transform: translateX(100%); opacity: 0; }
	to   { transform: translateX(0); opacity: 1; }
}

body.rtl .about-mobile-sidebar > .sidebar-header {
	animation: slideInSidebarR .25s cubic-bezier(.4,0,.2,1) !important;
	order: 1;
}

body.rtl .about-mobile-sidebar > .sidebar-nav {
	order: 2;
}

/* Move the close button to the left edge inside RTL drawer */
body.rtl .close-sidebar {
	left: 0 !important;
	right: auto !important;
	padding: 0 8px 0 0 !important;
}

/* Give RTL sidebar links some breathing room from the right edge */
body.rtl .about-mobile-sidebar .sidebar-nav {
	padding-left: 24px !important; /* keep left padding as normal */
	padding-right: 24px !important; /* add space from right edge */
}

body.rtl .about-mobile-sidebar .sidebar-link {
	padding-right: 2px !important; /* more gap on the right side */
	text-align: right !important; /* keep text right-aligned for RTL */
}

/* Slightly reduce width so links don't wrap into the curved corner */
body.rtl .about-mobile-sidebar .sidebar-link,
body.rtl .about-mobile-sidebar .sidebar-link.active {
	width: calc(100% - 32px) !important;
}




/* Section footer bottom */
.footer-bottom-section {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #ddd;
}

/* Classes pour les liens du footer */
.footer-link-title {
    font-weight: bold;
    margin-bottom: 15px;
}

/* Classes pour les divs du footer */
.footer-div-title {
    font-weight: bold;
    margin-bottom: 15px;
}

.footer-div-item {
    margin-bottom: 8px;
    color: #666;
    font-size: 14px;
}

/* Footer social icons */
.footer-social-icons {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.footer-social-link {
    color: #666;
}

/* Footer copyright and bottom text */
.footer-copyright {
    color: #888;
    font-size: 12px;
}

.footer-right-section {
    display: flex;
    justify-content: flex-end;
    padding-right: 0;
}

.footer-links-container {
    color: #888;
    font-size: 12px;
    display: flex;
    gap: 40px;
    margin-right: 0;
}

.footer-policy-link {
    color: #888;
    text-decoration: none;
}


