/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1767773119
Updated: 2026-01-07 08:05:19

*/

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@300;400;500;600;700&display=swap");

body.page-id-6693,
body.page-id-6694,
body.page-id-6695,
body.page-id-6696,
.melo-picto-gallery-shell {
	font-family: "Noto Sans", Arial, sans-serif;
	color: #25221f;
}

body.home .elementor-element-ef4c9b0 {
	margin-top: 20px !important;
	margin-bottom: 21px !important;
}

body.home .elementor-element-cdd7fb0,
body.home .elementor-element-b727088 {
	row-gap: 40px !important;
	gap: 40px !important;
}

.elementor-element-739cd7e .e-lottie__container__link,
.elementor-element-0ba7df1 .e-lottie__container__link {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 20px !important;
	height: 20px !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
}

.elementor-element-739cd7e .e-lottie__container,
.elementor-element-0ba7df1 .e-lottie__container {
	position: absolute !important;
	inset: 0 !important;
	width: 20px !important;
	height: 20px !important;
	pointer-events: none !important;
}

.elementor-element-739cd7e .e-lottie__animation,
.elementor-element-0ba7df1 .e-lottie__animation {
	display: none !important;
}

.elementor-element-739cd7e .e-lottie__container__link::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 6px;
	width: 13px;
	height: 13px;
	border: 2px solid currentColor;
	border-radius: 50%;
	transition: transform .25s ease, width .25s ease, height .25s ease, top .25s ease, left .25s ease;
}

.elementor-element-739cd7e .e-lottie__container__link::after {
	content: "";
	position: absolute;
	top: 15px;
	left: 2px;
	width: 9px;
	height: 2px;
	background: currentColor;
	border-radius: 2px;
	transform: rotate(-45deg);
	transform-origin: right center;
	transition: transform .25s ease, width .25s ease, top .25s ease, left .25s ease;
}

.elementor-element-739cd7e .e-lottie__container__link:hover::before,
.elementor-element-739cd7e .e-lottie__container__link:focus-visible::before {
	left: 5px;
	transform: rotate(-10deg) scale(1.04);
}

.elementor-element-739cd7e .e-lottie__container__link:hover::after,
.elementor-element-739cd7e .e-lottie__container__link:focus-visible::after {
	top: 15px;
	left: 1px;
	width: 10px;
	transform: rotate(-45deg) translateX(-1px);
}

.elementor-element-0ba7df1 .e-lottie__container__link::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	width: 20px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	transform-origin: center;
	transition: transform .25s ease, top .25s ease, width .25s ease;
}

.elementor-element-0ba7df1 .e-lottie__container__link::after {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 20px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	transform-origin: center;
	transition: transform .25s ease, top .25s ease, width .25s ease;
}

.elementor-element-0ba7df1 .e-lottie__container::before {
	content: "";
	position: absolute;
	top: 9px;
	left: 0;
	width: 20px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
	transition: opacity .18s ease, transform .25s ease;
}

.elementor-element-0ba7df1 .e-lottie__container__link:hover::before,
.elementor-element-0ba7df1 .e-lottie__container__link:focus-visible::before {
	top: 9px;
	width: 19px;
	transform: rotate(45deg);
}

.elementor-element-0ba7df1 .e-lottie__container__link:hover::after,
.elementor-element-0ba7df1 .e-lottie__container__link:focus-visible::after {
	top: 9px;
	width: 19px;
	transform: rotate(-45deg);
}

.elementor-element-0ba7df1 .e-lottie__container__link:hover .e-lottie__container::before,
.elementor-element-0ba7df1 .e-lottie__container__link:focus-visible .e-lottie__container::before {
	opacity: 0;
	transform: scaleX(.2);
}

body.page-id-6693 .page-header,
body.page-id-6693 .entry-title,
body.page-id-6693 h1.entry-title,
body.page-id-6694 .page-header,
body.page-id-6694 .entry-title,
body.page-id-6694 h1.entry-title,
body.page-id-6695 .page-header,
body.page-id-6695 .entry-title,
body.page-id-6695 h1.entry-title,
body.page-id-6696 .page-header,
body.page-id-6696 .entry-title,
body.page-id-6696 h1.entry-title {
	display: none !important;
}

body.page-id-6693 #content.site-main,
body.page-id-6694 #content.site-main,
body.page-id-6695 #content.site-main,
body.page-id-6696 #content.site-main {
	position: relative;
	z-index: auto;
	padding-top: 115px !important;
}

.melo-native-page,
.melo-native-page.e-con {
	--melo-text: #25221f;
	--melo-muted: #7a7168;
	--melo-line: #e8e0d7;
	--melo-bg: #fbf7f2;
	--melo-card: #fffaf5;
	--melo-accent: #b47758;
	display: block !important;
	width: min(100%, 1140px) !important;
	max-width: 1140px !important;
	margin: 0 auto !important;
	padding: 18px 22px 70px !important;
	color: var(--melo-text);
	line-height: 1.55;
	font-family: "Noto Sans", Arial, sans-serif;
	font-weight: 300;
}

body.page-id-6693 .elementor-6693 > .melo-native-page,
body.page-id-6694 .elementor-6694 > .melo-native-page,
body.page-id-6695 .elementor-6695 > .melo-native-page,
body.page-id-6696 .elementor-6696 > .melo-native-page {
	width: min(100%, 1140px) !important;
	max-width: 1140px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.melo-native-page * {
	box-sizing: border-box;
}

.melo-native-page .elementor-widget,
.melo-native-page .elementor-widget:not(:last-child),
.melo-native-page .elementor-widget-container,
.melo-native-page figure {
	margin: 0 !important;
}

.melo-native-page .melo-breadcrumb {
	display: block !important;
	position: relative;
	z-index: auto;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4;
	color: var(--melo-muted);
	font-size: 13px;
}

.melo-native-page .melo-breadcrumb a {
	color: #2b4c5d;
	text-decoration: none;
	font-weight: 600;
}

.melo-native-page .melo-hero,
.melo-native-page .melo-hero.e-con {
	display: block !important;
	margin-top: 50px !important;
	padding: 0 0 42px !important;
	text-align: center;
	border-bottom: 1px solid var(--melo-line);
}

.melo-native-page .melo-eyebrow .elementor-widget-container {
	text-transform: uppercase;
	letter-spacing: .14em;
	font-size: 12px;
	color: var(--melo-accent);
	margin: 0 0 10px !important;
	font-weight: 400;
}

.melo-native-page .melo-title .elementor-heading-title {
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: clamp(36px, 6vw, 72px);
	font-weight: 200;
	letter-spacing: .02em;
	margin: 0 0 50px !important;
	color: var(--melo-text);
}

.melo-native-page .melo-lead {
	max-width: 760px;
	margin: 0 auto 25px !important;
	color: var(--melo-muted);
	font-size: 18px;
}

.melo-native-page .melo-actions,
.melo-native-page .melo-actions.e-con {
	display: flex !important;
	flex-direction: row !important;
	gap: 12px !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	margin-top: 25px !important;
}

.melo-native-page .melo-actions .elementor-button {
	display: inline-block;
	border: 1px solid var(--melo-text);
	padding: 12px 20px;
	text-decoration: none;
	color: var(--melo-text);
	background: transparent;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: .03em;
}

.melo-native-page .melo-actions .melo-primary .elementor-button {
	background: var(--melo-text);
	color: #fff;
}

.melo-native-page .melo-section,
.melo-native-page .melo-section.e-con {
	display: block !important;
	padding: 56px 0 !important;
}

.melo-native-page .melo-section-intro,
.melo-native-page .melo-section-intro.e-con {
	display: block !important;
	margin-bottom: 24px !important;
}

.melo-native-page .melo-section-intro > .e-con {
	display: block !important;
}

.melo-native-page .melo-section-intro .melo-title .elementor-heading-title {
	font-size: clamp(28px, 4vw, 46px);
	margin: 0 0 25px !important;
}

.melo-native-page .melo-section-intro .melo-intro-copy {
	max-width: 520px;
	margin: 0 !important;
	color: var(--melo-muted);
}

.melo-native-page .melo-grid,
.melo-native-page .melo-grid.e-con {
	display: grid !important;
	gap: 18px !important;
}

.melo-native-page .melo-inspi-grid,
.melo-native-page .melo-inspi-grid.e-con {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.melo-native-page .melo-typo-grid,
.melo-native-page .melo-typo-grid.e-con {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.melo-native-page .melo-card,
.melo-native-page .melo-card.e-con {
	display: block !important;
	background: var(--melo-card);
	border: 1px solid var(--melo-line);
	overflow: hidden;
	padding: 0 !important;
}

.melo-native-page .melo-card .elementor-widget-image img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	display: block;
}

.melo-native-page .melo-card-text,
.melo-native-page .melo-card-text.e-con {
	display: block !important;
	padding: 14px 16px 18px !important;
}

.melo-native-page .melo-card-text .melo-eyebrow .elementor-widget-container {
	margin-bottom: 4px !important;
}

.melo-native-page .melo-card-title .elementor-heading-title {
	font-family: "Noto Sans", Arial, sans-serif;
	font-weight: 300;
	margin: 0 !important;
	font-size: 22px;
	color: var(--melo-text);
}

.melo-native-page .melo-compare,
.melo-native-page .melo-compare.e-con {
	display: grid !important;
	grid-template-columns: 1.3fr .7fr !important;
	gap: 28px !important;
	align-items: center !important;
	background: var(--melo-bg);
	padding: 24px !important;
	border: 1px solid var(--melo-line);
}

.melo-native-page .melo-compare img {
	width: 100%;
	display: block;
	background: #fff;
}

.melo-native-page .melo-compare-list,
.melo-native-page .melo-compare-list.e-con {
	display: grid !important;
	gap: 18px !important;
}

.melo-native-page .melo-compare-item,
.melo-native-page .melo-compare-item.e-con {
	display: block !important;
	border-bottom: 1px solid var(--melo-line);
	padding-bottom: 16px !important;
}

.melo-native-page .melo-compare-item ol {
	margin: 25px 0 0 !important;
	padding-left: 20px;
	color: var(--melo-muted);
}

.melo-native-page .melo-nav-typos {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 28px !important;
}

.melo-native-page .melo-nav-typos a {
	text-decoration: none;
	color: var(--melo-text);
	border: 1px solid var(--melo-line);
	border-radius: 999px;
	padding: 8px 12px;
	font-size: 13px;
	background: #fff;
}

.melo-native-page .melo-typo-card,
.melo-native-page .melo-typo-card.e-con {
	display: block !important;
	border: 1px solid var(--melo-line);
	background: #fff;
	padding: 22px !important;
}

.melo-native-page .melo-typo-text {
	min-height: 92px;
	color: var(--melo-muted);
	margin: 25px 0 0 !important;
}

.melo-native-page .melo-typo-card .elementor-widget-image img {
	width: 100%;
	margin-top: 16px;
	border: 1px solid var(--melo-line);
}

.melo-native-page .melo-help,
.melo-native-page .melo-help.e-con {
	display: block !important;
	text-align: center;
	background: var(--melo-bg);
	border: 1px solid var(--melo-line);
	padding: 44px 24px !important;
}

body.page-id-6693 #besoin-aide {
	scroll-margin-top: 92px;
}

.melo-back-to-top {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 9998;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	padding: 0 !important;
	border: 1px solid #2b4c5d !important;
	border-radius: 50% !important;
	background: #2b4c5d !important;
	color: #fff !important;
	font: 300 27px/1 "Noto Sans", Arial, sans-serif !important;
	box-shadow: 0 8px 24px rgba(43, 76, 93, .22);
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	cursor: pointer;
	transition: opacity .2s ease, visibility .2s ease, transform .2s ease, background-color .2s ease;
}

.melo-back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.melo-back-to-top:hover,
.melo-back-to-top:focus-visible {
	background: #fff !important;
	color: #2b4c5d !important;
}

.melo-back-to-top:focus-visible {
	outline: 3px solid rgba(43, 76, 93, .25);
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.melo-back-to-top {
		right: 16px;
		bottom: 16px;
		width: 44px;
		height: 44px;
		font-size: 24px !important;
	}
}

.melo-native-page .melo-help .melo-title .elementor-heading-title {
	font-size: clamp(28px, 4vw, 46px);
	margin: 0 0 25px !important;
}

.melo-native-page .melo-help .melo-lead {
	max-width: 680px;
	margin: 0 auto 25px !important;
}

.melo-native-page .melo-guide-card,
.melo-native-page .melo-guide-card.e-con {
	display: grid !important;
	grid-template-columns: 92px 1fr !important;
	gap: 24px !important;
	align-items: center !important;
	background: var(--melo-bg);
	border: 1px solid var(--melo-line);
	padding: 28px !important;
	margin-top: 34px !important;
}

.melo-native-page .melo-guide-card img {
	width: 72px;
	max-height: 72px;
	object-fit: contain;
}

.melo-native-page .melo-guide-copy,
.melo-native-page .melo-guide-copy.e-con {
	display: block !important;
}

.melo-native-page .melo-guide-copy .elementor-heading-title {
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: clamp(24px, 4vw, 36px);
	font-weight: 200;
	color: var(--melo-text);
	margin: 0 0 25px !important;
}

.melo-native-page .melo-guide-copy .elementor-widget-text-editor {
	margin-bottom: 0 !important;
}

.melo-native-page .melo-guide-card + .melo-actions,
.melo-native-page .melo-guide-card + .melo-actions.e-con {
	margin-top: 25px !important;
}

.melo-native-page .melo-thread-grid,
.melo-native-page .melo-thread-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)) !important;
	gap: 10px !important;
}

.melo-native-page .melo-thread-chip,
.melo-native-page .melo-thread-chip.e-con {
	display: grid !important;
	align-items: end !important;
	min-height: 72px !important;
	padding: 9px !important;
	border: 1px solid rgba(37, 34, 31, .14);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18);
}

.melo-native-page .melo-thread-chip .elementor-heading-title {
	display: inline-block;
	width: fit-content;
	margin: 0 !important;
	padding: 2px 5px;
	background: rgba(255, 255, 255, .82);
	color: #25221f;
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
}

.melo-native-page .melo-thread-family,
.melo-native-page .melo-thread-family.e-con {
	display: block !important;
	margin-top: 34px !important;
}

.melo-native-page .melo-thread-family:first-child,
.melo-native-page .melo-thread-family.e-con:first-child {
	margin-top: 0 !important;
}

.melo-native-page .melo-thread-family .melo-card-title .elementor-heading-title {
	margin: 0 0 18px !important;
	font-size: clamp(24px, 3vw, 36px);
}

.melo-native-page .melo-thread-feature,
.melo-native-page .melo-thread-feature.e-con {
	display: block !important;
}

.melo-native-page .melo-thread-feature > .elementor-widget-image img {
	width: 100%;
	height: 290px;
	object-fit: cover;
	object-position: center;
	display: block;
}

.melo-native-page .melo-thread-feature .melo-compare-list,
.melo-native-page .melo-thread-feature .melo-compare-list.e-con {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 28px !important;
	margin-top: 25px !important;
}

.melo-native-page .melo-thread-feature .melo-compare-item,
.melo-native-page .melo-thread-feature .melo-compare-item.e-con {
	border-bottom: 0;
	padding-bottom: 0 !important;
}

.melo-native-page .melo-thread-palette-app {
	display: grid;
	grid-template-columns: .58fr 1.42fr;
	column-gap: 58px;
	row-gap: 30px;
	align-items: start;
}

.melo-native-page .melo-thread-palette-copy {
	display: contents;
}

.melo-native-page .melo-thread-palette-app .melo-eyebrow {
	grid-column: 1 / -1;
	margin-bottom: 18px !important;
	text-transform: uppercase;
	letter-spacing: .18em;
	color: var(--melo-accent);
	font-size: 12px;
	font-weight: 400;
}

.melo-native-page .melo-thread-palette-app h2 {
	grid-column: 1 / -1;
	margin: 0;
	color: var(--melo-text);
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: clamp(40px, 5.8vw, 76px);
	font-weight: 200;
	line-height: 1.05;
	letter-spacing: 0;
}

.melo-native-page .melo-thread-tools {
	display: grid;
	grid-column: 1;
	grid-row: 3;
	gap: 12px;
}

.melo-native-page .melo-thread-palette-app > div:not(.melo-thread-palette-copy) {
	grid-column: 2;
	grid-row: 3;
}

.melo-native-page .melo-thread-tools input,
.melo-native-page .melo-thread-tools select {
	width: 100%;
	height: 44px;
	border: 1px solid var(--melo-line);
	border-radius: 999px;
	background: #fff;
	padding: 0 18px;
	color: var(--melo-text);
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 14px;
	font-weight: 300;
	outline: none;
}

.melo-native-page .melo-thread-tools input:focus,
.melo-native-page .melo-thread-tools select:focus {
	border-color: #b47758;
	box-shadow: 0 0 0 3px rgba(180, 119, 88, .12);
}

.melo-native-page .melo-thread-toolrow {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
}

.melo-native-page .melo-thread-reset {
	width: fit-content;
	margin-top: 8px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--melo-accent);
	text-transform: uppercase;
	letter-spacing: .14em;
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
}

.melo-native-page .melo-thread-swatches {
	display: grid;
	grid-template-columns: repeat(18, minmax(0, 1fr));
	gap: 8px;
	align-content: start;
}

.melo-native-page .melo-thread-swatch {
	aspect-ratio: 1;
	min-width: 0;
	border: 1px solid rgba(37, 34, 31, .12);
	border-radius: 2px;
	cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}

.melo-native-page .melo-thread-swatch:hover,
.melo-native-page .melo-thread-swatch:focus-visible {
	transform: scale(1.16);
	z-index: 2;
	box-shadow: 0 10px 24px rgba(37, 34, 31, .16);
}

.melo-native-page .melo-thread-hint {
	margin-top: 14px;
	color: var(--melo-muted);
	font-size: 13px;
}

.melo-thread-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(25, 22, 20, .42);
}

.melo-thread-modal.is-open {
	display: flex;
}

.melo-thread-modal__card {
	position: relative;
	display: grid;
	grid-template-columns: .95fr 1.05fr;
	width: min(820px, 100%);
	overflow: hidden;
	background: #fff;
	box-shadow: 0 30px 90px rgba(0, 0, 0, .25);
}

.melo-thread-modal__image {
	display: grid;
	place-items: center;
	min-height: 360px;
	padding: 22px;
	background: #fbf7f2;
}

.melo-thread-modal__image img {
	max-height: 520px;
	object-fit: contain;
}

.melo-thread-modal__content {
	padding: 44px;
	color: #25221f;
	font-family: "Noto Sans", Arial, sans-serif;
}

.melo-thread-modal__sample {
	width: 74px;
	height: 74px;
	margin-bottom: 24px;
	border: 1px solid #e8e0d7;
	border-radius: 50%;
}

.melo-thread-modal__content h3 {
	margin: 0 0 18px;
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 36px;
	font-weight: 200;
}

.melo-thread-modal__content p {
	color: #7a7168;
}

.melo-thread-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 42px;
	height: 42px;
	border: 1px solid #e8e0d7;
	border-radius: 50%;
	background: #fff;
	color: #25221f;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
}

.melo-native-page .melo-photo-mosaic,
.melo-native-page .melo-photo-mosaic.e-con {
	display: grid !important;
	grid-template-columns: 1.1fr .9fr 1fr !important;
	grid-auto-rows: 210px !important;
	gap: 18px !important;
}

.melo-native-page .melo-photo-mosaic .elementor-widget-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.melo-native-page .melo-photo-tall,
.melo-native-page .melo-photo-tall.e-con {
	grid-row: span 2 !important;
}

.melo-native-page .melo-photo-wide,
.melo-native-page .melo-photo-wide.e-con {
	grid-column: span 2 !important;
}

/* Guides Tissus et Biais / Liberty — structure Elementor + interactions ciblées. */
body.page-id-6695 .melo-native-page,
body.page-id-6696 .melo-native-page {
	padding-top: 50px !important;
}

.melo-native-page #collection,
.melo-native-page #sourcing,
.melo-native-page #vos-supports,
.melo-native-page #biais-collection,
.melo-native-page #liberty {
	scroll-margin-top: 130px;
}

.melo-native-page .melo-hero-mosaic,
.melo-native-page .melo-biais-hero-image {
	margin-top: 42px !important;
}

.melo-native-page .melo-biais-hero-image img {
	width: 100%;
	height: clamp(300px, 48vw, 520px);
	object-fit: cover;
	display: block;
}

.melo-native-page .melo-note,
.melo-native-page .melo-collection-count {
	color: var(--melo-muted);
	font-size: 13px;
}

.melo-native-page .melo-note {
	margin-top: 12px !important;
}

.melo-native-page .melo-collection-count {
	margin: 0 0 25px !important;
}

.melo-native-page .melo-soft-section,
.melo-native-page .melo-soft-section.e-con {
	margin-inline: -22px !important;
	padding-inline: 22px !important;
	background: var(--melo-bg);
}

.melo-fabric-filters {
	position: sticky;
	top: 112px;
	z-index: 12;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 30px;
	padding: 10px 0;
	background: rgba(255, 255, 255, .94);
	backdrop-filter: blur(8px);
}

.melo-fabric-filter {
	min-height: 38px;
	padding: 8px 14px !important;
	border: 1px solid var(--melo-line) !important;
	border-radius: 999px;
	background: #fff !important;
	color: var(--melo-text) !important;
	font: 400 12px/1.2 "Noto Sans", Arial, sans-serif;
	cursor: pointer;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.melo-fabric-filter:hover,
.melo-fabric-filter:focus-visible,
.melo-fabric-filter.is-active {
	border-color: #2b4c5d !important;
	background: #2b4c5d !important;
	color: #fff !important;
}

.melo-fabric-grid,
.melo-bias-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 24px 14px;
}

.melo-fabric-card,
.melo-bias-card {
	min-width: 0;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--melo-text) !important;
	font-family: "Noto Sans", Arial, sans-serif;
	text-align: left;
}

.melo-fabric-card[hidden] {
	display: none;
}

.melo-fabric-photo,
.melo-bias-photo {
	display: block;
	overflow: hidden;
	aspect-ratio: 1;
	background: #f2efeb;
}

.melo-fabric-photo img,
.melo-bias-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}

.melo-biais-native .melo-bias-photo img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.melo-fabric-card:hover img,
.melo-bias-card:hover img {
	transform: scale(1.035);
}

.melo-fabric-name,
.melo-bias-name {
	display: block;
	padding-top: 9px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	letter-spacing: .03em;
}

.melo-fabric-name small {
	display: block;
	margin-top: 3px;
	color: var(--melo-muted);
	font-size: 11px;
	font-weight: 300;
}

.melo-native-page .melo-sourcing-mosaic,
.melo-native-page .melo-sourcing-mosaic.e-con {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	grid-auto-rows: 170px !important;
	gap: 12px !important;
}

.melo-native-page .melo-sourcing-mosaic .elementor-widget-image:first-child {
	grid-column: span 2;
	grid-row: span 2;
}

.melo-native-page .melo-sourcing-mosaic .elementor-widget-image:nth-child(4) {
	grid-row: span 2;
}

.melo-native-page .melo-sourcing-mosaic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.melo-native-page .melo-step-grid,
.melo-native-page .melo-step-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin-top: 34px !important;
}

.melo-native-page .melo-step,
.melo-native-page .melo-step.e-con {
	display: block !important;
	padding-top: 18px !important;
	border-top: 1px solid #bdb9b1;
}

.melo-native-page .melo-step .melo-card-title .elementor-heading-title,
.melo-native-page .melo-support-item .melo-card-title .elementor-heading-title {
	margin-bottom: 25px !important;
	font-size: 18px;
	font-weight: 400;
}

.melo-native-page .melo-support-grid,
.melo-native-page .melo-support-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	border-top: 1px solid var(--melo-line);
}

.melo-native-page .melo-support-item,
.melo-native-page .melo-support-item.e-con {
	display: block !important;
	padding: 25px !important;
	border-right: 1px solid var(--melo-line);
	border-bottom: 1px solid var(--melo-line);
}

.melo-native-page .melo-dark-card,
.melo-native-page .melo-dark-card.e-con {
	display: block !important;
	margin-top: 34px !important;
	padding: 38px !important;
	background: #2b4c5d;
	color: #fff;
}

.melo-native-page .melo-dark-card .melo-card-title .elementor-heading-title,
.melo-native-page .melo-dark-card .melo-eyebrow .elementor-widget-container {
	color: #fff;
}

.melo-native-page .melo-dark-card .melo-actions {
	justify-content: flex-start !important;
}

.melo-native-page .melo-dark-card .melo-primary .elementor-button {
	border-color: #fff;
	background: #fff;
	color: #2b4c5d;
}

.melo-bias-card,
.melo-liberty-card {
	cursor: zoom-in;
}

.melo-note-box {
	margin-top: 32px !important;
	padding: 22px 24px;
	border: 1px solid var(--melo-line);
	color: var(--melo-muted);
	font-size: 14px;
}

.melo-liberty-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 18px;
}

.melo-liberty-card {
	position: relative;
	grid-column: span 4;
	min-height: 390px;
	overflow: hidden;
	padding: 0 !important;
	border: 0 !important;
	background: #eee8e1 !important;
	color: #fff !important;
}

.melo-liberty-card.wide {
	grid-column: span 12;
	min-height: 430px;
}

.melo-liberty-card.half {
	grid-column: span 6;
	min-height: 430px;
}

.melo-liberty-card.tall {
	min-height: 500px;
}

.melo-liberty-card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s ease;
}

.melo-biais-native .melo-liberty-card img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.melo-liberty-card::after {
	position: absolute;
	inset: auto 0 0;
	height: 42%;
	background: linear-gradient(to top, rgba(0, 0, 0, .5), transparent);
	content: "";
}

.melo-liberty-card:hover img {
	transform: scale(1.025);
}

.melo-liberty-card span {
	position: absolute;
	left: 22px;
	bottom: 18px;
	z-index: 2;
	font: 400 13px/1.2 "Noto Sans", Arial, sans-serif;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.melo-native-page .melo-liberty-proof,
.melo-native-page .melo-liberty-proof.e-con {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 28px !important;
	margin-top: 42px !important;
	padding-top: 30px !important;
	border-top: 1px solid var(--melo-line);
}

.melo-native-page .melo-uses-grid,
.melo-native-page .melo-uses-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 12px !important;
	margin-top: 38px !important;
}

.melo-native-page .melo-uses-grid img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

.melo-biais-native .melo-uses-grid .elementor-widget-image {
	overflow: hidden;
	aspect-ratio: 1;
}

.melo-biais-native .melo-uses-grid img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.melo-native-page .melo-phospho-section,
.melo-native-page .melo-phospho-section.e-con {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 56px !important;
	align-items: center !important;
	margin-inline: -22px !important;
	padding: 56px 22px !important;
	background: #202321;
	color: #fff;
}

.melo-native-page .melo-phospho-section .melo-title .elementor-heading-title,
.melo-native-page .melo-phospho-section .melo-eyebrow .elementor-widget-container {
	color: #fff;
}

.melo-native-page .melo-phospho-section .melo-title .elementor-heading-title {
	font-size: clamp(28px, 4vw, 46px);
	margin-bottom: 25px !important;
}

.melo-native-page .melo-phospho-section img {
	width: 100%;
	display: block;
}

.melo-fluo-dots {
	display: flex;
	gap: 10px;
	margin-top: 25px;
}

.melo-fluo-dots i {
	width: 42px;
	height: 8px;
	border-radius: 99px;
	box-shadow: 0 0 14px currentColor;
}

.melo-fluo-dots i:nth-child(1) { color: #fff85a; background: #fff85a; }
.melo-fluo-dots i:nth-child(2) { color: #ff5ebc; background: #ff5ebc; }
.melo-fluo-dots i:nth-child(3) { color: #6fff6f; background: #6fff6f; }
.melo-fluo-dots i:nth-child(4) { color: #ff9a42; background: #ff9a42; }

.melo-guide-lightbox {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: none;
	place-items: center;
	padding: 30px;
	background: rgba(0, 0, 0, .88);
}

.melo-guide-lightbox.is-open {
	display: grid;
}

.melo-guide-lightbox img {
	max-width: min(900px, 94vw);
	max-height: 88vh;
	object-fit: contain;
}

.melo-guide-lightbox-close {
	position: fixed;
	top: 20px;
	right: 24px;
	z-index: 2;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #fff !important;
	font-size: 38px;
	cursor: pointer;
}

@media (max-width: 900px) {
	.melo-fabric-grid,
	.melo-bias-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.melo-native-page .melo-sourcing-mosaic,
	.melo-native-page .melo-sourcing-mosaic.e-con,
	.melo-native-page .melo-step-grid,
	.melo-native-page .melo-step-grid.e-con,
	.melo-native-page .melo-phospho-section,
	.melo-native-page .melo-phospho-section.e-con {
		grid-template-columns: 1fr 1fr !important;
	}

	.melo-native-page .melo-step-grid,
	.melo-native-page .melo-step-grid.e-con {
		gap: 28px !important;
	}

	.melo-liberty-card.wide,
	.melo-liberty-card.half,
	.melo-liberty-card.third {
		grid-column: span 6;
		min-height: 360px;
	}

	.melo-native-page .melo-uses-grid,
	.melo-native-page .melo-uses-grid.e-con {
		grid-template-columns: 1fr 1fr !important;
	}
}

@media (max-width: 640px) {
	.melo-fabric-filters {
		position: static;
	}

	.melo-fabric-grid,
	.melo-bias-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 10px;
	}

	.melo-native-page .melo-sourcing-mosaic,
	.melo-native-page .melo-sourcing-mosaic.e-con,
	.melo-native-page .melo-step-grid,
	.melo-native-page .melo-step-grid.e-con,
	.melo-native-page .melo-support-grid,
	.melo-native-page .melo-support-grid.e-con,
	.melo-native-page .melo-liberty-proof,
	.melo-native-page .melo-liberty-proof.e-con,
	.melo-native-page .melo-phospho-section,
	.melo-native-page .melo-phospho-section.e-con {
		grid-template-columns: 1fr !important;
	}

	.melo-native-page .melo-sourcing-mosaic .elementor-widget-image:first-child,
	.melo-native-page .melo-sourcing-mosaic .elementor-widget-image:nth-child(4) {
		grid-column: auto;
		grid-row: auto;
	}

	.melo-liberty-grid {
		gap: 10px;
	}

	.melo-liberty-card.wide,
	.melo-liberty-card.half,
	.melo-liberty-card.third {
		grid-column: span 12;
		min-height: 310px;
	}

	.melo-native-page .melo-dark-card,
	.melo-native-page .melo-dark-card.e-con {
		padding: 28px !important;
	}
}

.melo-picto-gallery-shell {
	--melo-text: #25221f;
	--melo-muted: #7a7168;
	--melo-line: #e8e0d7;
	--melo-bg: #fbf7f2;
	--melo-card: #fffaf5;
	--melo-accent: #b47758;
	width: min(100%, 1140px);
	max-width: 1140px;
	margin: 0 auto;
	padding: 20px 22px 70px;
	box-sizing: border-box;
	color: var(--melo-text);
	font-weight: 300;
}

.melo-picto-gallery-shell *,
.melo-picto-gallery-shell *::before,
.melo-picto-gallery-shell *::after {
	box-sizing: border-box;
}

.melo-picto-gallery-shell .melo-breadcrumb {
	display: block;
	margin: 0;
	color: var(--melo-muted);
	font-size: 13px;
	line-height: 1.4;
}

.melo-picto-gallery-shell .melo-breadcrumb a {
	color: #2b4c5d;
	text-decoration: none;
	font-weight: 600;
}

.melo-picto-hero {
	margin-top: 50px;
	padding-bottom: 42px;
	text-align: center;
	border-bottom: 1px solid var(--melo-line);
}

.melo-picto-hero .melo-eyebrow {
	margin: 0 0 10px;
	text-transform: uppercase;
	letter-spacing: .14em;
	font-size: 12px;
	line-height: 1.4;
	color: var(--melo-accent);
	font-weight: 400;
}

.melo-picto-hero h1 {
	margin: 0;
	color: var(--melo-text);
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: clamp(38px, 6vw, 72px);
	font-weight: 200;
	line-height: 1.08;
	letter-spacing: 0;
}

.melo-picto-hero p {
	max-width: 840px;
	margin: 50px auto 0;
	color: var(--melo-muted);
	font-size: 18px;
	line-height: 1.55;
	font-weight: 300;
}

.melo-picto-gallery {
	padding-top: 50px;
}

.melo-picto-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 34px;
}

.melo-picto-filter {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 8px 14px;
	border: 1px solid var(--melo-line);
	border-radius: 999px;
	background: #fff;
	color: var(--melo-text);
	font: 500 13px/1.2 "Noto Sans", Arial, sans-serif;
	cursor: pointer;
	transition: color .2s ease, border-color .2s ease, background-color .2s ease, transform .2s ease;
}

.melo-picto-filter span {
	color: var(--melo-muted);
	font-weight: 400;
}

.melo-picto-filter:hover,
.melo-picto-filter:focus-visible,
.melo-picto-filter.is-active {
	border-color: #2b4c5d;
	background: #2b4c5d;
	color: #fff;
}

.melo-picto-filter:hover span,
.melo-picto-filter:focus-visible span,
.melo-picto-filter.is-active span {
	color: rgba(255, 255, 255, .72);
}

.melo-picto-filter:hover,
.melo-picto-filter:focus-visible {
	transform: translateY(-1px);
}

.melo-picto-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.melo-picto-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: 14px;
	background: #fff !important;
	border: 1px solid var(--melo-line);
	color: var(--melo-text);
	text-decoration: none;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.melo-picto-card:hover,
.melo-picto-card:focus-visible {
	border-color: #2b4c5d;
	box-shadow: 0 12px 28px rgba(43, 76, 93, .10);
	transform: translateY(-2px);
}

.melo-picto-card.is-hidden {
	display: none;
}

.melo-picto-card__image {
	display: grid;
	place-items: center;
	width: 100%;
	aspect-ratio: 1 / 1;
	margin-bottom: 18px;
	background: #fff !important;
	border: 1px solid #ded8d1;
	box-shadow: inset 0 0 0 8px #fff, 0 1px 0 rgba(43, 76, 93, .04);
	opacity: 1 !important;
}

.melo-picto-card__image img {
	display: block;
	width: 62%;
	height: 62%;
	object-fit: contain;
}

.melo-picto-card__theme {
	margin-bottom: 7px;
	text-transform: uppercase;
	letter-spacing: .12em;
	color: var(--melo-accent);
	font-size: 11px;
	line-height: 1.35;
	font-weight: 500;
}

.melo-picto-card__title {
	color: var(--melo-text);
	font-size: 16px;
	line-height: 1.35;
	font-weight: 400;
}

.elementor-lightbox .elementor-lightbox-image,
.dialog-lightbox-widget .elementor-lightbox-image,
.dialog-lightbox-widget img[src*="/fpd_icos_svg/"] {
	background: #fff !important;
	padding: 34px !important;
	border: 1px solid #ded8d1 !important;
	box-shadow: 0 18px 50px rgba(0, 0, 0, .24) !important;
	box-sizing: border-box !important;
	opacity: 1 !important;
}

@media (max-width: 900px) {
	.melo-native-page .melo-section-intro,
	.melo-native-page .melo-section-intro.e-con {
		display: block !important;
	}

	.melo-native-page .melo-inspi-grid,
	.melo-native-page .melo-inspi-grid.e-con {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.melo-native-page .melo-compare,
	.melo-native-page .melo-compare.e-con {
		grid-template-columns: 1fr !important;
	}

	.melo-native-page .melo-typo-grid,
	.melo-native-page .melo-typo-grid.e-con {
		grid-template-columns: 1fr !important;
	}

	.melo-picto-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.melo-native-page .melo-photo-mosaic,
	.melo-native-page .melo-photo-mosaic.e-con {
		grid-template-columns: 1fr 1fr !important;
		grid-auto-rows: 170px !important;
	}

	.melo-native-page .melo-thread-palette-app {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.melo-native-page .melo-thread-tools,
	.melo-native-page .melo-thread-palette-app > div:not(.melo-thread-palette-copy) {
		grid-column: 1;
		grid-row: auto;
	}

	.melo-native-page .melo-thread-swatches {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.melo-native-page .melo-guide-card,
	.melo-native-page .melo-guide-card.e-con {
		grid-template-columns: 1fr !important;
		text-align: center;
	}

	.melo-native-page .melo-guide-card img {
		margin: auto;
	}

	.melo-picto-gallery-shell {
		padding: 20px 16px 52px;
	}

	.melo-picto-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.melo-picto-card {
		padding: 12px;
	}

	.melo-native-page .melo-thread-grid,
	.melo-native-page .melo-thread-grid.e-con {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.melo-native-page .melo-thread-feature .melo-compare-list,
	.melo-native-page .melo-thread-feature .melo-compare-list.e-con,
	.melo-native-page .melo-thread-toolrow {
		grid-template-columns: 1fr !important;
	}

	.melo-native-page .melo-thread-swatches {
		grid-template-columns: repeat(7, minmax(0, 1fr));
		gap: 6px;
	}

	.melo-thread-modal__card {
		grid-template-columns: 1fr;
	}

	.melo-thread-modal__content {
		padding: 28px;
	}

	.melo-native-page .melo-photo-mosaic,
	.melo-native-page .melo-photo-mosaic.e-con {
		display: block !important;
	}

	.melo-native-page .melo-photo-mosaic .elementor-widget-image {
		margin-bottom: 12px !important;
	}

	.melo-native-page .melo-photo-mosaic .elementor-widget-image img {
		height: auto;
	}
}

@media (max-width: 520px) {
	.melo-native-page,
	.melo-native-page.e-con {
		padding: 12px 14px 50px !important;
	}

	.melo-native-page .melo-hero,
	.melo-native-page .melo-hero.e-con {
		padding: 0 0 42px !important;
	}

	.melo-native-page .melo-inspi-grid,
	.melo-native-page .melo-inspi-grid.e-con {
		grid-template-columns: 1fr 1fr !important;
		gap: 10px !important;
	}

	.melo-native-page .melo-card-text,
	.melo-native-page .melo-card-text.e-con {
		padding: 10px !important;
	}

	.melo-native-page .melo-card-title .elementor-heading-title {
		font-size: 16px;
	}

	.melo-native-page .melo-section,
	.melo-native-page .melo-section.e-con {
		padding: 40px 0 !important;
	}
}
