/* === BASE === */
.aboutv2-section,
.aboutv2-manifeste-section {
	padding: clamp(40px, 8vw, 80px) clamp(20px, 6vw, 80px);
}

/* === WRAPPERS === */
.aboutv2-wrapper-1,
.aboutv2-wrapper-2 {
	max-width: 1300px;
	width: 100%;
	margin: 0 auto;
}

.aboutv2-manifeste-wrapper {
	max-width: 1200px;
	margin: 0 auto;
}

/* === VIDEO SECTION === */
.aboutv2-video-section {
	width: 100%;
	overflow: visible;
	height: 740px;
	padding: 0;
}

.aboutv2-video-style {
	width: 100%;
	height: 100%;
	position: relative;
}

/* === SECTIONS === */
.aboutv2-section {
	background-color: #4e3833;
}

.aboutv2-manifeste-section {
	background-color: #574342;
	color: white;
}

/* === SECTION TITLES === */
.aboutv2-page-title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(15px, 12vw, 150px);
	margin-bottom: clamp(30px, 8vw, 70px);
}

.aboutv2-manifeste-section .aboutv2-page-title {
	margin-bottom: 50px;
}

.aboutv2-page-title-line {
	flex: 1;
	height: 1px;
	background-color: var(--color-canelle);
}

.aboutv2-page-title-text {
	font-family: var(--font-arial);
	font-size: clamp(11px, 1.2vw, 16px);
	font-weight: 100;
	color: var(--color-canelle);
	text-transform: uppercase;
	letter-spacing: clamp(2px, 0.8vw, 8px);
	white-space: nowrap;
}

.aboutv2-manifeste-section .aboutv2-page-title-line {
	background-color: var(--color-vitamine);
}

.aboutv2-manifeste-section .aboutv2-page-title-text {
	font-family: var(--font-arial);
	font-size: clamp(11px, 1.2vw, 16px);
	font-weight: 100;
	color: var(--color-vitamine);
	text-transform: uppercase;
	letter-spacing: clamp(2px, 0.8vw, 8px);
	white-space: nowrap;
	margin-bottom: 0;
}

h3.aboutv2-manifeste-subtitle {
	color: #fff;
	text-align: center;
	font-family: FuturaNDAlt-DemiBold;
	font-size: 26px;
	font-weight: 400;
	line-height: 49px;
	padding-bottom: 50px;
}

/* === HEADINGS === */
.aboutv2-title,
.aboutv2-content h2,
.aboutv2-col h2 {
	font-family: var(--font-futura-ndalt);
	font-size: clamp(26px, 3vw, 37px);
	color: var(--color-canelle);
	margin-bottom: clamp(20px, 3vw, 40px);
	line-height: 1.1;
}

.aboutv2-content h3,
.aboutv2-col h3 {
	font-family: var(--font-futura-ndalt);
	font-size: clamp(22px, 2.5vw, 30px);
	color: var(--color-canelle);
	margin-bottom: clamp(15px, 2.5vw, 30px);
	line-height: 1.3;
}

.aboutv2-manifeste-section h2,
.aboutv2-manifeste-section h3 {
	color: #fff;
	text-align: center;
	font-family: var(--font-futura-ndalt);
	font-size: clamp(22px, 2.5vw, 37px);
	margin-bottom: clamp(15px, 2.5vw, 30px);
	line-height: 1.3;
}

/* === GRID LAYOUTS === */
.aboutv2-columns-1,
.aboutv2-columns-2 {
	display: grid;
	align-items: start;
	gap: clamp(20px, 2vw, 40px);
	width: 100%;
	margin: 0;
}

.aboutv2-columns-1 {
	grid-template-columns: minmax(300px, 45%) 1fr;
}

.aboutv2-columns-2 {
	grid-template-columns: 1fr minmax(300px, 45%);
}

.aboutv2-manifeste-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px;
	align-items: start;
}

/* === TEXT CONTENT === */
.aboutv2-col {
	width: 100%;
	min-width: 300px;
	margin: 0;
	color: black;
	align-self: start;
}

/* Base paragraph styles - font-family by default */
.aboutv2-col p,
.aboutv2-content p {
	font-family: var(--font-arial);
	margin-top: 20px;
	margin-bottom: 20px;
}

.aboutv2-manifeste-section p {
	font-family: var(--font-arial);
	color: var(--color-white);
	margin-top: 20px;
	margin-bottom: 20px;
}

/* Empty paragraphs for spacing */
.aboutv2-content p:empty,
.aboutv2-col p:empty,
.aboutv2-manifeste-section p:empty {
	min-height: 1.5em;
	margin-bottom: 20px;
}

/* Extra spacing between consecutive paragraphs */
.aboutv2-content p + p,
.aboutv2-col p + p,
.aboutv2-manifeste-section p + p {
	margin-top: 20px;
	margin-bottom: 20px;
}

/* Line breaks */
.aboutv2-content br,
.aboutv2-col br,
.aboutv2-manifeste-section br {
	display: block;
	margin-bottom: 1em;
	content: '';
}

/* === BASIC TEXT FORMATTING === */
.aboutv2-content strong,
.aboutv2-content b,
.aboutv2-col strong,
.aboutv2-col b,
.aboutv2-manifeste-section strong,
.aboutv2-manifeste-section b {
	font-family: var(--font-arial-bold);
	font-weight: 700;
}

.aboutv2-content em,
.aboutv2-content i,
.aboutv2-manifeste-section em,
.aboutv2-manifeste-section i {
	font-style: italic;
}

.aboutv2-content u,
.aboutv2-manifeste-section u {
	text-decoration: underline;
}

/* Links */
.aboutv2-content a {
	color: var(--color-canelle);
	text-decoration: underline;
}

.aboutv2-content a:hover {
	color: var(--color-vitamine);
}

.aboutv2-manifeste-section a {
	color: var(--color-vitamine);
	text-decoration: underline;
}

.aboutv2-manifeste-section a:hover {
	color: var(--color-canelle);
}

/* Lists */
.aboutv2-content ul,
.aboutv2-content ol,
.aboutv2-col ul,
.aboutv2-col ol,
.aboutv2-manifeste-section ul,
.aboutv2-manifeste-section ol {
	margin: clamp(15px, 2vw, 20px) 0;
	padding-left: clamp(25px, 3vw, 40px);
}

.aboutv2-content li,
.aboutv2-col li,
.aboutv2-manifeste-section li {
	margin-bottom: clamp(8px, 1vw, 12px);
	font-family: var(--font-arial);
}

ul.aboutv2-list {
	margin: 20px 0;
}

/* === WYSIWYG CUSTOM STYLES === */
/* Line Heights */
.aboutv2-content .line05em,
.aboutv2-manifeste-section .line05em {
	line-height: 0.5em;
}

.aboutv2-content .line1em,
.aboutv2-manifeste-section .line1em {
	line-height: 1em;
}

.aboutv2-content .line13em,
.aboutv2-manifeste-section .line13em {
	line-height: 1.3em;
}

.aboutv2-content .line15em,
.aboutv2-manifeste-section .line15em {
	line-height: 1.5em;
}

.aboutv2-content .line17em,
.aboutv2-manifeste-section .line17em {
	line-height: 1.7em;
}

.aboutv2-content .line2em,
.aboutv2-manifeste-section .line2em {
	line-height: 2em;
}

.aboutv2-content .line3em,
.aboutv2-manifeste-section .line3em {
	line-height: 3em;
}

/* Font Weights */
.aboutv2-content .lightweight,
.aboutv2-manifeste-section .lightweight {
	font-weight: 300;
}

.aboutv2-content .font4weight,
.aboutv2-manifeste-section .font4weight {
	font-weight: 400;
}

.aboutv2-content .font5weight,
.aboutv2-manifeste-section .font5weight {
	font-weight: 500;
}

.aboutv2-content .font6weight,
.aboutv2-manifeste-section .font6weight {
	font-weight: 600;
}

.aboutv2-content .heavyweight,
.aboutv2-manifeste-section .heavyweight {
	font-weight: 700;
}

/* Font Families */
.aboutv2-content .nunito-sans,
.aboutv2-manifeste-section .nunito-sans {
	font-family: 'Nunito Sans', sans-serif;
}

.aboutv2-content .reem-kufi,
.aboutv2-manifeste-section .reem-kufi {
	font-family: 'Reem Kufi', sans-serif;
}

.aboutv2-content .arial,
.aboutv2-manifeste-section .arial {
	font-family: Arial, sans-serif;
}

.aboutv2-content .futura,
.aboutv2-manifeste-section .futura {
	font-family: 'Futura', sans-serif;
}

.aboutv2-content .futura-ndalt,
.aboutv2-manifeste-section .futura-ndalt {
	font-family: 'FuturaNDAlt', sans-serif;
}

/* Other Styles */
.aboutv2-content .underline,
.aboutv2-manifeste-section .underline {
	text-decoration: underline;
}

.aboutv2-content .letsp15px,
.aboutv2-manifeste-section .letsp15px {
	letter-spacing: 1.5px;
}

/* === IMAGES === */
.aboutv2-img {
	width: 100%;
	height: 100%;
	padding: 0;
	overflow: hidden;
}

.aboutv2-img img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
}

/* === RESPONSIVE === */

/* Tablet Large */
@media screen and (max-width: 1200px) {
	.aboutv2-columns-1,
	.aboutv2-columns-2,
	.aboutv2-manifeste-columns {
		grid-template-columns: 1fr;
	}

	.aboutv2-columns-2 .aboutv2-col {
		order: 2;
	}

	.aboutv2-columns-2 .aboutv2-img {
		order: 1;
	}
}

/* Tablet */
@media screen and (max-width: 1024px) {
	.aboutv2-col {
		padding: 0;
	}

	.aboutv2-img img {
		width: 100%;
		height: auto;
	}

	.aboutv2-manifeste-wrapper {
		max-width: 100%;
	}
}

/* Mobile Large */
@media screen and (max-width: 768px) {
	.aboutv2-video-section {
		height: auto;
	}

	.aboutv2-video-style {
		padding-top: 56.25%;
	}

	.aboutv2-columns-1,
	.aboutv2-columns-2,
	.aboutv2-manifeste-columns {
		gap: clamp(20px, 3vw, 30px);
	}
}

/* Mobile */
@media screen and (max-width: 480px) {
	.aboutv2-page-title {
		gap: clamp(12vw, 2vw, 15px);
	}

	.aboutv2-page-title-text {
		font-size: 12px;
		letter-spacing: clamp(1px, 0.2vw, 1.5px);
	}
}
