/* =============================================
   Eden Essences — Thème custom (V0.2)
   Maison d'Auteurs de Haute Parfumerie d'Intérieur
   ============================================= */

:root {
	--ivoire: #FBF8F4;
	--ivoire-chaud: #F5F0E8;
	--graphite: #0F0E0D;
	--or: #B89B6A;
	--or-pale: #D4B886;
	--vert: #2C3E2E;
	--brun: #6B4F35;
	--cendre: #6B635A;
	--pierre: #E8E1D5;
	/* Palette chaude étendue (refonte DA 2026-06-03) — 60% clair / 25% chaud moyen / 15% sombre */
	--craie: #EEE7DC;
	--sable: #D8C8B3;
	--pierre-chaude: #B9A894;
	--cacao: #3A2B22;
	--ambre: #5B3A26;
	--bronze: #B08A57;
	--or-patine: #C5A46D;
	--olive: #6F735D;
	--charbon: #11100E;
	--easing: cubic-bezier(0.22, 1, 0.36, 1);
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	font-family: 'Schibsted Grotesk', sans-serif;
	color: var(--graphite); background: var(--ivoire);
	line-height: 1.75; font-size: 16px;
	-webkit-font-smoothing: antialiased;
}
.serif { font-family: 'Cormorant Garamond', serif; font-weight: 300; }
.upper {
	text-transform: uppercase; letter-spacing: 0.22em;
	font-size: 10px; font-weight: 500;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }

/* Filtre Eden harmonisé sur toutes les images */
img, [class*="-bg"]:not(.hero-bg), [class*="-img"] {
	filter: sepia(0.08) saturate(0.88) contrast(1.04) brightness(0.94);
}

/* ---- HEADER ---- */
.eden-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 80;
	background: rgba(251, 248, 244, 0.96);
	backdrop-filter: blur(18px);
	border-bottom: 1px solid var(--pierre);
}
.header-top {
	text-align: center; padding: 9px 40px;
	font-size: 10px; letter-spacing: 0.28em; color: var(--ivoire);
	text-transform: uppercase; background: var(--graphite);
}
.header-main {
	display: flex; align-items: center; justify-content: space-between;
	padding: 24px 60px 20px;
}
.header-side {
	flex: 1; display: flex; gap: 28px;
	font-size: 11px; letter-spacing: 0.24em;
	text-transform: uppercase; font-weight: 500;
}
.header-side.right { justify-content: flex-end; }
.header-center { text-align: center; }
.eden-header .logo {
	font-family: 'Cormorant Garamond', serif;
	font-size: 26px; letter-spacing: 0.38em; font-weight: 400; color: var(--graphite);
}
.logo-subtitle {
	font-family: 'Cormorant Garamond', serif; font-style: italic;
	font-size: 11px; color: var(--cendre); margin-top: 3px; letter-spacing: 0.06em;
}
.header-side a { transition: opacity 0.3s ease; }
.header-side a:hover { opacity: 0.5; }
.eden-nav { padding: 14px 60px 18px; border-top: 1px solid rgba(232,225,213,0.5); }
.eden-nav-menu {
	list-style: none; display: flex; justify-content: center; gap: 52px;
	font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase; font-weight: 500;
}
.eden-nav-menu a {
	padding-bottom: 4px; border-bottom: 1px solid transparent;
	transition: border-color 0.5s var(--easing);
}
.eden-nav-menu a:hover { border-color: var(--or); }

/* ---- MAIN ---- */
.eden-main { padding-top: 168px; }

/* ---- HERO Collection Fusion ---- */
.eden-hero {
	position: relative; min-height: calc(100vh - 168px);
	display: flex; align-items: center; justify-content: center;
	overflow: hidden; background: var(--graphite);
}
.hero-bg {
	position: absolute; inset: 0;
	background-size: cover; background-position: center;
}
/* Placeholder premium : nuit ambrée, vapeur dorée, à remplacer par image Cowork dès livraison */
.hero-bg-placeholder {
	background:
		radial-gradient(ellipse 60% 50% at 70% 30%, rgba(184,155,106,0.22) 0%, transparent 55%),
		radial-gradient(ellipse 50% 60% at 25% 75%, rgba(212,184,134,0.13) 0%, transparent 60%),
		radial-gradient(ellipse 80% 70% at 50% 100%, rgba(184,155,106,0.08) 0%, transparent 70%),
		linear-gradient(160deg, #0A0908 0%, #14110E 45%, #1A1612 75%, #0F0E0D 100%);
	animation: heroBreath 18s ease-in-out infinite alternate;
}
@keyframes heroBreath {
	0% { filter: brightness(1) saturate(1); transform: scale(1.02); }
	100% { filter: brightness(1.08) saturate(1.1); transform: scale(1.06); }
}
.hero-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(15,14,13,0.15) 0%, rgba(15,14,13,0.05) 50%, rgba(15,14,13,0.45) 100%);
}
.hero-content {
	position: relative; z-index: 2; text-align: center; color: var(--ivoire);
	padding: 0 40px; max-width: 1140px;
}
.hero-eyebrow {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 13px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--or-pale); margin-bottom: 42px;
	padding-bottom: 18px; border-bottom: 1px solid rgba(184,155,106,0.5);
}
.hero-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(48px, 7.5vw, 112px); font-weight: 300;
	letter-spacing: 0.04em; line-height: 1; margin: 0 0 36px;
	color: var(--ivoire);
	white-space: nowrap;
}
.hero-title em {
	font-style: italic; font-weight: 300;
	color: var(--or-pale); margin: 0 0.22em;
	font-size: 0.72em; vertical-align: 0.08em;
}
.hero-sub {
	font-family: 'Cormorant Garamond', serif; font-style: italic;
	font-size: clamp(17px, 1.55vw, 22px); line-height: 1.65;
	color: rgba(251,248,244,0.82);
	max-width: 620px; margin: 0 auto 48px;
}
.hero-cta {
	display: flex; gap: 18px; justify-content: center; flex-wrap: wrap;
	margin-bottom: 36px;
}
.btn-hero {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase;
	padding: 18px 38px; text-decoration: none;
	transition: all 0.4s ease; cursor: pointer;
	border: 1px solid var(--or);
}
.btn-hero-primary {
	background: var(--or); color: var(--graphite);
}
.btn-hero-primary:hover {
	background: var(--or-pale); border-color: var(--or-pale);
}
.btn-hero-ghost {
	background: transparent; color: var(--or-pale);
}
.btn-hero-ghost:hover {
	background: rgba(184,155,106,0.1); color: var(--ivoire);
}
.hero-mention {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.34em; text-transform: uppercase;
	color: rgba(212,184,134,0.65); margin: 0;
}
.hero-scroll {
	position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%);
	color: rgba(212,184,134,0.6); font-size: 22px; line-height: 1;
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	animation: scrollPulse 2.8s ease-in-out infinite;
}
@keyframes scrollPulse {
	0%, 100% { transform: translateX(-50%) translateY(0); opacity: 0.5; }
	50% { transform: translateX(-50%) translateY(10px); opacity: 0.95; }
}
@media (max-width: 900px) {
	.hero-title { white-space: normal; font-size: clamp(44px, 11vw, 84px); }
	.hero-title em { font-size: 0.65em; margin: 0 0.12em; }
}
@media (max-width: 768px) {
	.hero-cta { flex-direction: column; align-items: center; gap: 12px; }
	.btn-hero { width: 100%; max-width: 320px; }
	.hero-eyebrow { margin-bottom: 28px; font-size: 11px; letter-spacing: 0.34em; }
}

/* ---- MANIFESTO ---- */
.eden-manifesto {
	padding: 220px 40px; text-align: center; background: var(--ivoire-chaud);
}
.manifesto-inner {
	max-width: 820px; margin: 0 auto;
}
.manifesto-eyebrow {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--or); margin-bottom: 48px;
}
.manifesto-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(34px, 4.4vw, 58px); line-height: 1.2; letter-spacing: 0.01em;
	color: var(--graphite); margin: 0 0 56px;
}
.manifesto-divider {
	width: 48px; height: 1px; background: var(--or);
	margin: 0 auto 56px;
}
.manifesto-text {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(18px, 1.5vw, 22px); line-height: 1.75; color: var(--graphite);
	max-width: 680px; margin: 0 auto 28px;
	letter-spacing: 0.005em;
}
.manifesto-text:last-child { margin-bottom: 0; }
.reveal-line { display: block; overflow: hidden; }
.reveal-line > span { display: inline-block; }
@media (max-width: 768px) {
	.eden-manifesto { padding: 120px 24px; }
	.manifesto-eyebrow { margin-bottom: 32px; letter-spacing: 0.36em; }
	.manifesto-title { margin-bottom: 36px; }
	.manifesto-divider { margin-bottom: 36px; }
}

/* ---- COLLECTION FUSION — vue d'ensemble ---- */
.eden-fusion-overview {
	padding: 220px 40px; text-align: center;
	background:
		radial-gradient(ellipse 70% 60% at 50% 30%, rgba(184,155,106,0.10) 0%, transparent 60%),
		linear-gradient(180deg, #0A0908 0%, #14110E 50%, #0A0908 100%);
	color: var(--ivoire);
}
.fusion-inner {
	max-width: 920px; margin: 0 auto;
}
.fusion-eyebrow {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--or-pale); margin-bottom: 36px;
}
.fusion-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(42px, 5.6vw, 76px); line-height: 1.05; letter-spacing: 0.03em;
	color: var(--ivoire); margin: 0 0 44px;
}
.fusion-divider {
	width: 56px; height: 1px; background: var(--or);
	margin: 0 auto 56px;
}
.fusion-mantra {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(20px, 1.7vw, 26px); line-height: 1.6;
	color: rgba(251,248,244,0.88);
	max-width: 720px; margin: 0 auto;
	letter-spacing: 0.01em;
}
.fusion-mantra-lead { margin-bottom: 88px; }
.fusion-mantra-close { margin-top: 88px; margin-bottom: 64px; }
.fusion-heritages {
	display: flex; align-items: center; justify-content: center;
	gap: 56px; flex-wrap: nowrap;
}
.fusion-heritage {
	flex: 1; max-width: 380px;
}
.fusion-heritage-label {
	display: block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.46em; text-transform: uppercase; font-weight: 500;
	color: var(--or); margin-bottom: 20px;
}
.fusion-heritage-list {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(17px, 1.4vw, 21px); line-height: 1.7;
	color: var(--or-pale);
	margin: 0; letter-spacing: 0.02em;
}
.fusion-heritage-x {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(28px, 3vw, 44px);
	color: var(--or); line-height: 1;
	padding: 0 8px;
}
.btn-fusion {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.32em; text-transform: uppercase; font-weight: 500;
	color: var(--or-pale); padding: 18px 38px;
	border: 1px solid var(--or);
	text-decoration: none; transition: all 0.4s ease;
}
.btn-fusion:hover {
	background: var(--or); color: var(--graphite);
}
@media (max-width: 768px) {
	.eden-fusion-overview { padding: 120px 24px; }
	.fusion-mantra-lead { margin-bottom: 56px; }
	.fusion-mantra-close { margin-top: 56px; margin-bottom: 48px; }
	.fusion-heritages { flex-direction: column; gap: 32px; }
	.fusion-heritage-x { padding: 8px 0; }
	.btn-fusion { width: 100%; max-width: 320px; }
}

/* ---- LES 3 UNIVERS — Option C teaser ---- */
.eden-universes-teaser {
	padding: 220px 40px; text-align: center; background: var(--ivoire-chaud);
}
.universes-teaser-inner {
	max-width: 1200px; margin: 0 auto;
}
.universes-teaser-eyebrow {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--or); margin-bottom: 36px;
}
.universes-teaser-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(34px, 4.4vw, 56px); line-height: 1.15; letter-spacing: 0.01em;
	color: var(--graphite); margin: 0 0 44px;
}
.universes-teaser-divider {
	width: 48px; height: 1px; background: var(--or);
	margin: 0 auto 44px;
}
.universes-teaser-intro {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 1.5vw, 22px); line-height: 1.7;
	color: var(--graphite); opacity: 0.78;
	max-width: 560px; margin: 0 auto 120px;
}
.universes-teaser-grid {
	display: grid; grid-template-columns: 1fr 1fr 1fr;
	gap: 0;
	align-items: stretch;
}
.universe-tease {
	padding: 0 44px;
	border-right: 1px solid rgba(184,155,106,0.22);
	text-align: center;
	display: flex; flex-direction: column;
	transition: background 0.45s ease;
}
.universe-tease:last-child { border-right: none; }
.universe-tease-num {
	display: block;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(44px, 4.6vw, 66px); line-height: 1;
	color: var(--or); opacity: 0.42;
	margin-bottom: 40px;
	transition: opacity 0.45s ease;
	letter-spacing: 0.02em;
}
.universe-tease:hover .universe-tease-num { opacity: 0.78; }
.universe-tease-name {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(26px, 2.4vw, 36px); line-height: 1.2; letter-spacing: 0.025em;
	color: var(--graphite); margin: 0 0 28px;
}
.universe-tease-line {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(16px, 1.4vw, 20px); line-height: 1.55;
	color: var(--graphite); opacity: 0.72;
	max-width: 260px; margin: 0 auto 0;
}
.universe-tease-veil {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.34em; text-transform: uppercase; font-weight: 500;
	color: var(--or); opacity: 0.78;
	margin-top: auto; padding-top: 22px;
	position: relative;
}
.universe-tease-veil::before {
	content: ''; position: absolute; top: 0; left: 50%;
	transform: translateX(-50%);
	width: 56px; height: 1px; background: var(--or);
	opacity: 0.5;
}
.universe-tease > * + .universe-tease-veil { margin-top: auto; padding-top: 48px; }
.universes-teaser-footnote {
	margin: 120px auto 0;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(15px, 1.2vw, 18px); line-height: 1.7;
	color: var(--graphite); opacity: 0.62;
	max-width: 620px;
}
.universes-teaser-footnote em {
	color: var(--or); font-style: italic; opacity: 1;
}
@media (max-width: 900px) {
	.universes-teaser-grid { grid-template-columns: 1fr; gap: 64px; }
	.universe-tease { border-right: none; border-bottom: 1px solid rgba(184,155,106,0.18); padding: 0 24px 56px; }
	.universe-tease:last-child { border-bottom: none; padding-bottom: 0; }
	.universe-tease > * + .universe-tease-veil { padding-top: 32px; margin-top: 24px; }
}
@media (max-width: 768px) {
	.eden-universes-teaser { padding: 120px 24px; }
	.universes-teaser-intro { margin-bottom: 80px; }
	.universes-teaser-footnote { margin-top: 80px; }
}

/* ---- 3 SUPPORTS — Bougies / Brumes / Parfums ---- */
.eden-supports {
	padding: 220px 40px; text-align: center;
	background:
		radial-gradient(ellipse 80% 50% at 50% 30%, rgba(184,155,106,0.08) 0%, transparent 65%),
		linear-gradient(180deg, #0A0908 0%, #14110E 50%, #0A0908 100%);
	color: var(--ivoire);
}
.supports-inner {
	max-width: 1200px; margin: 0 auto;
}
.supports-eyebrow {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--or-pale); margin-bottom: 36px;
}
.supports-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(34px, 4.4vw, 56px); line-height: 1.15; letter-spacing: 0.01em;
	color: var(--ivoire); margin: 0 0 44px;
}
.supports-divider {
	width: 48px; height: 1px; background: var(--or);
	margin: 0 auto 112px;
}
.supports-grid {
	display: grid; grid-template-columns: 1fr 1fr 1fr;
	gap: 56px;
}
.support-card {
	display: flex; flex-direction: column;
	text-align: center;
}
.support-visual {
	position: relative;
	width: 100%; aspect-ratio: 1 / 1;
	margin-bottom: 40px;
	display: flex; align-items: center; justify-content: center;
	border: 1px solid rgba(184,155,106,0.18);
	overflow: hidden;
	transition: border-color 0.5s ease;
}
.support-card:hover .support-visual { border-color: rgba(184,155,106,0.4); }
.support-visual-bougie {
	background:
		url('../images/supports/bougie.jpg') center / cover no-repeat,
		radial-gradient(ellipse 40% 55% at 50% 55%, rgba(232,180,90,0.28) 0%, transparent 60%),
		radial-gradient(ellipse 60% 80% at 50% 100%, rgba(184,155,106,0.12) 0%, transparent 70%),
		linear-gradient(180deg, #0A0908 0%, #14110E 100%);
}
.support-visual-brume {
	background:
		url('../images/supports/brume.jpg') center / cover no-repeat,
		radial-gradient(ellipse 70% 40% at 50% 30%, rgba(232,225,213,0.10) 0%, transparent 65%),
		radial-gradient(ellipse 90% 30% at 50% 60%, rgba(184,155,106,0.06) 0%, transparent 70%),
		linear-gradient(180deg, #0F0E0D 0%, #14110E 100%);
}
.support-visual-parfum {
	background:
		url('../images/supports/parfum.jpg') center / cover no-repeat,
		radial-gradient(ellipse 35% 60% at 50% 55%, rgba(212,184,134,0.22) 0%, transparent 55%),
		radial-gradient(ellipse 80% 90% at 50% 100%, rgba(184,155,106,0.10) 0%, transparent 75%),
		linear-gradient(180deg, #0A0908 0%, #1A1612 50%, #0A0908 100%);
}
/* Images réelles déposées : on masque les glyphes placeholder + micro-zoom au survol */
.support-visual [class^="support-glyph"],
.support-visual .support-glyph { display: none; }
.support-visual::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(8,7,6,0.45) 100%);
	pointer-events: none;
}
.support-visual-bougie,
.support-visual-brume,
.support-visual-parfum { transition: transform 0.7s cubic-bezier(.2,.6,.2,1); }
.support-card:hover .support-visual-bougie,
.support-card:hover .support-visual-brume,
.support-card:hover .support-visual-parfum { transform: scale(1.03); }
.support-glyph {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(56px, 6vw, 96px); line-height: 1;
	color: var(--or-pale); opacity: 0.55;
	transition: opacity 0.5s ease;
}
.support-card:hover .support-glyph { opacity: 0.85; }
.support-name {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(22px, 2vw, 30px); line-height: 1.2; letter-spacing: 0.025em;
	color: var(--ivoire); margin: 0 0 18px;
}
.support-line {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(16px, 1.4vw, 19px); line-height: 1.6;
	color: rgba(251,248,244,0.72);
	max-width: 280px; margin: 0 auto;
}
@media (max-width: 900px) {
	.supports-grid { grid-template-columns: 1fr; gap: 64px; max-width: 480px; margin: 0 auto; }
}
@media (max-width: 768px) {
	.eden-supports { padding: 120px 24px; }
	.supports-divider { margin-bottom: 72px; }
}

/* ---- PONT CULTUREL ---- */
.eden-bridge { padding: 180px 60px; background: var(--ivoire-chaud); }
.bridge-header { text-align: center; margin-bottom: 100px; }
.bridge-header .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.bridge-header h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(38px, 5vw, 64px);
	font-weight: 300; line-height: 1.1; color: var(--graphite);
}
.bridge-grid {
	display: grid; grid-template-columns: repeat(3, 1fr);
	gap: 60px; max-width: 1400px; margin: 0 auto;
}
.bridge-panel { text-align: center; }
.bridge-panel-img-wrap {
	width: 100%; aspect-ratio: 4/5; overflow: hidden; margin-bottom: 32px;
	box-shadow: 0 30px 60px -30px rgba(15,14,13,0.3);
}
.bridge-panel-img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 8s ease-out;
}
.bridge-panel:hover .bridge-panel-img { transform: scale(1.05); }
.bridge-panel h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: 28px; color: var(--graphite); margin-bottom: 18px;
}
.bridge-panel p { color: var(--cendre); font-size: 15px; line-height: 1.8; }
.bridge-conclusion {
	text-align: center; margin-top: 100px;
	font-family: 'Cormorant Garamond', serif; font-style: italic;
	font-size: clamp(20px, 2.4vw, 28px); color: var(--brun);
}

/* ---- UNIVERS ---- */
.eden-universes { padding: 180px 0 0; background: var(--ivoire); }
.universes-header { text-align: center; margin-bottom: 80px; padding: 0 40px; max-width: 800px; margin-left: auto; margin-right: auto; }
.universes-header .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.universes-header h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(38px, 5vw, 60px);
	font-weight: 300; color: var(--graphite); margin-bottom: 26px;
}
.universes-intro {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 2vw, 22px); color: var(--cendre); line-height: 1.6;
}
.universes-grid {
	display: grid; grid-template-columns: 1fr 1fr; gap: 0; max-width: 100%;
}
.universes-grid-3 {
	grid-template-columns: repeat(3, 1fr);
}
.universes-footnote {
	text-align: center; padding: 60px 40px 0;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(15px, 1.4vw, 18px); color: var(--cendre);
	letter-spacing: 0.02em;
}
.universes-footnote em { color: var(--or); font-style: italic; }
.universe-card {
	position: relative; aspect-ratio: 4/5; overflow: hidden;
	cursor: pointer; background: var(--graphite) center/cover no-repeat;
	display: block; text-decoration: none; color: inherit;
	transition: transform 8s ease-out;
}
.universe-card::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(15,14,13,0.1) 0%, rgba(15,14,13,0.65) 100%);
	z-index: 1;
}
.universe-card:hover { transform: scale(1.01); }
.universe-card-content {
	position: absolute; bottom: 60px; left: 60px; right: 60px;
	z-index: 2; color: var(--ivoire);
}
.universe-card-content .upper {
	color: var(--ivoire); opacity: 0.8; margin-bottom: 20px;
	letter-spacing: 0.3em; display: inline-block;
}
.universe-card-content h3 {
	font-size: clamp(36px, 4vw, 56px); font-weight: 300;
	margin-bottom: 14px; letter-spacing: 0.04em; line-height: 1;
}
.universe-card-content p {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 1.6vw, 22px); color: var(--ivoire); opacity: 0.9;
	line-height: 1.4; margin-bottom: 14px;
}
.universe-card-for {
	font-family: 'Schibsted Grotesk', sans-serif !important;
	font-style: normal !important; font-weight: 400 !important;
	font-size: 13px !important; opacity: 0.7 !important;
	letter-spacing: 0.05em; margin-bottom: 32px !important;
}
.universe-card-cta {
	display: inline-block; font-size: 11px; letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--ivoire); font-weight: 500;
	padding-bottom: 5px; border-bottom: 1px solid rgba(251,248,244,0.6);
	transition: padding-right 0.5s var(--easing), border-color 0.5s ease;
}
.universe-card:hover .universe-card-cta {
	padding-right: 12px; border-color: var(--or);
}
.universe-card.is-soon { cursor: default; }
.universe-card.is-soon::after {
	background: linear-gradient(180deg, rgba(15,14,13,0.4) 0%, rgba(15,14,13,0.8) 100%);
}
.universe-card-soon {
	position: absolute; top: 30px; right: 30px; z-index: 3;
	background: rgba(251,248,244,0.92); color: var(--graphite);
	font-size: 9px; letter-spacing: 0.28em; text-transform: uppercase;
	padding: 8px 14px; font-weight: 500;
}
.universe-soon-line {
	font-family: 'Cormorant Garamond', serif !important; font-style: italic !important;
	font-weight: 300 !important; font-size: 16px !important;
	color: var(--or-pale) !important; opacity: 0.92 !important;
	letter-spacing: 0.02em;
}

/* ---- MATIÈRES SIGNATURES ---- */
.eden-matters { padding: 180px 60px; background: var(--ivoire-chaud); }
.matters-header { text-align: center; margin-bottom: 100px; max-width: 700px; margin: 0 auto 100px; }
.matters-header .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.matters-header h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(38px, 5vw, 60px);
	font-weight: 300; color: var(--graphite); margin-bottom: 30px;
}
.matters-intro {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 2vw, 22px); color: var(--cendre); line-height: 1.6;
}
.matters-grid {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px;
	max-width: 1400px; margin: 0 auto;
}
.matter-card { text-align: center; }
.matter-card-img-wrap {
	position: relative; overflow: hidden; aspect-ratio: 1; margin-bottom: 28px;
	box-shadow: 0 20px 40px -20px rgba(15,14,13,0.25);
}
.matter-card-img {
	position: absolute; inset: 0; width: 100%; height: 100%;
	object-fit: cover;
	transition: opacity 1.4s ease, transform 6s ease-out;
}
.matter-card-img.img-hover { opacity: 0; transform: scale(1.05); }
.matter-card:hover .img-default { opacity: 0; transform: scale(1.05); }
.matter-card:hover .img-hover { opacity: 1; transform: scale(1); }
.matter-reveal-label {
	position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%);
	background: rgba(251,248,244,0.92); color: var(--graphite);
	font-size: 9px; letter-spacing: 0.28em; text-transform: uppercase;
	padding: 8px 14px; font-weight: 500;
	opacity: 0; transition: opacity 0.5s ease 0.2s;
	z-index: 2;
}
.matter-card:hover .matter-reveal-label { opacity: 1; }
.matter-card h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 26px; color: var(--graphite); margin-bottom: 4px;
}
.matter-card .latin {
	font-style: italic; font-size: 11px; color: var(--cendre);
	letter-spacing: 0.04em; margin-bottom: 14px;
}
.matter-card p { font-size: 14px; color: var(--cendre); line-height: 1.7; max-width: 280px; margin: 0 auto; }

/* ---- LE RITUEL ---- */
.eden-ritual { padding: 200px 60px; background: var(--ivoire); }
.ritual-grid {
	display: grid; grid-template-columns: 1fr 1fr; gap: 100px;
	max-width: 1400px; margin: 0 auto; align-items: center;
}
.ritual-image {
	width: 100%; aspect-ratio: 3/4;
	background-size: cover; background-position: center;
	box-shadow: 0 30px 60px -30px rgba(15,14,13,0.4);
}
.ritual-content .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.ritual-content h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(38px, 5vw, 60px);
	font-weight: 300; color: var(--graphite); margin-bottom: 30px;
}
.ritual-intro {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: 20px; color: var(--brun); line-height: 1.6; margin-bottom: 40px;
}
.ritual-steps { list-style: none; }
.ritual-steps li {
	display: flex; gap: 24px; padding: 22px 0;
	border-bottom: 1px solid var(--pierre);
}
.ritual-steps li:last-child { border-bottom: none; }
.step-num {
	font-family: 'Cormorant Garamond', serif; font-style: italic;
	font-size: 22px; color: var(--or); flex-shrink: 0; min-width: 50px;
}
.ritual-steps li > span:last-child { font-size: 15px; color: var(--cendre); line-height: 1.7; }
.ritual-closing {
	margin-top: 40px;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: 18px; color: var(--brun); line-height: 1.6;
}

/* ---- EZÉKIEL section ---- */
.eden-ezekiel {
	padding: 200px 60px; text-align: center;
	background: var(--graphite); color: var(--ivoire);
	position: relative; overflow: hidden;
}
.eden-ezekiel::before {
	content: ""; position: absolute; inset: 0;
	background-image: radial-gradient(circle at 50% 50%, rgba(184,155,106,0.15) 0%, transparent 70%);
}
.ezekiel-content { position: relative; z-index: 2; max-width: 700px; margin: 0 auto; }
.eden-ezekiel .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.eden-ezekiel h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(40px, 5vw, 64px);
	font-weight: 300; line-height: 1.15; margin-bottom: 30px;
}
.ezekiel-sub {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 2vw, 22px); color: var(--ivoire); opacity: 0.85;
	line-height: 1.6; margin-bottom: 50px;
}
.btn-primary {
	display: inline-block; padding: 20px 44px;
	background: transparent; border: 1px solid var(--or); color: var(--or);
	font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase; font-weight: 500;
	cursor: pointer; transition: all 0.5s var(--easing);
	position: relative; overflow: hidden;
}
.btn-primary::before {
	content: ""; position: absolute; inset: 0;
	background: var(--or); left: -100%; transition: left 0.5s var(--easing);
}
.btn-primary:hover { color: var(--graphite); }
.btn-primary:hover::before { left: 0; }
.btn-primary span { position: relative; z-index: 1; }

/* ---- JOURNAL ---- */
.eden-journal { padding: 180px 60px; background: var(--ivoire-chaud); }
.journal-header { text-align: center; margin-bottom: 100px; max-width: 700px; margin: 0 auto 100px; }
.journal-header .upper { color: var(--or); margin-bottom: 24px; display: inline-block; }
.journal-header h2 {
	font-family: 'Cormorant Garamond', serif; font-size: clamp(38px, 5vw, 56px);
	font-weight: 300; color: var(--graphite); margin-bottom: 24px;
}
.journal-header p { color: var(--cendre); font-size: 16px; line-height: 1.8; }
.journal-grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 60px;
	max-width: 1400px; margin: 0 auto;
}
.journal-card { cursor: pointer; transition: transform 0.6s var(--easing); }
.journal-card:hover { transform: translateY(-6px); }
.journal-card-img-wrap {
	width: 100%; aspect-ratio: 4/5; overflow: hidden; margin-bottom: 28px;
	box-shadow: 0 20px 40px -20px rgba(15,14,13,0.25);
}
.journal-card-img {
	width: 100%; height: 100%; background-size: cover; background-position: center;
	transition: transform 8s ease-out;
}
.journal-card:hover .journal-card-img { transform: scale(1.06); }
.journal-card .upper { color: var(--or); display: inline-block; margin-bottom: 14px; }
.journal-card h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 26px; color: var(--graphite); margin-bottom: 16px;
	line-height: 1.2;
}
.journal-card p {
	font-size: 14px; color: var(--cendre); line-height: 1.7; margin-bottom: 24px;
}
.journal-card-link {
	font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
	color: var(--graphite); border-bottom: 1px solid var(--graphite);
	padding-bottom: 3px; transition: all 0.4s ease;
}
.journal-card:hover .journal-card-link { color: var(--or); border-color: var(--or); }

/* ---- FOOTER ---- */
.eden-footer { background: var(--graphite); color: var(--ivoire); padding: 100px 60px 40px; }
.footer-newsletter { text-align: center; max-width: 600px; margin: 0 auto 80px; }
.footer-newsletter .upper { color: var(--or); }
.footer-newsletter h3 { font-size: 36px; font-weight: 300; margin: 22px 0 14px; }
.footer-newsletter p { color: rgba(251,248,244,0.7); margin-bottom: 28px; font-size: 15px; }
.footer-form { display: flex; gap: 12px; max-width: 480px; margin: 0 auto; }
.footer-form input {
	flex: 1; padding: 16px 20px; background: transparent;
	border: 1px solid rgba(251,248,244,0.3); color: var(--ivoire);
	font-family: inherit; font-size: 13px;
}
.footer-form input::placeholder { color: rgba(251,248,244,0.5); }
.footer-form button {
	background: var(--or); color: var(--graphite); border: none; padding: 0 26px;
	font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
	font-weight: 500; cursor: pointer; transition: background 0.4s ease;
}
.footer-form button:hover { background: var(--or-pale); }
.footer-bottom {
	display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px;
	font-size: 11px; color: rgba(251,248,244,0.5);
	padding-top: 40px; border-top: 1px solid rgba(232,225,213,0.1); margin-top: 60px;
}
.footer-bottom-links a:hover { color: var(--or); }

/* ---- ANIMATIONS ---- */
.fade-in {
	opacity: 0; transform: translateY(40px);
	transition: opacity 1.4s var(--easing), transform 1.4s var(--easing);
}
.fade-in.visible { opacity: 1; transform: translateY(0); }
.fade-in.delay-1 { transition-delay: 0.15s; }
.fade-in.delay-2 { transition-delay: 0.30s; }
.fade-in.delay-3 { transition-delay: 0.45s; }

/* ---- RESPONSIVE ---- */
@media (max-width: 1024px) {
	.bridge-grid { grid-template-columns: 1fr; gap: 60px; }
	.matters-grid { grid-template-columns: repeat(2, 1fr); gap: 40px; }
	.universes-grid, .universes-grid-3 { grid-template-columns: 1fr; }
	.ritual-grid { grid-template-columns: 1fr; gap: 60px; }
	.journal-grid { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 900px) {
	.header-main { padding: 16px 20px; }
	.header-side { display: none; }
	.eden-nav { padding: 12px 20px; }
	.eden-nav-menu { gap: 16px; font-size: 9px; flex-wrap: wrap; }
	.eden-main { padding-top: 130px; }
	.eden-manifesto, .eden-bridge, .eden-matters, .eden-ritual, .eden-ezekiel, .eden-journal { padding: 100px 24px; }
	.universe-card-content { left: 30px; right: 30px; bottom: 40px; }
	.eden-footer { padding: 60px 24px 30px; }
}

/* =============================================
   BOUTIQUE — Disponible aujourd'hui (HE + diffuseurs)
   Refonte DA : fond clair chaud, images fondues (multiply)
   ============================================= */
section.eden-shop {
	background:
		radial-gradient(120% 80% at 50% 0%, rgba(216,200,179,0.40) 0%, transparent 55%),
		linear-gradient(180deg, var(--craie) 0%, var(--ivoire) 100%);
	padding: 150px 40px;
}
.shop-inner { max-width: 1200px; margin: 0 auto; }
.shop-eyebrow {
	display: block; text-align: center;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--ambre); margin-bottom: 28px;
}
.shop-title {
	text-align: center;
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(32px, 4vw, 52px); line-height: 1.15; color: var(--cacao); margin: 0 0 30px;
}
.shop-divider { width: 48px; height: 1px; background: var(--bronze); margin: 0 auto 32px; }
.shop-intro {
	text-align: center; max-width: 620px; margin: 0 auto 56px;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(17px, 1.5vw, 21px); line-height: 1.7; color: rgba(58,43,34,0.82);
}
.shop-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 64px; }
.shop-chip {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--cacao); background: transparent; border: 1px solid rgba(58,43,34,0.22);
	padding: 10px 20px; border-radius: 999px; cursor: pointer; transition: all 0.4s var(--easing);
}
.shop-chip:hover { border-color: var(--bronze); }
.shop-chip.is-active { background: var(--cacao); color: var(--ivoire); border-color: var(--cacao); }
.shop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 48px 32px; }
.shop-card { display: flex; flex-direction: column; text-align: left; }
.shop-card-media {
	display: block; aspect-ratio: 1 / 1; overflow: hidden; margin-bottom: 22px; position: relative;
	background: radial-gradient(80% 80% at 50% 32%, rgba(245,240,232,0.95), rgba(216,200,179,0.55));
}
.shop-card-media::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(180deg, transparent 58%, rgba(58,43,34,0.10) 100%);
}
.shop-card-media img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 0.8s var(--easing);
}
.shop-card:hover .shop-card-media img { transform: scale(1.05); }
.shop-card-famille {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--bronze); margin-bottom: 10px;
}
.shop-card-name {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(20px, 1.6vw, 25px); line-height: 1.2; color: var(--cacao); margin: 0 0 6px;
}
.shop-card-format { font-family: 'Schibsted Grotesk', sans-serif; font-size: 12px; color: var(--cendre); }
.shop-card-foot {
	margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(58,43,34,0.12);
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.shop-card-price { font-family: 'Cormorant Garamond', serif; font-size: 21px; color: var(--ambre); }
.shop-card-price del { opacity: 0.5; font-size: 0.8em; margin-right: 6px; }
.shop-card-cta {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; white-space: nowrap;
	color: var(--cacao); border: 1px solid var(--bronze); padding: 9px 16px; border-radius: 999px;
	transition: all 0.4s var(--easing);
}
.shop-card-cta:hover { background: var(--bronze); color: var(--ivoire); }
.shop-allcta { text-align: center; margin-top: 76px; }
.btn-shop-all {
	display: inline-block; font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--ivoire); background: var(--cacao); padding: 16px 44px;
	transition: all 0.4s var(--easing);
}
.btn-shop-all:hover { background: var(--ambre); }
@media (max-width: 1000px) { .shop-grid { grid-template-columns: repeat(2, 1fr); gap: 40px 24px; } }
@media (max-width: 560px) {
	section.eden-shop { padding: 90px 20px; }
	.shop-grid { gap: 28px 16px; }
	.shop-card-cta { padding: 8px 12px; font-size: 10px; }
}

/* =============================================
   LES MATIÈRES PREMIÈRES — 6 HE, éditorial fluide
   Fond minéral clair, grille décalée, respiration
   ============================================= */
.eden-matieres {
	background:
		radial-gradient(140% 60% at 50% -10%, rgba(216,200,179,0.30) 0%, transparent 60%),
		linear-gradient(180deg, var(--ivoire) 0%, var(--craie) 55%, var(--ivoire) 100%);
	padding: 200px 48px;
}
.matieres-inner { max-width: 1180px; margin: 0 auto; }
.matieres-head { max-width: 640px; margin: 0 auto 120px; text-align: center; }
.matieres-eyebrow {
	display: block; font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.46em; text-transform: uppercase; font-weight: 500;
	color: var(--bronze); margin-bottom: 30px;
}
.matieres-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(34px, 4.4vw, 56px); line-height: 1.12; color: var(--cacao); margin: 0 0 36px;
}
.matieres-intro {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(17px, 1.5vw, 21px); line-height: 1.8; color: rgba(58,43,34,0.74);
}
.matieres-video {
	max-width: 1180px; margin: 0 auto 96px; aspect-ratio: 21 / 9; overflow: hidden;
	box-shadow: 0 40px 80px -46px rgba(58,43,34,0.4);
}
.matieres-video video { width: 100%; height: 100%; object-fit: cover; display: block; }
.matieres-grid {
	display: grid; grid-template-columns: repeat(3, 1fr);
	column-gap: 56px; row-gap: 110px;
}
.matiere { display: flex; flex-direction: column; }
/* Grille alignée (les décalages éditoriaux lisaient comme un défaut — retirés 2026-06-05) */
.matiere-media {
	display: block; overflow: hidden; margin-bottom: 30px;
	box-shadow: 0 30px 60px -34px rgba(58,43,34,0.30);
}
.matiere-media img {
	width: 100%; height: auto; display: block;
	transition: transform 1.1s var(--easing);
}
.matiere:hover .matiere-media img { transform: scale(1.035); }
.matiere-name {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(22px, 1.8vw, 27px); color: var(--cacao); margin: 0 0 12px; letter-spacing: 0.01em;
}
.matiere-line {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(15px, 1.2vw, 17px); line-height: 1.65; color: rgba(58,43,34,0.66);
	margin: 0 0 20px; max-width: 320px;
}
.matiere-link {
	align-self: flex-start;
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--ambre);
	padding-bottom: 4px; border-bottom: 1px solid rgba(91,58,38,0.35);
	transition: border-color 0.5s var(--easing), color 0.5s var(--easing);
}
.matiere-link:hover { color: var(--cacao); border-color: var(--bronze); }
@media (max-width: 900px) {
	.eden-matieres { padding: 120px 24px; }
	.matieres-grid { grid-template-columns: 1fr 1fr; column-gap: 28px; row-gap: 64px; }
	.matieres-head { margin-bottom: 70px; }
}
@media (max-width: 560px) {
	.matieres-grid { grid-template-columns: 1fr; row-gap: 56px; }
	.matiere { margin-top: 0 !important; }
}

/* =============================================
   PAGES GÉNÉRIQUES (légales, contenus simples)
   ============================================= */
.eden-page { max-width: 760px; margin: 0 auto; padding: 70px 28px 160px; }
.eden-page-head { text-align: center; margin-bottom: 70px; }
.eden-page-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(32px, 4vw, 48px); line-height: 1.15; color: var(--graphite); margin: 0;
}
.eden-page-divider { width: 48px; height: 1px; background: var(--bronze); margin: 32px auto 0; }
.eden-page-content h2, .eden-page-content h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	color: var(--graphite); line-height: 1.3; margin: 44px 0 16px;
}
.eden-page-content h2 { font-size: 26px; }
.eden-page-content h3 { font-size: 21px; }
.eden-page-content p, .eden-page-content li {
	font-size: 14px; line-height: 1.85; color: rgba(15,14,13,0.78); margin-bottom: 14px;
}
.eden-page-content ul, .eden-page-content ol { padding-left: 22px; margin-bottom: 18px; }
.eden-page-content a { color: var(--ambre); border-bottom: 1px solid rgba(91,58,38,0.3); }
.eden-page-content table { width: 100%; border-collapse: collapse; font-size: 13px; margin: 20px 0; }
.eden-page-content td, .eden-page-content th { border: 1px solid rgba(58,43,34,0.15); padding: 10px 12px; text-align: left; }

/* =============================================
   BOUTIQUE WOOCOMMERCE — couche Eden complète
   (les styles Woo par défaut sont désactivés)
   ============================================= */

/* Accessibilité — indispensable car la CSS Woo qui le faisait est désactivée */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	position: absolute !important; width: 1px; height: 1px;
	overflow: hidden; word-wrap: normal !important;
}

body.eden-shop { background: var(--ivoire); }
.eden-woo { max-width: 1280px; margin: 0 auto; padding: 60px 40px 160px; }

/* --- Fil d'ariane --- */
.eden-woo .woocommerce-breadcrumb {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--cendre); margin-bottom: 70px;
}
.eden-woo .woocommerce-breadcrumb a { color: var(--cendre); transition: color 0.4s; }
.eden-woo .woocommerce-breadcrumb a:hover { color: var(--ambre); }

/* --- En-tête boutique / catégorie --- */
.woocommerce-products-header { text-align: center; max-width: 680px; margin: 0 auto 40px; }
.woocommerce-products-header__title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(36px, 4.6vw, 58px); line-height: 1.1; color: var(--graphite); margin: 0 0 30px;
}
.woocommerce-products-header__title::after {
	content: ""; display: block; width: 48px; height: 1px;
	background: var(--bronze); margin: 34px auto 0;
}
.eden-famille-empty {
	text-align: center; font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(17px, 1.5vw, 21px); line-height: 1.8; color: rgba(58,43,34,0.72);
	max-width: 560px; margin: 40px auto 0;
}
.eden-famille-empty a { color: var(--ambre); border-bottom: 1px solid rgba(91,58,38,0.3); }
.woocommerce-products-header .term-description {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(16px, 1.4vw, 19px); line-height: 1.75; color: rgba(58,43,34,0.72);
}

/* --- Compteur + tri --- */
.eden-woo .woocommerce-result-count {
	float: left;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.1em; color: var(--cendre);
	margin: 0 0 56px; padding-top: 8px;
}
.eden-woo .woocommerce-ordering { float: right; margin: 0 0 56px; }
.eden-woo .woocommerce-ordering select {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.08em; color: var(--graphite);
	background: transparent; border: 1px solid rgba(58,43,34,0.22);
	padding: 9px 14px; cursor: pointer;
}
.eden-woo ul.products { clear: both; }

/* --- Grille produits --- */
.eden-woo ul.products {
	display: grid; grid-template-columns: repeat(3, 1fr);
	gap: 80px 44px; list-style: none; padding: 0; margin: 0;
}
.eden-woo ul.products li.product { position: relative; text-align: left; }
.eden-woo li.product .woocommerce-LoopProduct-link { display: block; }
.eden-woo li.product img {
	width: 100%; aspect-ratio: 4 / 5; object-fit: cover;
	margin-bottom: 24px;
	box-shadow: 0 26px 50px -30px rgba(58,43,34,0.30);
	transition: transform 0.9s var(--easing);
}
.eden-woo li.product:hover img { transform: scale(1.02); }
.eden-woo .woocommerce-loop-product__title {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: clamp(18px, 1.5vw, 22px); line-height: 1.3;
	color: var(--graphite); margin: 0 0 8px;
}
.eden-woo li.product .price {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-size: 19px; color: var(--ambre); margin-bottom: 18px;
}
.eden-woo li.product .price del { opacity: 0.5; font-size: 0.85em; margin-right: 8px; }
.eden-woo li.product .price ins { text-decoration: none; }
.eden-woo li.product .button {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--cacao); background: transparent;
	border: 1px solid var(--bronze); border-radius: 999px;
	padding: 10px 22px; cursor: pointer;
	transition: all 0.4s var(--easing);
}
.eden-woo li.product .button:hover { background: var(--bronze); color: var(--ivoire); }
.eden-woo li.product .added_to_cart {
	display: inline-block; margin-left: 14px;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--ambre); border-bottom: 1px solid rgba(91,58,38,0.35); padding-bottom: 3px;
}
.eden-woo .onsale {
	position: absolute; top: 14px; left: 14px; z-index: 2;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 9px; letter-spacing: 0.2em; text-transform: uppercase;
	background: var(--cacao); color: var(--ivoire);
	padding: 7px 13px; border-radius: 999px;
}

/* --- Fiche produit --- */
.eden-woo div.product {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 90px; align-items: start;
}
.eden-woo div.product .onsale { position: static; display: inline-block; margin-bottom: 14px; }
.woocommerce-product-gallery { position: relative; }
.woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce-product-gallery__image img {
	width: 100%; height: auto;
	box-shadow: 0 36px 70px -38px rgba(58,43,34,0.35);
}
.woocommerce-product-gallery ol.flex-control-thumbs {
	display: flex; gap: 12px; list-style: none; padding: 0; margin: 16px 0 0;
}
.woocommerce-product-gallery ol.flex-control-thumbs img {
	width: 72px; height: auto; cursor: pointer; opacity: 0.55; transition: opacity 0.4s;
}
.woocommerce-product-gallery ol.flex-control-thumbs img.flex-active,
.woocommerce-product-gallery ol.flex-control-thumbs img:hover { opacity: 1; }

.eden-woo .summary.entry-summary { padding-top: 12px; }
.eden-woo .product_title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(30px, 3vw, 44px); line-height: 1.15;
	color: var(--graphite); margin: 0 0 22px;
}
.eden-woo .summary .price {
	font-family: 'Cormorant Garamond', serif;
	font-size: 27px; color: var(--ambre); margin: 0 0 30px; display: block;
}
.eden-woo .summary .price del { opacity: 0.5; font-size: 0.8em; margin-right: 10px; }
.eden-woo .summary .price ins { text-decoration: none; }
.woocommerce-product-details__short-description {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: 17px; line-height: 1.8; color: rgba(15,14,13,0.78);
	margin-bottom: 12px;
}
.woocommerce-product-details__short-description ul { padding-left: 18px; margin: 14px 0; }
.woocommerce-product-details__short-description li { margin-bottom: 6px; }

.eden-woo form.cart { display: flex; align-items: stretch; gap: 14px; margin: 34px 0 38px; }
.eden-woo form.cart .quantity { display: flex; }
.eden-woo form.cart .qty {
	width: 74px; text-align: center;
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 14px;
	color: var(--graphite); background: transparent;
	border: 1px solid rgba(58,43,34,0.25);
	padding: 14px 8px;
}
.eden-woo .single_add_to_cart_button {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--ivoire); background: var(--cacao);
	border: none; cursor: pointer; padding: 16px 42px;
	transition: background 0.4s var(--easing);
}
.eden-woo .single_add_to_cart_button:hover { background: var(--ambre); }

.eden-woo .product_meta {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase;
	color: var(--cendre);
	border-top: 1px solid rgba(58,43,34,0.12); padding-top: 24px;
}
.eden-woo .product_meta a { color: var(--ambre); }

/* --- Onglets description / avis --- */
.eden-woo .woocommerce-tabs { grid-column: 1 / -1; margin-top: 70px; }
.eden-woo .woocommerce-tabs ul.tabs {
	display: flex; gap: 44px; list-style: none; padding: 0; margin: 0 0 0;
	border-bottom: 1px solid rgba(58,43,34,0.14);
}
.eden-woo .woocommerce-tabs ul.tabs li a {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--cendre); padding: 0 2px 16px;
	border-bottom: 1px solid transparent; margin-bottom: -1px;
	transition: color 0.4s, border-color 0.4s;
}
.eden-woo .woocommerce-tabs ul.tabs li.active a,
.eden-woo .woocommerce-tabs ul.tabs li a:hover { color: var(--graphite); border-color: var(--bronze); }
.eden-woo .woocommerce-Tabs-panel { padding-top: 54px; max-width: 760px; }
.eden-woo .woocommerce-Tabs-panel > h2:first-child { display: none; } /* titre doublon "Description" */
.eden-woo .woocommerce-Tabs-panel h1,
.eden-woo .woocommerce-Tabs-panel h2,
.eden-woo .woocommerce-Tabs-panel h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	color: var(--graphite); line-height: 1.25; margin: 36px 0 16px;
}
.eden-woo .woocommerce-Tabs-panel h1 { font-size: 28px; }
.eden-woo .woocommerce-Tabs-panel h2 { font-size: 24px; }
.eden-woo .woocommerce-Tabs-panel h3 { font-size: 20px; }
.eden-woo .woocommerce-Tabs-panel p,
.eden-woo .woocommerce-Tabs-panel li {
	font-size: 14px; line-height: 1.85; color: rgba(15,14,13,0.75); margin-bottom: 12px;
}
.eden-woo .woocommerce-Tabs-panel ul { padding-left: 20px; }

/* --- Produits liés --- */
.eden-woo .related.products,
.eden-woo .up-sells { grid-column: 1 / -1; margin-top: 110px; }
.eden-woo .related.products > h2,
.eden-woo .up-sells > h2 {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(26px, 2.6vw, 36px); color: var(--graphite);
	text-align: center; margin: 0 0 64px;
}

/* --- Notices --- */
.woocommerce-notices-wrapper { margin-bottom: 40px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error li {
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 13px; line-height: 1.6; color: var(--graphite);
	background: var(--craie); border-left: 2px solid var(--bronze);
	padding: 18px 24px; margin-bottom: 14px; list-style: none;
}
.woocommerce-error { padding: 0; margin: 0 0 14px; }
.woocommerce-error li { border-left-color: #9C3D2E; }
.woocommerce-message .button, .woocommerce-info .button {
	float: right; margin-left: 20px;
	font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--cacao); border: 1px solid var(--bronze); border-radius: 999px;
	padding: 8px 18px; background: transparent;
	transition: all 0.4s var(--easing);
}
.woocommerce-message .button:hover, .woocommerce-info .button:hover { background: var(--bronze); color: var(--ivoire); }

/* --- Panier (classique) --- */
.eden-woo table.shop_table {
	width: 100%; border-collapse: collapse; margin-bottom: 40px;
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 14px;
}
.eden-woo table.shop_table th {
	font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--cendre); font-weight: 500;
	text-align: left; padding: 14px 16px;
	border-bottom: 1px solid rgba(58,43,34,0.18);
}
.eden-woo table.shop_table td {
	padding: 20px 16px; border-bottom: 1px solid rgba(58,43,34,0.10);
	color: var(--graphite); vertical-align: middle;
}
.eden-woo table.shop_table td.product-name a { font-family: 'Cormorant Garamond', serif; font-size: 18px; }
.eden-woo table.shop_table img { width: 64px; height: auto; }
.eden-woo .product-remove a {
	font-size: 18px; color: var(--cendre); text-decoration: none;
	display: inline-block; width: 28px; height: 28px; line-height: 26px;
	text-align: center; border: 1px solid rgba(58,43,34,0.2); border-radius: 50%;
	transition: all 0.4s;
}
.eden-woo .product-remove a:hover { color: #9C3D2E; border-color: #9C3D2E; }
.eden-woo .cart_totals h2, .eden-woo #order_review_heading, .eden-woo #ship-to-different-address,
.eden-woo .woocommerce-billing-fields > h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 24px; color: var(--graphite); margin: 40px 0 22px;
}
.eden-woo .wc-proceed-to-checkout a.checkout-button,
.eden-woo #place_order,
.eden-woo button[name="update_cart"],
.eden-woo button[name="apply_coupon"] {
	display: inline-block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--ivoire); background: var(--cacao);
	border: none; cursor: pointer; padding: 16px 40px;
	transition: background 0.4s var(--easing); text-decoration: none;
}
.eden-woo .wc-proceed-to-checkout a.checkout-button:hover,
.eden-woo #place_order:hover { background: var(--ambre); }
.eden-woo button[name="update_cart"]:disabled { opacity: 0.4; cursor: default; }

/* --- Formulaires (checkout, compte) --- */
.eden-woo .form-row label {
	display: block;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--cendre); margin-bottom: 8px;
}
.eden-woo .form-row { margin-bottom: 22px; }
.eden-woo .input-text, .eden-woo select, .eden-woo textarea {
	width: 100%; font-family: 'Schibsted Grotesk', sans-serif; font-size: 14px;
	color: var(--graphite); background: transparent;
	border: 1px solid rgba(58,43,34,0.25); padding: 13px 14px;
}
.eden-woo .input-text:focus, .eden-woo select:focus, .eden-woo textarea:focus {
	outline: none; border-color: var(--bronze);
}

/* --- Panier & Checkout en BLOCS WooCommerce --- */
.eden-woo-blocks { max-width: 1180px; padding-top: 40px; }
.eden-woo-blocks .wp-block-woocommerce-cart,
.eden-woo-blocks .wp-block-woocommerce-checkout {
	font-family: 'Schibsted Grotesk', sans-serif; color: var(--graphite);
}
/* Titres ("Total panier", sections checkout) */
.eden-woo-blocks .wc-block-components-title,
.eden-woo-blocks .wc-block-cart__totals-title,
.eden-woo-blocks .wc-block-components-checkout-step__title {
	font-family: 'Cormorant Garamond', serif !important; font-weight: 400 !important;
	font-size: 22px !important; letter-spacing: 0.02em; text-transform: none !important;
	color: var(--graphite) !important;
}
/* Noms produits */
.eden-woo-blocks .wc-block-components-product-name {
	font-family: 'Cormorant Garamond', serif; font-size: 19px; color: var(--graphite) !important;
}
/* Description produit dans le panier : masquée (épure) */
.eden-woo-blocks .wc-block-components-product-metadata { display: none !important; }
/* Encart totaux : carte craie */
.eden-woo-blocks .wc-block-cart__sidebar {
	background: var(--craie); padding: 30px 26px;
}
/* Lignes de totaux */
.eden-woo-blocks .wc-block-components-totals-item,
.eden-woo-blocks .wc-block-components-totals-coupon,
.eden-woo-blocks .wc-block-components-totals-footer-item { font-size: 14px; }
.eden-woo-blocks .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color: var(--ambre); }
/* Boutons primaires (Valider la commande, Commander) — lisibles */
.eden-woo-blocks .wc-block-components-button:not(.is-link),
.eden-woo-blocks .wc-block-cart__submit-button,
.eden-woo-blocks .wc-block-components-checkout-place-order-button {
	background: var(--cacao) !important; color: var(--ivoire) !important;
	border: none !important; border-radius: 0 !important;
	font-family: 'Schibsted Grotesk', sans-serif !important;
	font-size: 12px !important; letter-spacing: 0.18em !important; text-transform: uppercase !important;
	padding: 17px 30px !important; transition: background 0.4s var(--easing) !important;
}
.eden-woo-blocks .wc-block-components-button:not(.is-link):hover { background: var(--ambre) !important; }
.eden-woo-blocks .wc-block-components-button .wc-block-components-button__text { color: inherit !important; }
/* Stepper quantité + suppression */
.eden-woo-blocks .wc-block-components-quantity-selector {
	border: 1px solid rgba(58,43,34,0.25) !important; border-radius: 0 !important;
}
.eden-woo-blocks .wc-block-cart-item__remove-link { color: var(--cendre) !important; font-size: 12px; }
/* Champs (checkout) */
.eden-woo-blocks .wc-block-components-text-input input,
.eden-woo-blocks .wc-block-components-combobox input,
.eden-woo-blocks select, .eden-woo-blocks textarea {
	border: 1px solid rgba(58,43,34,0.25) !important; border-radius: 0 !important;
	background: transparent !important; font-family: 'Schibsted Grotesk', sans-serif !important;
}
.eden-woo-blocks .wc-block-components-text-input input:focus { border-color: var(--bronze) !important; box-shadow: none !important; }
/* Liens (codes promo, retour boutique) */
.eden-woo-blocks a:not(.wc-block-components-button) { color: var(--ambre); }
/* En-têtes de colonnes (Produit / Total) */
.eden-woo-blocks .wc-block-cart-items__header {
	font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--cendre);
}

@media (max-width: 1000px) {
	.eden-woo ul.products { grid-template-columns: repeat(2, 1fr); gap: 56px 26px; }
	.eden-woo div.product { grid-template-columns: 1fr; gap: 50px; }
}
@media (max-width: 560px) {
	.eden-woo { padding: 30px 20px 100px; }
	.eden-woo ul.products { grid-template-columns: 1fr 1fr; gap: 40px 16px; }
	.eden-woo form.cart { flex-wrap: wrap; }
	.woocommerce-products-header__title { font-size: 32px; }
}

/* =====================================================
   HOMEPAGE V2 — « Homepage de légitimité » (hp-*)
   55-60% clair texturé · charbon = ponctuation (Fusion)
   ===================================================== */
.hp-inner { max-width: 1240px; margin: 0 auto; padding: 0 40px; }
.hp-center { text-align: center; }
.hp-head { max-width: 720px; margin: 0 auto 72px; text-align: center; }
.hp-eyebrow {
	display: block; font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.42em; text-transform: uppercase; font-weight: 500;
	color: var(--bronze); margin-bottom: 26px;
}
.hp-eyebrow-light { color: var(--or-pale); }
.hp-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(30px, 3.6vw, 48px); line-height: 1.16; color: var(--cacao); margin: 0 0 28px;
}
.hp-title-light { color: var(--ivoire); }
.hp-title-sm { font-size: clamp(22px, 2.2vw, 30px); margin-bottom: 44px; }
.hp-intro {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(16px, 1.4vw, 19px); line-height: 1.8; color: rgba(58,43,34,0.78); margin: 0 auto;
	max-width: 680px;
}
.hp-btn {
	display: inline-block; font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
	padding: 16px 38px; transition: all 0.4s var(--easing);
}
.hp-btn-primary { background: var(--cacao); color: var(--ivoire); }
.hp-btn-primary:hover { background: var(--ambre); }
.hp-btn-ghost { border: 1px solid var(--bronze); color: var(--cacao); }
.hp-btn-ghost:hover { background: var(--bronze); color: var(--ivoire); }
.hp-btn-gold { background: var(--bronze); color: var(--charbon); }
.hp-btn-gold:hover { background: var(--or-patine); }
.hp-link {
	display: inline-block; font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--ambre); padding-bottom: 4px; border-bottom: 1px solid rgba(91,58,38,0.35);
	transition: color 0.4s, border-color 0.4s;
}
.hp-link:hover { color: var(--cacao); border-color: var(--bronze); }
.hp-tag {
	position: absolute; top: 14px; left: 14px;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 9px; letter-spacing: 0.18em; text-transform: uppercase;
	background: rgba(17,16,14,0.78); color: var(--or-pale);
	padding: 7px 12px;
}

/* --- S2 HERO : minéral chaud lumineux, charbon en profondeur seulement --- */
.hp-hero {
	position: relative; overflow: hidden;
	background:
		radial-gradient(110% 90% at 18% 8%, rgba(216,200,179,0.55) 0%, transparent 55%),
		radial-gradient(120% 100% at 85% 90%, rgba(58,43,34,0.32) 0%, transparent 60%),
		linear-gradient(165deg, var(--ivoire) 0%, var(--craie) 38%, var(--sable) 72%, var(--pierre-chaude) 100%);
	padding: 170px 40px 150px; text-align: center;
}
.hp-hero-texture {
	position: absolute; inset: 0; pointer-events: none; opacity: 0.5;
	background:
		radial-gradient(45% 60% at 8% 92%, rgba(111,115,93,0.12) 0%, transparent 70%),
		radial-gradient(40% 50% at 94% 12%, rgba(197,164,109,0.16) 0%, transparent 70%);
}
.hp-hero-inner { position: relative; z-index: 2; max-width: 880px; margin: 0 auto; }
/* Readiness vidéo hero : s'active automatiquement si assets/video/hero.mp4 existe */
.hp-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.hp-hero-scrim { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(244,239,230,0.62) 0%, rgba(216,200,179,0.5) 55%, rgba(244,239,230,0.6) 100%); }
.hp-patri-media video { width: 100%; height: 100%; object-fit: cover; display: block; }
.hp-hero-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(34px, 4.6vw, 62px); line-height: 1.12; color: var(--cacao); margin: 0 0 34px;
}
.hp-hero-sub {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(16px, 1.5vw, 20px); line-height: 1.75; color: rgba(58,43,34,0.82);
	max-width: 720px; margin: 0 auto 44px;
}
.hp-hero-cta { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 28px; }
.hp-hero-link {
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.2em;
	text-transform: uppercase; color: var(--ambre);
	border-bottom: 1px solid rgba(91,58,38,0.3); padding-bottom: 3px;
}
.hp-hero-link:hover { color: var(--cacao); }

/* --- S3 PREUVES --- */
.hp-preuves { background: var(--ivoire); padding: 140px 0; }
.hp-preuves-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; }
.hp-preuve { text-align: center; }
.hp-preuve-media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; margin-bottom: 28px; }
.hp-preuve-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--easing); }
.hp-preuve:hover .hp-preuve-media img { transform: scale(1.03); }
/* Phrase révélée au survol */
.hp-preuve-reveal {
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 3;
	padding: 24px 22px; text-align: center;
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(15px, 1.3vw, 18px); line-height: 1.4; color: var(--ivoire);
	opacity: 0; transform: translateY(14px);
	transition: opacity 0.9s var(--easing), transform 0.9s var(--easing);
}
.hp-preuve:hover .hp-preuve-reveal { opacity: 1; transform: none; }
/* Balayage de lumière très lent (la lumière qui se déplace) */
@media (prefers-reduced-motion: no-preference) {
	.hp-preuve-media::before {
		content: ""; position: absolute; inset: -30%; z-index: 1; pointer-events: none;
		background: linear-gradient(115deg, transparent 42%, rgba(255,250,240,0.07) 50%, transparent 58%);
		animation: edenSweep 22s ease-in-out infinite;
	}
	@keyframes edenSweep { 0% { transform: translateX(-22%); } 50% { transform: translateX(22%); } 100% { transform: translateX(-22%); } }
}
.hp-preuve h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 24px; color: var(--cacao); margin: 0 0 14px;
}
.hp-preuve p { font-size: 14px; line-height: 1.8; color: rgba(58,43,34,0.75); max-width: 330px; margin: 0 auto; }

/* --- S4 PATRIMOINES : table de composition --- */
.hp-patrimoines {
	background:
		radial-gradient(120% 70% at 50% 0%, rgba(216,200,179,0.35) 0%, transparent 60%),
		var(--craie);
	padding: 150px 0;
}
.hp-patri-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 44px; align-items: start; }
.hp-patri-col { text-align: center; padding: 0 8px; }
.hp-patri-media { aspect-ratio: 4 / 5; overflow: hidden; margin-bottom: 26px; }
.hp-patri-media img { width: 100%; height: 100%; object-fit: cover; }
.hp-patri-media-dark { background: var(--charbon); box-shadow: 0 30px 60px -34px rgba(17,16,14,0.6); }
.hp-patri-col h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 22px; color: var(--cacao); margin: 0 0 18px;
}
.hp-patri-list { list-style: none; padding: 0; margin: 0 0 18px; }
.hp-patri-list li {
	font-family: 'Cormorant Garamond', serif; font-size: 17px; line-height: 1.9; color: rgba(58,43,34,0.85);
}
.hp-patri-mots {
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 10px; letter-spacing: 0.14em;
	text-transform: uppercase; color: var(--bronze); line-height: 2;
}
.hp-patri-fusion {
	background: var(--ivoire); border: 1px solid rgba(176,138,87,0.35);
	padding: 54px 30px 44px; position: relative;
}
.hp-patri-x {
	position: absolute; top: -24px; left: 50%; transform: translateX(-50%);
	font-family: 'Cormorant Garamond', serif; font-size: 30px; color: var(--bronze);
	background: var(--ivoire); border: 1px solid rgba(176,138,87,0.35);
	width: 48px; height: 48px; line-height: 46px; border-radius: 50%;
}
.hp-patri-fusion .hp-link { margin-top: 20px; }

/* --- S5 CRÉATIONS --- */
.hp-creations { background: var(--ivoire); padding: 140px 0; }
.hp-crea-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 64px 40px; }
.hp-crea:nth-child(4), .hp-crea:nth-child(5) { /* 2 dernières centrées sur la rangée */ }
.hp-crea-media { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; margin-bottom: 24px; }
.hp-crea-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--easing); }
.hp-crea:hover .hp-crea-media img { transform: scale(1.03); }
.hp-badge {
	position: absolute; top: 14px; left: 14px; z-index: 2;
	font-family: 'Schibsted Grotesk', sans-serif;
	font-size: 9px; letter-spacing: 0.2em; text-transform: uppercase;
	padding: 7px 13px;
}
.hp-badge-dispo { background: var(--bronze); color: var(--charbon); }
.hp-badge-bientot { background: rgba(17,16,14,0.55); color: var(--ivoire); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
.hp-link-soon { color: var(--cendre); border-bottom-color: rgba(107,99,90,0.4); }
.hp-link-soon:hover { color: var(--cacao); border-bottom-color: var(--bronze); }
.hp-crea h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 24px; color: var(--cacao); margin: 0 0 12px; }
.hp-crea p { font-size: 14px; line-height: 1.8; color: rgba(58,43,34,0.75); margin: 0 0 18px; }

/* --- S6 SAVOIR-FAIRE --- */
.hp-savoir {
	background: linear-gradient(180deg, var(--craie) 0%, var(--sable) 100%);
	padding: 140px 0;
}
.hp-savoir-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.hp-savoir-bloc {
	background: var(--ivoire); padding: 0; overflow: hidden;
	border-top: 2px solid var(--bronze);
}
.hp-savoir-media { aspect-ratio: 4 / 3; overflow: hidden; }
.hp-savoir-media img, .hp-savoir-media video { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--easing); }
.hp-savoir-bloc:hover .hp-savoir-media img { transform: scale(1.05); }
.hp-savoir-body { padding: 34px 32px 38px; }
.hp-savoir-bloc h3 {
	font-family: 'Cormorant Garamond', serif; font-weight: 400;
	font-size: 21px; line-height: 1.3; color: var(--cacao); margin: 0 0 22px;
}
.hp-savoir-bloc ul { list-style: none; padding: 0; margin: 0; }
.hp-savoir-bloc li {
	font-size: 13px; line-height: 1.7; color: rgba(58,43,34,0.78);
	padding: 9px 0 9px 18px; position: relative;
	border-bottom: 1px solid rgba(58,43,34,0.08);
}
.hp-savoir-bloc li::before { content: "·"; position: absolute; left: 2px; color: var(--bronze); font-size: 18px; line-height: 1; }
.hp-savoir-bloc li:last-child { border-bottom: none; }

/* --- S7 FAMILLES --- */
.hp-familles { background: var(--ivoire); padding: 140px 0; }
.hp-fam-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 52px 36px; }
.hp-fam { display: block; text-align: left; }
.hp-fam-media { display: block; aspect-ratio: 16 / 10; overflow: hidden; margin-bottom: 20px; }
.hp-fam-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--easing); }
.hp-fam:hover .hp-fam-media img { transform: scale(1.04); }
.hp-fam-media-empty {
	background:
		radial-gradient(60% 70% at 30% 30%, rgba(106,63,43,0.28) 0%, transparent 70%),
		linear-gradient(160deg, var(--pierre-chaude) 0%, var(--ambre) 130%);
}
.hp-fam h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 22px; color: var(--cacao); margin: 0 0 8px; }
.hp-fam-notes { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 15px; color: rgba(58,43,34,0.7); margin: 0 0 6px; }
.hp-fam-usage { font-size: 12.5px; color: var(--cendre); margin: 0; }

/* --- S8 ATMOSPHÈRES --- */
.hp-atmos { background: var(--craie); padding: 130px 0; }
.hp-atmos-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.hp-atmo {
	display: block; position: relative; background: var(--ivoire);
	padding: 38px 34px 34px; border: 1px solid rgba(58,43,34,0.08);
	transition: border-color 0.5s var(--easing), box-shadow 0.5s var(--easing);
}
.hp-atmo:hover { border-color: rgba(176,138,87,0.5); box-shadow: 0 24px 50px -34px rgba(58,43,34,0.35); }
.hp-atmo h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 23px; color: var(--cacao); margin: 0 0 10px; }
.hp-atmo p { font-size: 13px; line-height: 1.7; color: rgba(58,43,34,0.72); margin: 0; padding-right: 26px; }
.hp-atmo-arrow { position: absolute; right: 26px; bottom: 28px; color: var(--bronze); font-size: 18px; transition: transform 0.4s var(--easing); }
.hp-atmo:hover .hp-atmo-arrow { transform: translateX(5px); }

/* --- S9 COLLECTION FUSION : la ponctuation sombre --- */
.hp-fusion {
	position: relative; overflow: hidden;
	background:
		radial-gradient(85% 70% at 50% 20%, rgba(197,164,109,0.16) 0%, transparent 60%),
		radial-gradient(120% 100% at 50% 110%, rgba(91,58,38,0.5) 0%, transparent 70%),
		linear-gradient(180deg, #161210 0%, #221A14 55%, #161210 100%);
	padding: 170px 0; text-align: center;
}
.hp-fusion-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.hp-fusion::after {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: radial-gradient(85% 75% at 50% 35%, rgba(20,16,14,0.5) 0%, rgba(20,16,14,0.84) 100%);
}
.hp-fusion .hp-inner { position: relative; z-index: 2; }
.hp-fusion-sub {
	font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300;
	font-size: clamp(18px, 1.8vw, 24px); color: var(--or-pale); margin: 0 0 34px;
}
.hp-fusion-txt {
	font-family: 'Cormorant Garamond', serif; font-weight: 300;
	font-size: clamp(15px, 1.35vw, 18px); line-height: 1.9; color: rgba(251,248,244,0.82);
	max-width: 760px; margin: 0 auto 48px;
}

/* --- S10 LIEUX --- */
.hp-lieux { background: var(--ivoire); padding: 140px 0; }
.hp-lieux-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-bottom: 64px; }
.hp-lieu { display: block; position: relative; background: var(--craie); padding: 30px 28px 34px; }
.hp-lieu h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 20px; color: var(--cacao); margin: 0 0 8px; }
.hp-lieu p { font-size: 12.5px; line-height: 1.7; color: rgba(58,43,34,0.72); margin: 0; padding-right: 24px; }
.hp-lieu-arrow { position: absolute; right: 24px; bottom: 24px; color: var(--bronze); font-size: 17px; transition: transform 0.4s var(--easing); }
.hp-lieu:hover .hp-lieu-arrow { transform: translateX(5px); }

/* =====================================================
   PAGES RITUELS PAR LIEU
   ===================================================== */
.eden-lieux-page { max-width: 1180px; margin: 0 auto; padding: 90px 40px 150px; }
.lieux-head { max-width: 680px; margin: 0 auto 90px; text-align: center; }
.lieux-title { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic; font-size: clamp(34px, 4.2vw, 54px); line-height: 1.14; color: var(--cacao); margin: 26px 0 28px; }
.lieux-intro { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-size: clamp(16px, 1.4vw, 19px); line-height: 1.75; color: rgba(58,43,34,0.78); }
.lieu-block { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; margin-bottom: 110px; }
.lieu-block-rev .lieu-visual { order: 2; }
.lieu-visual { aspect-ratio: 4 / 5; overflow: hidden; box-shadow: 0 34px 64px -38px rgba(58,43,34,0.4); }
.lieu-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--easing); }
.lieu-block:hover .lieu-visual img { transform: scale(1.04); }
.lieu-visual-empty { aspect-ratio: 4 / 5; background: radial-gradient(70% 60% at 40% 30%, rgba(197,164,109,0.22) 0%, transparent 70%), linear-gradient(160deg, var(--sable) 0%, var(--pierre-chaude) 100%); box-shadow: none; }
.lieu-name { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-size: clamp(28px, 3vw, 42px); color: var(--cacao); margin: 0 0 18px; }
.lieu-atmo { font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 300; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.6; color: var(--ambre); margin: 0 0 26px; }
.lieu-meta { display: flex; gap: 36px; margin-bottom: 24px; flex-wrap: wrap; }
.lieu-meta span { display: flex; flex-direction: column; font-size: 13px; color: rgba(58,43,34,0.8); }
.lieu-meta strong { font-family: 'Schibsted Grotesk', sans-serif; font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bronze); font-weight: 500; margin-bottom: 6px; }
.lieu-conseil { font-size: 14px; line-height: 1.8; color: rgba(58,43,34,0.75); margin: 0 0 32px; }
.lieu-recos-label { font-family: 'Schibsted Grotesk', sans-serif; font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--cendre); }
.lieu-recos-row { display: flex; gap: 18px; margin-top: 16px; flex-wrap: wrap; }
.lieu-prod { display: flex; align-items: center; gap: 12px; flex: 1 1 0; min-width: 150px; }
.lieu-prod-media { flex: 0 0 52px; aspect-ratio: 4 / 5; overflow: hidden; }
.lieu-prod-media img { width: 100%; height: 100%; object-fit: cover; }
.lieu-prod-name { font-family: 'Cormorant Garamond', serif; font-size: 16px; color: var(--cacao); line-height: 1.2; }
.lieu-prod-price { font-family: 'Cormorant Garamond', serif; font-size: 14px; color: var(--ambre); margin-left: auto; }
.lieux-cta { margin-top: 40px; }
@media (max-width: 900px) {
	.lieu-block { grid-template-columns: 1fr; gap: 32px; margin-bottom: 80px; }
	.lieu-block-rev .lieu-visual { order: 0; }
	.lieu-visual, .lieu-visual-empty { aspect-ratio: 16 / 10; }
}

/* --- S11 SIGNATURES (produits réels) --- */
.hp-signatures {
	background:
		radial-gradient(120% 80% at 50% 0%, rgba(216,200,179,0.4) 0%, transparent 55%),
		var(--craie);
	padding: 140px 0;
}
.hp-sign-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 44px 30px; }
.hp-sign-media { display: block; aspect-ratio: 4 / 5; overflow: hidden; margin-bottom: 20px; box-shadow: 0 26px 50px -32px rgba(58,43,34,0.3); }
.hp-sign-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.9s var(--easing); }
.hp-sign:hover .hp-sign-media img { transform: scale(1.03); }
.hp-sign h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 21px; color: var(--cacao); margin: 0 0 4px; }
.hp-sign-type { font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--cendre); margin: 0 0 8px; }
.hp-sign-fam { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 14px; color: var(--bronze); margin: 0 0 6px; }
.hp-sign-notes { font-size: 12.5px; line-height: 1.6; color: rgba(58,43,34,0.7); margin: 0 0 16px; }
.hp-sign-foot { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(58,43,34,0.12); padding-top: 14px; }
.hp-sign-price { font-family: 'Cormorant Garamond', serif; font-size: 19px; color: var(--ambre); }

/* --- S12 B2B : clair, institutionnel --- */
.hp-b2b { background: var(--ivoire); padding: 140px 0; border-top: 1px solid rgba(58,43,34,0.08); }
.hp-b2b-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 22px; margin-bottom: 60px; }
.hp-b2b-seg { background: var(--craie); padding: 30px 24px; border-top: 2px solid var(--pierre-chaude); }
.hp-b2b-seg h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 18px; line-height: 1.3; color: var(--cacao); margin: 0 0 10px; }
.hp-b2b-seg p { font-size: 12px; line-height: 1.65; color: rgba(58,43,34,0.72); margin: 0; }

/* --- S13 DIAGNOSTIC : bloc conversion chaud --- */
.hp-diagnostic {
	background:
		radial-gradient(80% 100% at 50% 0%, rgba(197,164,109,0.35) 0%, transparent 65%),
		linear-gradient(180deg, var(--sable) 0%, var(--pierre-chaude) 100%);
	padding: 130px 0;
}
.hp-diagnostic .hp-title { margin-bottom: 22px; }
.hp-diagnostic .hp-intro { margin-bottom: 40px; }

/* --- S14 ENGAGEMENT --- */
.hp-engagement { background: var(--ivoire); padding: 0 0 130px; }
.hp-engagement-media { position: relative; width: 100%; height: clamp(260px, 34vw, 440px); overflow: hidden; margin-bottom: 80px; }
.hp-engagement-media img { width: 100%; height: 100%; object-fit: cover; }
.hp-engagement-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(244,239,230,0) 50%, var(--ivoire) 100%); }
.hp-engagement .hp-intro { margin-bottom: 32px; }

/* --- S15 RÉASSURANCE --- */
.hp-reassurance { background: var(--craie); padding: 90px 0; }
.hp-reassurance-grid {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 18px;
	list-style: none; padding: 0; margin: 0; max-width: 980px; margin-inline: auto;
}
.hp-reassurance-grid li {
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.12em;
	text-transform: uppercase; color: rgba(58,43,34,0.8);
	border: 1px solid rgba(58,43,34,0.15); padding: 12px 20px; background: var(--ivoire);
}

/* --- S16 CARNETS --- */
.hp-carnets { background: var(--ivoire); padding: 140px 0 160px; }
.hp-carnets-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 44px; }
.hp-carnet-media { aspect-ratio: 16 / 10; overflow: hidden; margin-bottom: 20px; }
.hp-carnet-media img { width: 100%; height: 100%; object-fit: cover; }
.hp-carnet-cat { font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bronze); }
.hp-carnet h3 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 21px; line-height: 1.35; color: var(--cacao); margin: 10px 0 16px; }

/* --- FOOTER colonnes --- */
.footer-cols-grid {
	display: grid; grid-template-columns: repeat(5, 1fr); gap: 36px;
	max-width: 1240px; margin: 0 auto; text-align: left;
}
.footer-col { display: flex; flex-direction: column; gap: 10px; }
.footer-col-title {
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 10px; letter-spacing: 0.26em;
	text-transform: uppercase; color: var(--or-pale); margin-bottom: 8px;
}
.footer-col a {
	font-size: 12.5px; color: rgba(251,248,244,0.66); transition: color 0.4s;
}
.footer-col a:hover { color: var(--or-pale); }

/* =====================================================
   DIAGNOSTIC OLFACTIF — conversationnel, sensoriel
   ===================================================== */
.eden-diagnostic-page {
	background:
		radial-gradient(90% 70% at 50% 0%, rgba(197,164,109,0.22) 0%, transparent 60%),
		linear-gradient(180deg, var(--craie) 0%, var(--ivoire) 60%);
	padding: 110px 24px 150px; min-height: 70vh;
}
.diag-head { max-width: 640px; margin: 0 auto 56px; text-align: center; }
.diag-title {
	font-family: 'Cormorant Garamond', serif; font-weight: 300; font-style: italic;
	font-size: clamp(32px, 4vw, 50px); line-height: 1.14; color: var(--cacao); margin: 26px 0 26px;
}
.diag-intro { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-size: clamp(16px, 1.4vw, 19px); line-height: 1.75; color: rgba(58,43,34,0.78); }
.diag-card {
	max-width: 720px; margin: 0 auto; background: var(--ivoire);
	box-shadow: 0 40px 90px -50px rgba(58,43,34,0.4); padding: 0;
	border-top: 2px solid var(--bronze);
}
.diag-bar { height: 2px; background: rgba(58,43,34,0.1); }
.diag-bar-fill { display: block; height: 100%; width: 0; background: var(--bronze); transition: width 0.5s var(--easing); }
.diag-stage { padding: 60px 54px 56px; transition: opacity 0.22s var(--easing); min-height: 320px; }
.diag-count { font-family: 'Schibsted Grotesk', sans-serif; font-size: 10px; letter-spacing: 0.26em; text-transform: uppercase; color: var(--bronze); }
.diag-q { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-size: clamp(24px, 2.6vw, 34px); line-height: 1.2; color: var(--cacao); margin: 16px 0 36px; }
.diag-opts { display: flex; flex-wrap: wrap; gap: 12px; }
.diag-opt {
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 13px; letter-spacing: 0.04em;
	color: var(--cacao); background: transparent; border: 1px solid rgba(58,43,34,0.22);
	padding: 14px 22px; cursor: pointer; transition: all 0.4s var(--easing);
}
.diag-opt:hover { border-color: var(--bronze); background: var(--craie); transform: translateY(-2px); }
.diag-back, .diag-restart {
	display: inline-block; margin-top: 32px; background: none; border: none; cursor: pointer;
	font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.16em;
	text-transform: uppercase; color: var(--cendre); transition: color 0.4s;
}
.diag-back:hover, .diag-restart:hover { color: var(--ambre); }
/* Résultat */
.diag-profile { font-family: 'Cormorant Garamond', serif; font-weight: 300; font-size: clamp(16px, 1.5vw, 20px); line-height: 1.7; color: rgba(58,43,34,0.82); margin: 4px 0 24px; }
.diag-teaser { font-size: 13px; line-height: 1.6; color: var(--cendre); background: var(--craie); border-left: 2px solid var(--bronze); padding: 14px 18px; margin: 0 0 28px; }
.diag-prods { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; margin-bottom: 38px; }
.diag-prod { display: flex; align-items: center; gap: 14px; }
.diag-prod-media { flex: 0 0 64px; aspect-ratio: 4 / 5; overflow: hidden; }
.diag-prod-media img { width: 100%; height: 100%; object-fit: cover; }
.diag-prod-name { font-family: 'Cormorant Garamond', serif; font-size: 18px; color: var(--cacao); line-height: 1.2; }
.diag-prod-price { font-family: 'Cormorant Garamond', serif; font-size: 15px; color: var(--ambre); margin-left: auto; white-space: nowrap; }
.diag-email { border-top: 1px solid rgba(58,43,34,0.12); padding-top: 26px; }
.diag-email label { display: block; font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--cendre); margin-bottom: 12px; }
.diag-email-row { display: flex; gap: 10px; }
.diag-email input { flex: 1; font-family: 'Schibsted Grotesk', sans-serif; font-size: 14px; color: var(--graphite); background: transparent; border: 1px solid rgba(58,43,34,0.25); padding: 13px 14px; }
.diag-email input:focus { outline: none; border-color: var(--bronze); }
.diag-email button { font-family: 'Schibsted Grotesk', sans-serif; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ivoire); background: var(--cacao); border: none; padding: 0 26px; cursor: pointer; transition: background 0.4s; }
.diag-email button:hover { background: var(--ambre); }
.diag-email-msg { font-size: 12px; color: var(--ambre); margin: 12px 0 0; min-height: 16px; }
@media (max-width: 560px) {
	.diag-stage { padding: 40px 26px 40px; }
	.diag-prods { grid-template-columns: 1fr; }
	.diag-email-row { flex-direction: column; }
	.diag-email button { padding: 14px; }
}

/* =====================================================
   COUCHE CINÉMATOGRAPHIQUE — film olfactif en chapitres
   (classes posées par eden.js uniquement si motion permise)
   ===================================================== */
.eden-reveal {
	opacity: 0; transform: translateY(30px);
	transition: opacity 1.15s var(--easing), transform 1.15s var(--easing);
	will-change: opacity, transform;
}
.eden-reveal.is-in { opacity: 1; transform: none; }

/* Hover cinématographique : zoom lent + calque chaud qui se révèle (pas un scale sec) */
.hp-preuve-media, .hp-crea-media, .hp-patri-media, .hp-fam-media, .hp-sign-media, .hp-carnet-media { position: relative; }
.hp-preuve-media::after, .hp-crea-media::after, .hp-patri-media::after,
.hp-fam-media::after, .hp-sign-media::after, .hp-carnet-media::after {
	content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0;
	background: linear-gradient(180deg, transparent 42%, rgba(58,43,34,0.30) 100%);
	transition: opacity 1s var(--easing);
}
.hp-preuve:hover .hp-preuve-media::after,
.hp-crea:hover .hp-crea-media::after,
.hp-patri-col:hover .hp-patri-media::after,
.hp-fam:hover .hp-fam-media::after,
.hp-sign:hover .hp-sign-media::after,
.hp-carnet:hover .hp-carnet-media::after { opacity: 1; }
/* La colonne Grasse (fond noir) : calque qui éclaircit légèrement la fleur au hover */
.hp-patri-media-dark::after { background: radial-gradient(70% 60% at 50% 40%, rgba(197,164,109,0.12) 0%, transparent 70%); }

/* Zoom lent & profond (override des transitions courtes précédentes) */
.hp-preuve-media img, .hp-crea-media img, .hp-fam-media img, .hp-carnet-media img,
.hp-patri-media img, .hp-sign-media img {
	transition: transform 1.4s var(--easing), filter 1.4s var(--easing);
}
.hp-preuve:hover .hp-preuve-media img,
.hp-crea:hover .hp-crea-media img,
.hp-fam:hover .hp-fam-media img,
.hp-carnet:hover .hp-carnet-media img,
.hp-patri-col:hover .hp-patri-media img,
.hp-sign:hover .hp-sign-media img { transform: scale(1.06); }

/* Cartes qui se soulèvent doucement (profondeur premium, pas de brutalité) */
.hp-atmo, .hp-savoir-bloc, .hp-b2b-seg, .hp-lieu {
	transition: transform 0.7s var(--easing), box-shadow 0.7s var(--easing), border-color 0.5s var(--easing);
}
.hp-savoir-bloc:hover, .hp-b2b-seg:hover, .hp-lieu:hover {
	transform: translateY(-5px); box-shadow: 0 30px 55px -38px rgba(58,43,34,0.4);
}

/* Respiration lente de la lumière du hero (opacité uniquement — le transform reste à la parallaxe JS) */
@media (prefers-reduced-motion: no-preference) {
	.hp-hero-texture { animation: edenBreath 16s ease-in-out infinite alternate; }
	@keyframes edenBreath { from { opacity: 0.42; } to { opacity: 0.72; } }
}

/* --- RESPONSIVE homepage --- */
@media (max-width: 1000px) {
	.hp-preuves-grid, .hp-savoir-grid, .hp-fam-grid, .hp-carnets-grid { grid-template-columns: 1fr; gap: 56px; max-width: 560px; margin-inline: auto; }
	.hp-savoir-grid { gap: 24px; }
	.hp-patri-grid { grid-template-columns: 1fr; gap: 56px; max-width: 480px; margin-inline: auto; }
	.hp-crea-grid { grid-template-columns: 1fr 1fr; gap: 44px 24px; }
	.hp-atmos-grid, .hp-lieux-grid { grid-template-columns: 1fr 1fr; }
	.hp-sign-grid { grid-template-columns: 1fr 1fr; gap: 40px 22px; }
	.hp-b2b-grid { grid-template-columns: 1fr 1fr; }
	.footer-cols-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.hp-inner { padding: 0 22px; }
	.hp-hero { padding: 130px 22px 110px; }
	.hp-preuves, .hp-patrimoines, .hp-creations, .hp-savoir, .hp-familles, .hp-atmos,
	.hp-fusion, .hp-lieux, .hp-signatures, .hp-b2b, .hp-diagnostic, .hp-engagement, .hp-carnets { padding: 90px 0; }
	.hp-crea-grid, .hp-atmos-grid, .hp-lieux-grid, .hp-sign-grid, .hp-b2b-grid { grid-template-columns: 1fr; }
	.footer-cols-grid { grid-template-columns: 1fr; gap: 28px; }
}
