/* —— Bilan / calendrier —— */
.cns-poids-book {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(ellipse 50% 80% at 92% 20%, rgba(200, 240, 0, 0.08), transparent 55%),
		linear-gradient(180deg, #163224 0%, var(--cns-green) 48%, #12261c 100%);
	padding: clamp(2.4rem, 5.5vw, 3.6rem) 0;
	color: #fff;
	scroll-margin-top: 7rem;
}

.cns-poids-book::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(200, 240, 0, 0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(200, 240, 0, 0.04) 1px, transparent 1px);
	background-size: 42px 42px;
	mask-image: linear-gradient(90deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
	pointer-events: none;
}

.cns-poids-book__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(16rem, 0.95fr) minmax(0, 1.2fr) minmax(13rem, 0.72fr);
	align-items: center;
	gap: clamp(1.1rem, 2.4vw, 2rem);
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 clamp(1.25rem, 4vw, 3rem);
}

.cns-poids-book__title {
	margin: 0 0 0.85rem;
	max-width: 16em;
	font-size: clamp(1.5rem, 2.6vw, 2.05rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.03em;
	color: #fff;
}

.cns-poids-book__title-accent {
	color: var(--cns-lime);
	font-style: italic;
}

.cns-poids-book__lead {
	margin: 0 0 1.25rem;
	max-width: 32rem;
	font-size: 0.92rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.78);
}

.cns-poids-book__cta-row {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 0.2rem 0.65rem;
}

.cns-poids-book__hand {
	position: relative;
	display: block;
	max-width: 7.6rem;
	margin: 0.2rem 0 0 0.85rem;
	font-family: "Caveat", cursive;
	font-size: 1.22rem;
	font-weight: 600;
	line-height: 1.12;
	color: #fff;
	transform: rotate(7deg);
}

.cns-poids-book__hand-arrow {
	position: absolute;
	left: -3.55rem;
	top: -1.7rem;
	width: 4.5rem;
	height: 3.5rem;
	color: var(--cns-lime);
	pointer-events: none;
	overflow: visible;
}

.cns-poids-book__cal {
	min-width: 0;
	padding: 0.85rem 0.85rem 0.35rem;
	border-radius: 18px;
	background: #fff;
	color: #111;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
	scroll-margin-top: 7rem;
}

.cns-poids-book__cal-title {
	margin: 0 0 0.35rem;
	text-align: center;
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #111;
}

.cns-poids-book__cal-widget {
	min-width: 0;
	overflow: hidden;
}

.cns-poids-book__cal-widget .calendly-inline-widget {
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100%;
}

.cns-poids-book__facts {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.85rem;
}

.cns-poids-book__facts li {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.25;
	color: #fff;
}

.cns-poids-book__fact-icon {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 1.7rem;
	height: 1.7rem;
	border-radius: 50%;
	background: var(--cns-lime);
	color: #111;
}

@media (max-width: 1100px) {
	.cns-poids-book__inner {
		grid-template-columns: 1fr 1fr;
	}

	.cns-poids-book__facts {
		grid-column: 1 / -1;
		grid-template-columns: 1fr 1fr;
		max-width: none;
	}
}

@media (max-width: 760px) {
	.cns-poids-book__inner {
		grid-template-columns: 1fr;
	}

	.cns-poids-book__facts {
		grid-template-columns: 1fr;
	}

	.cns-poids-book__cal-widget .calendly-inline-widget {
		height: 620px !important;
	}
}

/* Anti-tokens.css — fond sombre */
.wpcursor-component.wpcursor-pdp-book :is(h1,h2,h3,[class*="__title"],[class*="__name"],[class*="__card-title"],[class*="__cal-title"]) {
	color: #fff !important;
	text-decoration: none !important;
}
.wpcursor-component.wpcursor-pdp-book :is(h1,h2,h3) span,
.wpcursor-component.wpcursor-pdp-book [class*="__title"] span,
.wpcursor-component.wpcursor-pdp-book [class*="__title-accent"] {
	color: #c8f000 !important;
}
.wpcursor-component.wpcursor-pdp-book a { text-decoration: none; }
.wpcursor-component.wpcursor-pdp-book a.cns-poids-btn { text-decoration: none !important; }

.wpcursor-component.wpcursor-pdp-book .cns-poids-book__cal-title {
	color: #111 !important;
}