body { --lb-page: #f5f9fe; background: var(--lb-page); }
.e-con.lb-np-hero {
	--padding-top: clamp(26px, 3.2vw, 44px); --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px;
	--lb-np-suite: clamp(170px, 16vw, 250px);
	position: relative;
}
.e-con.lb-np-hero::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	width: min(64vw, 1320px);
	height: calc(100% + var(--lb-np-suite));
	opacity: 1;
	mix-blend-mode: normal;
	border: 0;
	background-color: var(--lb-page);
	background-image:
		linear-gradient(90deg, var(--lb-page) 0%, rgba(245, 249, 254, .94) 22%, rgba(245, 249, 254, 0) 62%),
		linear-gradient(0deg, var(--lb-page) 0%, rgba(245, 249, 254, 0) 30%),
		url("../img/hero-bg-1500.webp");
	background-repeat: no-repeat;
	background-size: auto, auto, cover;
	background-position: 0 0, 0 0, 62% 78%;
	pointer-events: none;
}
.e-con.lb-np-hero__wrap { position: relative; z-index: 1; }
.lb-np-hero__wrap > .elementor-widget { width: 100%; margin: 0; }
.lb-np-surtitre { color: var(--lb-bleu); font-size: 15px; line-height: 1.2; font-weight: var(--lb-bold); letter-spacing: .2em; text-transform: uppercase; }
.lb-np-surtitre p { display: flex; align-items: center; gap: 18px; margin: 0 0 12px; }
.lb-np-surtitre p::after { content: ""; width: 62px; height: 2px; background: var(--lb-bleu); }
.lb-np-titre .elementor-heading-title { font-size: clamp(36px, 4.6vw, 66px); line-height: 1.06; letter-spacing: -.035em; color: var(--lb-navy); text-wrap: balance; }
.lb-np-titre span { display: block; color: var(--lb-bleu); }
.elementor.elementor .e-con > .lb-np-intro.elementor-widget { max-width: 680px; margin-top: 14px; color: var(--lb-doux); font-size: clamp(17px, 1.45vw, 20px); line-height: 1.34; }
.lb-np-intro p { margin: 0; }
.elementor.elementor .e-con > .lb-np-van.elementor-widget { position: absolute; bottom: calc(21% - .79 * var(--lb-np-suite) - 42px); right: var(--lb-marge); width: clamp(280px, 26vw, 378px); max-width: none; margin: 0; z-index: 0; pointer-events: none; }
.lb-np-van img { display: block; width: 100%; height: auto; }
.e-con.lb-np-section { scroll-margin-top: -12px; position: relative; z-index: 1; --padding-top: clamp(30px, 3.2vw, 44px); --padding-bottom: clamp(30px, 3.2vw, 44px); --padding-left: 0px; --padding-right: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; }
.lb-np-h2 .elementor-heading-title { font-size: clamp(30px, 4vw, 58px); line-height: 1.08; letter-spacing: -.03em; color: var(--lb-navy); }
.lb-np-h2 span { display: inline-block; color: var(--lb-bleu); }
.elementor.elementor .e-con > .lb-np-sous-titre.elementor-widget { max-width: 680px; margin: 8px 0 clamp(18px, 2vw, 28px); color: var(--lb-doux); font-size: clamp(17px, 1.45vw, 20px); line-height: 1.32; }
.lb-np-sous-titre p { margin: 0; }
.lb-np-cartes {
	list-style: none;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: auto;
	gap: clamp(14px, 1.7vw, 24px);
	margin: 0;
	padding: 0;
}
.lb-np-cartes--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lb-np-cartes--n2 { grid-template-columns: repeat(2, minmax(0, 440px)); }
.lb-np-cartes--n1 { grid-template-columns: minmax(0, 440px); }
.lb-np-carte {
	display: grid;
	grid-row: span 5;
	grid-template-rows: subgrid;
	row-gap: 0;
	padding: clamp(20px, 1.9vw, 28px);
	min-width: 0;
}
.lb-np-carte__nom { align-self: end; margin: 0; font-size: clamp(21px, 1.8vw, 27px); line-height: 1.14; letter-spacing: -.02em; color: var(--lb-navy); }
.lb-np-carte__prix.lb-prix-long { font-size: clamp(21px, 1.75vw, 25px); line-height: 1.2; letter-spacing: -.015em; white-space: normal; }
.lb-np-carte__prix { margin: 4px 0 16px; color: var(--lb-bleu); font-size: clamp(36px, 3.1vw, 46px); line-height: 1.05; font-weight: var(--lb-bold); letter-spacing: -.03em; white-space: nowrap; }
.lb-np-carte__deco { display: flex; align-items: flex-start; justify-content: center; gap: clamp(4px, .6vw, 10px); min-height: clamp(96px, 8.2vw, 118px); margin: 0 0 18px; padding: 14px 8px 12px; border-radius: 16px; background: linear-gradient(120deg, #e3effe 0%, #f1f7ff 60%, #e6f2ff 100%); }
.lb-np-tuile { display: flex; flex-direction: column; align-items: center; gap: 6px; flex: 1 1 0; min-width: 0; max-width: 92px; }
.lb-np-tuile > span { display: flex; align-items: center; justify-content: center; width: clamp(44px, 3.9vw, 56px); height: clamp(44px, 3.9vw, 56px); border-radius: 50%; background: #fff; color: var(--lb-bleu); box-shadow: 0 8px 20px rgba(13, 42, 100, .10); }
.lb-np-tuile small { color: var(--lb-navy); font-size: 13px; line-height: 1.15; text-align: center; }
.lb-np-carte__deco .lb-icone { width: clamp(22px, 2vw, 28px); height: clamp(22px, 2vw, 28px); stroke-width: 1.9; }
.lb-np-carte__liste { list-style: none; display: grid; align-content: start; gap: 10px; margin: 0 0 20px; padding: 0; color: var(--lb-navy); font-size: clamp(15px, 1.15vw, 17px); line-height: 1.3; }
.lb-np-carte__liste li { display: flex; align-items: flex-start; gap: 10px; }
.lb-np-carte__liste .lb-icone { color: var(--lb-bleu); }
.lb-np-carte__liste li:not(.is-km):not(.is-sans) .lb-icone circle { fill: var(--lb-bleu); }
.lb-np-carte__liste li:not(.is-km):not(.is-sans) .lb-icone path { stroke: #fff; stroke-width: 2.2; }
.lb-np-carte__liste strong { color: var(--lb-bleu); white-space: nowrap; }
.lb-np-carte__liste .is-sans { color: var(--lb-doux); }
.lb-np-carte__liste .is-sans .lb-icone { color: #8a95ae; }
.lb-np-carte__btn { padding-inline: 14px; }
.elementor.elementor .e-con > .lb-np-bloc-option.elementor-widget { margin-top: clamp(14px, 1.7vw, 24px); }
.lb-np-option { display: flex; align-items: center; gap: 14px; padding: 14px 20px; border: 1px solid var(--lb-ligne); border-radius: var(--lb-r-md); background: rgba(255, 255, 255, .72); color: var(--lb-texte); font-size: clamp(15px, 1.15vw, 16px); line-height: 1.4; }
.lb-np-option .lb-icone { color: var(--lb-bleu); }
.lb-np-option p { margin: 0; }
.lb-np-option strong { color: var(--lb-navy); }
.lb-np-option a { display: inline-flex; align-items: center; min-height: 44px; margin-block: -12px; color: var(--lb-bleu); text-decoration: underline; text-underline-offset: 2px; }
.e-con.lb-np-demontage { --padding-top: clamp(40px, 4.4vw, 64px); }
.e-con.lb-np-demontage::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	width: min(54vw, 1100px);
	height: clamp(300px, 30vw, 450px);
	opacity: 1;
	mix-blend-mode: normal;
	border: 0;
	background-color: var(--lb-page);
	background-image:
		linear-gradient(90deg, var(--lb-page) 0%, rgba(245, 249, 254, .9) 18%, rgba(245, 249, 254, 0) 46%),
		linear-gradient(0deg, var(--lb-page) 0%, rgba(245, 249, 254, 0) 26%),
		linear-gradient(180deg, var(--lb-page) 0%, rgba(245, 249, 254, 0) 14%),
		url("../img/interieur-demontage.webp");
	background-repeat: no-repeat;
	background-size: auto, auto, auto, cover;
	background-position: 0 0, 0 0, 0 0, right 60%;
	pointer-events: none;
}
.e-con.lb-np-demontage > .e-con { position: relative; z-index: 1; }
.e-con.lb-np-bon { position: relative; z-index: 1; --padding-top: clamp(4px, 1vw, 12px); --padding-bottom: clamp(36px, 4vw, 56px); --padding-left: 0px; --padding-right: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; }
.e-con.lb-np-bon__panneau { --padding-top: clamp(22px, 2.4vw, 32px); --padding-bottom: clamp(22px, 2.4vw, 32px); --padding-left: clamp(20px, 2.6vw, 36px); --padding-right: clamp(20px, 2.6vw, 36px); --gap: 0px; --row-gap: 0px; --column-gap: 0px; border-radius: var(--lb-r); background: var(--lb-fond-2); }
.lb-np-bon__titre .elementor-heading-title { margin-bottom: 14px; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.1; letter-spacing: -.02em; }
.lb-np-bon__liste { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px clamp(16px, 2.4vw, 34px); margin: 0; padding: 0; color: var(--lb-navy); font-size: clamp(16px, 1.2vw, 17px); line-height: 1.36; }
.lb-np-bon__liste li { display: flex; align-items: flex-start; gap: 10px; }
.lb-np-bon__liste .lb-icone { color: var(--lb-bleu); }
.e-con.lb-np-seo { --padding-top: clamp(34px, 3.6vw, 48px); --padding-bottom: clamp(120px, 12vw, 178px); --padding-left: 0px; --padding-right: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; background: #fff url("../img/cretes-claires.svg") center bottom / max(100%, 1100px) auto no-repeat; color: var(--lb-doux); font-size: 16px; line-height: 1.5; }
.lb-np-seo__titre .elementor-heading-title { margin-bottom: 10px; font-size: clamp(22px, 1.9vw, 26px); line-height: 1.16; letter-spacing: -.02em; }
.elementor.elementor .e-con > .lb-np-seo__texte.elementor-widget { max-width: 860px; }
.lb-np-seo__texte p { margin: 0 0 10px; }
.lb-np-seo__texte p:last-child { margin-bottom: 0; }
.lb-np-seo__texte a { color: var(--lb-bleu); text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 1239.98px) {
	.lb-np-bon__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lb-np-carte__btn { padding-inline: 8px; gap: 8px; font-size: 16px; }
	.lb-np-tuile small { font-size: 12px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.elementor.elementor .e-con > .lb-np-intro.elementor-widget, .elementor.elementor .e-con > .lb-np-titre.elementor-widget { max-width: 48%; }
	.e-con.lb-np-hero::before { background-image:
		linear-gradient(90deg, var(--lb-page) 0%, var(--lb-page) 24%, rgba(245, 249, 254, .9) 34%, rgba(245, 249, 254, 0) 66%),
		linear-gradient(0deg, var(--lb-page) 0%, rgba(245, 249, 254, 0) 30%),
		url("../img/hero-bg-1500.webp"); }
}
@media (max-width: 999.98px) {
	.lb-np-cartes--n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lb-np-cartes--n3 .lb-np-carte { padding: 18px 16px; }
	.lb-np-cartes--n3 .lb-np-tuile > span { width: 42px; height: 42px; }
	.lb-np-cartes--n3 .lb-np-carte__deco .lb-icone { width: 22px; height: 22px; }
	.e-con.lb-np-hero::before { width: 100%; background-image: linear-gradient(90deg, var(--lb-page) 0%, var(--lb-page) 52%, rgba(245, 249, 254, 0) 84%), linear-gradient(0deg, var(--lb-page) 0%, rgba(245, 249, 254, 0) 30%), url("../img/hero-bg-1500.webp"); }
	.elementor.elementor .e-con > .lb-np-van.elementor-widget { width: 29vw; }
	.elementor.elementor .e-con > .lb-np-sous-titre.elementor-widget { max-width: 57%; }
}
@media (max-width: 767.98px) {
	.e-con.lb-np-hero { --padding-top: 20px; }
	.e-con.lb-np-hero::before { display: none; }
	.elementor.elementor .e-con > .lb-np-van.elementor-widget { display: none; }
	.elementor.elementor .e-con > .lb-np-titre.elementor-widget, .elementor.elementor .e-con > .lb-np-intro.elementor-widget, .elementor.elementor .e-con > .lb-np-sous-titre.elementor-widget { max-width: none; }
	.lb-np-surtitre { font-size: 14px; }
	.lb-np-surtitre p { margin-bottom: 8px; }
	.e-con.lb-np-section { --padding-top: 28px; --padding-bottom: 28px; }
	.e-con.lb-np-demontage { --padding-top: 28px; }
	.e-con.lb-np-demontage::before { display: none; }
	.lb-np-cartes, .lb-np-cartes--n4, .lb-np-cartes--n2, .lb-np-cartes--n1 { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.lb-np-carte, .lb-np-cartes--n3 .lb-np-carte { display: grid; grid-row: auto; grid-template-rows: none; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "nom deco" "prix deco" "liste liste" "btn btn"; column-gap: 12px; padding: 20px; }
	.lb-np-carte__nom { grid-area: nom; }
	.lb-np-carte__prix { grid-area: prix; margin: 2px 0 12px; }
	.lb-np-carte__deco { grid-area: deco; align-self: start; flex-wrap: nowrap; gap: 6px; min-height: 0; margin: 0; padding: 0; background: none; }
	.lb-np-tuile { flex: none; }
	.lb-np-tuile small { display: none; }
	.lb-np-tuile > span, .lb-np-cartes--n3 .lb-np-tuile > span { width: 44px; height: 44px; background: var(--lb-fond); box-shadow: none; }
	.lb-np-carte__deco .lb-icone, .lb-np-cartes--n3 .lb-np-carte__deco .lb-icone { width: 24px; height: 24px; }
	.lb-np-carte__liste { grid-area: liste; gap: 8px; margin-bottom: 14px; font-size: 16px; }
	.lb-np-carte__btn { grid-area: btn; min-height: 52px; font-size: 17px; gap: 12px; }
	.lb-np-option { align-items: flex-start; padding: 12px 14px; }
	.lb-np-bon__liste { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.e-con.lb-np-seo { --padding-bottom: 28px; background-image: none; }
}
@media (max-width: 400px) {
	.lb-np-carte__deco--n4 { gap: 4px; }
	.lb-np-carte__deco--n4 .lb-np-tuile > span, .lb-np-cartes--n3 .lb-np-carte__deco--n4 .lb-np-tuile > span { width: 36px; height: 36px; }
	.lb-np-carte__deco--n4 .lb-icone, .lb-np-cartes--n3 .lb-np-carte__deco--n4 .lb-icone { width: 20px; height: 20px; }
}
