@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/InterVariable.woff2") format("woff2-variations"),url("../fonts/InterVariable.woff2") format("woff2");}
:root{--lh-ink:#050d14;--lh-violet:#8976fd;--lh-violet-dark:#6e45e9;--lh-mint:#c9f5e8;--lh-paper:#f7f6fa;--lh-white:#fff;--lh-muted:#686777;--lh-line:rgba(5,13,20,.12);--lh-shell:min(1220px,calc(100% - 48px));--lh-shadow:0 25px 60px rgba(5,13,20,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.lh-site{margin:0;overflow-x:hidden;background:var(--lh-paper);color:var(--lh-ink);font:16px/1.65 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.screen-reader-text,.lh-skip{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.lh-shell{width:var(--lh-shell);margin-inline:auto}.lh-topline{padding:8px;background:var(--lh-ink);color:#d9d6ef;font-size:12px;font-weight:700;letter-spacing:.18em;text-align:center}.lh-header{position:sticky;z-index:900;top:0;background:rgba(255,255,255,.95);border-bottom:1px solid var(--lh-line);backdrop-filter:blur(14px)}.admin-bar .lh-header{top:32px}.lh-header__inner{height:76px;display:flex;align-items:center;gap:35px}.lh-brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content;text-decoration:none}.lh-brand>span:last-child{display:grid;line-height:1.14}.lh-brand strong{font-size:17px;font-weight:800;letter-spacing:.14em}.lh-brand small{margin-top:6px;color:var(--lh-muted);font-size:12px;font-weight:700;letter-spacing:.17em}.lh-brand__mark{position:relative;width:36px;height:36px;background:var(--lh-violet);border-radius:14px 9px 14px 9px;transform:rotate(-4deg)}.lh-brand__mark i{position:absolute;top:9px;width:5px;height:18px;background:#fff;border-radius:4px;transform:skew(-18deg)}.lh-brand__mark i:nth-child(1){left:8px}.lh-brand__mark i:nth-child(2){left:16px;top:14px;height:13px}.lh-brand__mark i:nth-child(3){left:24px;top:19px;height:8px}.lh-nav{display:flex;align-items:center;gap:clamp(16px,2vw,26px);margin-left:auto}.lh-nav a{font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.lh-nav a:hover{color:var(--lh-violet-dark)}.lh-header__cta,.lh-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:12px 18px;background:var(--lh-violet);color:#fff;font-size:12px;font-weight:700;text-decoration:none;border-radius:999px}.lh-button span{font-size:18px}.lh-menu{display:none;width:42px;height:42px;padding:10px;background:var(--lh-ink);border:0;border-radius:11px}.lh-menu span{display:block;height:2px;margin:4px 0;background:#fff}
.lh-hero{padding:72px 0 85px;background:linear-gradient(135deg,#f2efff,#fff 65%)}.lh-hero__inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(500px,1.15fr);align-items:center;gap:clamp(28px,4.3vw,62px)}.lh-kicker,.lh-eyebrow{color:var(--lh-violet-dark);font-size:12px;font-weight:800;letter-spacing:.19em}.lh-hero h1{margin:19px 0 27px;font-size:clamp(42px,4.3vw,62px);line-height:1.14;letter-spacing:-.06em}.lh-hero h1 em{position:relative;font-style:normal;color:var(--lh-violet-dark)}.lh-hero h1 em:after{position:absolute;z-index:-1;content:"";left:0;right:0;bottom:5px;height:10px;background:var(--lh-mint)}.lh-hero__copy>p{max-width:560px;margin:0;color:var(--lh-muted);font-size:16px}.lh-actions{display:flex;align-items:center;gap:25px;margin-top:33px}.lh-actions>a:last-child{font-size:12px;font-weight:700;text-underline-offset:5px}.lh-hero__badges{display:flex;flex-wrap:wrap;gap:15px 23px;margin-top:48px;padding-top:24px;border-top:1px solid var(--lh-line)}.lh-hero__badges span{font-size:12px;font-weight:700}.lh-hero__badges i{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:6px;background:var(--lh-mint);color:#126c53;font-style:normal;border-radius:50%}.lh-hero__visual{position:relative;overflow:visible}.lh-hero__visual>img{width:100%;aspect-ratio:16/12;object-fit:cover;border-radius:27px 10px 27px 10px;box-shadow:var(--lh-shadow)}.lh-hero__visual aside{position:absolute;left:-25px;bottom:25px;display:grid;padding:17px 21px;background:#fff;border-radius:12px;box-shadow:0 15px 35px rgba(5,13,20,.17)}.lh-hero__visual aside small,.lh-hero__visual aside span{color:var(--lh-muted);font-size:12px;font-weight:700;letter-spacing:.11em}.lh-hero__visual aside strong{margin:2px 0;font-size:28px}.lh-hero__visual aside em{font-size:12px;font-style:normal}
.lh-categories{transform:translateY(-1px);background:#fff;border-block:1px solid var(--lh-line)}.lh-categories .lh-shell{display:grid;grid-template-columns:repeat(4,1fr)}.lh-categories a{display:grid;grid-template-columns:40px 1fr;align-items:center;padding:25px;border-right:1px solid var(--lh-line);text-decoration:none}.lh-categories a:first-child{border-left:1px solid var(--lh-line)}.lh-categories a>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;background:#f0edff;color:var(--lh-violet-dark);border-radius:50%}.lh-categories strong{font-size:12px}.lh-categories small{color:var(--lh-muted);font-size:12px}.lh-section{padding:110px 0}.lh-heading{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:55px}.lh-heading h2,.lh-page h1,.lh-shop h1{margin:10px 0 0;font-size:clamp(41px,4.6vw,62px);line-height:1.14;letter-spacing:-.055em}.lh-heading>p{max-width:390px;margin:0;color:var(--lh-muted);font-size:13px}
.lh-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.lh-product-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--lh-line);border-radius:18px}.lh-product-card__image{position:relative;overflow:hidden;background:#f0efec}.lh-product-card__image img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .35s}.lh-product-card:hover img{transform:scale(1.025)}.lh-product-card__image>span{position:absolute;left:12px;top:12px;padding:6px 9px;background:#fff;color:var(--lh-violet-dark);font-size:12px;font-weight:700;border-radius:999px}.lh-product-card__body{display:flex;flex-direction:column;flex:1;padding:20px}.lh-product-card__body>small{color:var(--lh-violet-dark);font-size:12px;font-weight:700;letter-spacing:.14em}.lh-product-card h3{margin:8px 0;font-size:19px;line-height:1.15}.lh-product-card__meta{display:flex;flex-wrap:wrap;gap:7px;margin:5px 0 18px}.lh-product-card__meta span{padding:5px 7px;background:#f4f3f7;color:var(--lh-muted);font-size:12px;border-radius:5px}.lh-product-card__footer{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:15px;border-top:1px solid var(--lh-line)}.lh-product-card__footer strong{display:grid;font-size:21px;line-height:1.14}.lh-product-card__footer strong small{margin-top:4px;color:var(--lh-muted);font-size:12px}.lh-product-card__footer a{padding:9px 11px;background:var(--lh-violet);color:#fff;font-size:12px;font-weight:700;text-decoration:none;border-radius:999px}
.lh-benefits{background:var(--lh-ink);color:#fff}.lh-benefits .lh-eyebrow{color:#b5a9ff}.lh-benefits__layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:18px}.lh-benefits__media{min-height:475px;overflow:hidden;border-radius:16px}.lh-benefits__media img{width:100%;height:100%;object-fit:cover}.lh-benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.lh-benefit-grid article{min-height:230px;padding:32px;background:#111923;border:1px solid rgba(255,255,255,.1);border-radius:16px}.lh-benefit-grid article>span{color:#a999ff;font-size:12px;font-weight:700}.lh-benefit-grid h3{margin:60px 0 7px;font-size:26px}.lh-benefit-grid p{max-width:370px;margin:0;color:#aeb6bd;font-size:12px}.lh-steps{background:#fff}.lh-steps ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0}.lh-steps li{display:flex;gap:18px;padding:25px;background:var(--lh-paper);border-radius:14px}.lh-steps li>b{display:grid;place-items:center;flex:0 0 36px;height:36px;background:var(--lh-mint);color:#126c53;border-radius:50%}.lh-steps strong{font-size:17px}.lh-steps p{margin:4px 0 0;color:var(--lh-muted);font-size:12px}
.lh-page,.lh-shop{min-height:65vh;padding:90px 0 110px}.lh-prose{max-width:900px}.lh-prose h1{margin-bottom:45px}.lh-prose h2{margin-top:38px;font-size:28px}.lh-prose p,.lh-prose li{color:#535361}.lh-configurator{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);gap:55px;align-items:start}.lh-config-summary{overflow:hidden;background:#fff;border:1px solid var(--lh-line);border-radius:17px}.lh-config-summary img{width:100%;aspect-ratio:1;object-fit:cover}.lh-config-summary>div{padding:25px}.lh-config-summary small{color:var(--lh-violet-dark);font-size:12px;font-weight:700;letter-spacing:.12em}.lh-config-summary h2{margin:8px 0;font-size:29px}.lh-config-form{padding:34px;background:#fff;border-top:6px solid var(--lh-violet);border-radius:17px;box-shadow:var(--lh-shadow)}.lh-config-form h2{margin:0 0 7px;font-size:32px}.lh-config-form>p{margin:0 0 25px;color:var(--lh-muted);font-size:12px}.lh-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lh-field{display:grid;gap:6px}.lh-field--wide{grid-column:1/-1}.lh-field label{color:#72717f;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.lh-field input,.lh-field select,.lh-field textarea{width:100%;min-height:46px;padding:10px 12px;background:#f6f5f8;border:1px solid #dedce6;border-radius:7px}.lh-config-form button{width:100%;min-height:50px;margin-top:17px;background:var(--lh-violet);color:#fff;border:0;border-radius:9px;font-size:12px;font-weight:700}.lh-notice{padding:12px 14px;margin-bottom:20px;background:#efecff;border-left:4px solid var(--lh-violet);font-size:12px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:17px;background:#fff;border:1px solid var(--lh-line);border-radius:14px}.woocommerce ul.products li.product .price,.woocommerce div.product p.price{color:var(--lh-ink);font-weight:700}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button.alt,.woocommerce button.button.alt{padding:12px 16px;background:var(--lh-violet);color:#fff;font-size:12px;border-radius:999px}.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--lh-violet-dark);color:#fff}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select{min-height:46px;padding:10px 12px;background:#fff;border:1px solid var(--lh-line);border-radius:7px}.woocommerce table.shop_table{background:#fff;border-color:var(--lh-line);border-radius:12px}.woocommerce-checkout #payment{background:#eeecf9;border-radius:12px}.woocommerce-error,.woocommerce-info,.woocommerce-message{background:#fff;border-top-color:var(--lh-violet)}
.lh-footer{padding:0 0 25px;background:#03080c;color:#fff}.lh-footer__promise{display:flex;align-items:center;gap:30px;padding:45px 0;border-bottom:1px solid rgba(255,255,255,.12)}.lh-footer__promise>span{color:#c9c0ff;font-size:12px;font-weight:700;letter-spacing:.12em}.lh-footer__promise>strong{max-width:500px;font-size:27px}.lh-footer__promise>a{margin-left:auto;padding:13px 18px;background:#fff;color:var(--lh-ink);font-size:12px;font-weight:700;text-decoration:none;border-radius:999px}.lh-footer__grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:50px;padding:55px 0}.lh-brand--footer{color:#fff}.lh-brand--footer small{color:#c4d0d8;font-size:12px}.lh-footer__grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.lh-footer__grid>div:first-child p{max-width:300px;color:#b5c0c5;font-size:14px;line-height:1.65}.lh-footer__grid b{margin-bottom:10px;color:var(--lyv-accent-on-dark,#c9c0ff);font-size:12px;letter-spacing:.13em}.lh-footer__grid a,.lh-footer__grid span{color:#c2ccd1;font-size:14px;line-height:1.5;text-decoration:none}.lh-footer__bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#a4b1b8;font-size:12px;font-weight:700;letter-spacing:.08em}
@media(max-width:1050px){:root{--lh-shell:min(100% - 40px,930px)}.lh-hero__inner{grid-template-columns:.85fr 1.15fr;gap:35px}.lh-hero h1{font-size:58px}.lh-product-grid{grid-template-columns:repeat(2,1fr)}.lh-footer__grid{grid-template-columns:1.3fr repeat(3,1fr);gap:28px}}
@media(max-width:850px){.admin-bar .lh-header{top:46px}.lh-menu{display:block;margin-left:auto}.lh-header__cta{display:none}.lh-nav{position:fixed;inset:76px 0 auto;display:none;flex-direction:column;align-items:stretch;gap:0;padding:20px;background:#fff;border-bottom:1px solid var(--lh-line);box-shadow:0 20px 35px rgba(5,13,20,.15)}.admin-bar .lh-nav{top:122px}.lh-nav.is-open{display:flex}.lh-nav a{padding:13px;border-bottom:1px solid var(--lh-line);font-size:17px}.lh-hero__inner{grid-template-columns:1fr}.lh-hero__copy{max-width:720px}.lh-hero__visual{max-width:720px}.lh-categories .lh-shell{grid-template-columns:repeat(2,1fr)}.lh-heading{align-items:flex-start;flex-direction:column;gap:20px}.lh-benefits__layout{grid-template-columns:1fr}.lh-benefits__media{min-height:430px}.lh-steps ol{grid-template-columns:repeat(2,1fr)}.lh-configurator{grid-template-columns:1fr}.lh-config-summary{max-width:460px}.lh-footer__grid{grid-template-columns:repeat(2,1fr)}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){:root{--lh-shell:calc(100% - 30px)}.lh-header__inner{height:64px}.lh-nav{top:64px}.admin-bar .lh-nav{top:110px}.lh-brand strong{font-size:14px}.lh-brand__mark{width:33px;height:33px}.lh-hero{padding:57px 0 68px}.lh-hero h1{font-size:41px;line-height:1.14;letter-spacing:-.035em;text-wrap:balance}.lh-hero h1 br{display:block}.lh-hero__copy>p{font-size:14px}.lh-actions{align-items:flex-start;flex-direction:column}.lh-button{width:100%}.lh-hero__badges{align-items:flex-start;flex-direction:column}.lh-hero__visual aside{left:9px;bottom:9px}.lh-categories .lh-shell{grid-template-columns:1fr}.lh-categories a,.lh-categories a:first-child{border-left:0;border-right:0;border-bottom:1px solid var(--lh-line)}.lh-section{padding:72px 0}.lh-heading h2,.lh-page h1,.lh-shop h1{font-size:37px;line-height:1.14;letter-spacing:-.035em}.lh-benefits__media{min-height:360px}.lh-product-grid,.lh-benefit-grid{grid-template-columns:1fr}.lh-benefit-grid article{min-height:210px}.lh-benefit-grid h3{margin-top:45px}.lh-steps ol{grid-template-columns:1fr}.lh-config-form{padding:24px 20px}.lh-config-grid{grid-template-columns:1fr}.lh-field--wide{grid-column:auto}.lh-footer__promise{align-items:flex-start;flex-direction:column}.lh-footer__promise>a{margin-left:0}.lh-footer__grid{grid-template-columns:1fr;gap:32px}.lh-footer__bottom{align-items:flex-start;flex-direction:column}.woocommerce ul.products{grid-template-columns:1fr}}
b,strong{font-weight:700}
small,sub,sup{font-size:max(12px,.875em)}
h1,h2,h3,h4{padding-bottom:.08em}

/* Accessibilité : le focus doit se voir, sinon la navigation au clavier est
   aveugle (RGAA 10.7). */
:focus-visible{outline:3px solid var(--lh-violet-dark);outline-offset:3px}
/* Et une animation ne s'impose pas à qui a demandé qu'on la lui épargne. */
@media(prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}


/* En-tête Elementor compact sur mobile : logo, menu et compte restent sur une
   seule ligne au lieu de créer trois rangées de plus de 230 px. */
@media (max-width: 760px) {
	body.ehf-header #masthead .elementor-section {
		padding: 10px 14px !important;
	}
	body.ehf-header #masthead .elementor-section > .elementor-container {
		display: flex;
		flex-flow: row nowrap;
		align-items: center;
		min-height: 60px;
	}
	body.ehf-header #masthead .elementor-section > .elementor-container > .elementor-column {
		width: auto !important;
	}
	body.ehf-header #masthead .elementor-section > .elementor-container > .elementor-column:first-child {
		flex: 1 1 auto;
		min-width: 0;
	}
	body.ehf-header #masthead .elementor-section > .elementor-container > .elementor-column:nth-child(2) {
		flex: 0 0 44px;
		width: 44px !important;
	}
	body.ehf-header #masthead .elementor-section > .elementor-container > .elementor-column:last-child {
		display: flex;
		flex: 0 0 auto;
		width: auto !important;
	}
	body.ehf-header #masthead .elementor-column > .elementor-element-populated {
		padding: 0;
	}
	body.ehf-header #masthead .elementor-widget-site-logo img {
		display: block;
		width: auto;
		max-width: 128px;
		height: 40px;
		object-fit: contain;
	}
	body.ehf-header #masthead .hfe-nav-menu__toggle {
		margin-left: 0;
	}
	body.ehf-header #masthead .hfe-nav-menu__layout-horizontal:not(.menu-is-active) {
		overflow: hidden;
	}
	body.ehf-header #masthead .elementor-widget-button .elementor-button {
		min-height: 40px;
		padding: 10px 14px;
		font-size: 12px;
		white-space: nowrap;
	}
}

@media (max-width: 360px) {
	body.ehf-header #masthead .elementor-widget-site-logo img {
		max-width: 112px;
	}
	body.ehf-header #masthead .elementor-widget-button .elementor-button {
		padding-inline: 11px;
	}
}


/* Petits écrans : l'espacement fixe de l'en-tête faisait déborder la page sous
   340 px, et les liens du menu tenaient sur 21 px de haut — sous les 24 px du
   critère de taille de cible (WCAG 2.5.8). */
@media(max-width:560px){
	.lh-header__inner{gap:10px;column-gap:10px;flex-wrap:nowrap;min-width:0}
	.lh-header__inner>*{min-width:0}
	.lh-logo small{display:none}
	.lh-nav a,footer a,.woocommerce-breadcrumb a{min-height:44px;display:inline-flex;align-items:center}
}

/* Un menu de pied sort des <li>, le repli des <a> nus : la colonne doit avoir
   le même aspect dans les deux cas, sinon personnaliser son site le dégrade. */
.lh-footer li { list-style: none; margin: 0; padding: 0; display: block; }

/* La navigation vient d'un menu WordPress : ses liens sont dans une liste.
   Le thème ne stylait que son repli — des liens nus — et le vrai menu
   s'affichait donc avec des puces, chaque libellé replié sur deux lignes. */
.lh-nav .lh-nav-list { display: flex; align-items: center; gap: inherit; margin: 0; padding: 0; list-style: none; }
.lh-nav .lh-nav-list > li { margin: 0; padding: 0; list-style: none; }
/* Pas de `nowrap` ici : entre le pli mobile et le grand écran, la barre
   n'a pas la place de tout tenir sur une ligne. Un libellé qui se replie
   sur deux lignes reste lisible ; un menu qui sort de l'écran, non. */
.lh-nav .lh-nav-list { min-width: 0; }
@media(max-width:850px){
	.lh-nav .lh-nav-list { flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
	.lh-nav .lh-nav-list > li > a { display: flex; width: 100%; }
}

/* Entre le pli du thème et le grand écran, la barre n'a pas la place de tout tenir.
   Mesuré : à 880 px, cinq libellés français, la marque et le bouton d'appel
   demandent plus que la largeur disponible — les libellés se repliaient alors
   sur trois lignes. Deux thèmes voisins basculent en menu déroulant dès 900 px
   et sont parfaitement lisibles là où ceux-ci s'entassent. On applique la même
   réponse : la navigation se replie, le reste de la mise en page ne bouge pas. */
@media(min-width:851px) and (max-width:1000px){
	.lh-menu { display: block; margin-left: auto; }
	.lh-header__cta { display: none; }
	.lh-nav {
		position: fixed;
		inset: 76px 0 auto;
		display: none;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 20px;
		background: #fff;
		border-bottom: 1px solid var(--lh-line);
		box-shadow: 0 20px 35px rgba(5, 13, 20, .15);
	}
	.admin-bar .lh-nav { top: 108px; }
	.lh-nav.is-open { display: flex; }
	.lh-nav a { padding: 13px; border-bottom: 1px solid var(--lh-line); font-size: 17px; }
	.lh-nav .lh-nav-list { flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
	.lh-nav .lh-nav-list > li > a { display: flex; width: 100%; }
}

/* Vingt-quatre pixels de haut, à toutes les largeurs.
   La règle de taille de cible n'existait qu'en dessous de 560 px : au-delà, les
   liens du menu et du pied retombaient à 15–17 px de haut, sous le minimum de
   24 px du critère 2.5.8. Personne ne l'avait vu parce qu'aucun contrôle ne
   mesurait entre le téléphone et le bureau. Vingt-quatre pixels ne changent pas
   l'aspect d'une barre de 76 px ; ils changent la vie d'un doigt sur tablette. */
.lh-nav a, footer a { min-height: 24px; display: inline-flex; align-items: center; }

/* Les deux encres du pied de page, exposées pour le module.
   La carte de contact d'un pied construit avec Elementor est mise à plat par le
   module, qui ne peut pas deviner sur quelle couleur elle atterrit : le thème
   la lui dit ici. */
:root {
	--lyv-pied-texte: #e8e6f2;
	--lyv-pied-lien: #c9f5e8;
}

/* Questions dépliables (bloc « Détails » de l'éditeur) : la page des questions
   fréquentes livrée avec la démonstration, et toute question que le client
   ajoute lui-même. Couleurs de la palette du Theme Studio. */
.wp-block-details{margin:0 0 12px;padding:14px 18px;background:#fff;border:1px solid var(--lh-line,rgba(0,0,0,.12));border-radius:14px}
.wp-block-details summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;font-weight:700;font-size:1.05rem;line-height:1.35}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::before{content:"+";flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--lyv-accent,#333);color:var(--lyv-accent-text,#fff);font-size:1.1rem;font-weight:700;line-height:1}
.wp-block-details[open] summary::before{content:"–"}
.wp-block-details>:not(summary){margin:10px 0 0 38px}
.wp-block-details>:not(summary):last-child{margin-bottom:4px}

/* V13 — rythme plus dense et finition, sans nouvelle chaîne visible. */
.lh-header{box-shadow:0 12px 34px rgba(5,13,20,.1)}
.lh-header__inner{height:70px;gap:clamp(17px,2.2vw,34px)}
.lh-nav{gap:clamp(15px,2vw,26px)}
.lh-nav a{line-height:1.25;text-wrap:balance}
.lh-nav .current-menu-item>a{box-shadow:inset 0 -2px 0 var(--lh-violet)}
.lh-brand__mark{box-shadow:0 10px 22px rgba(110,69,233,.2)}
.lh-header__cta{box-shadow:0 10px 24px rgba(5,13,20,.14);transition:transform .2s ease,box-shadow .2s ease}
.lh-header__cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(5,13,20,.2)}
.lh-hero{padding:58px 0 68px}
.lh-hero__badges{margin-top:34px}
.lh-section{padding:84px 0}
.lh-heading{margin-bottom:38px}
.lh-benefit-grid article{min-height:190px;padding:26px;background:linear-gradient(145deg,#111923,#151d29)}
.lh-benefit-grid h3{margin-top:36px}
.lh-steps li{min-height:122px;align-items:flex-start;border:1px solid var(--lh-line);box-shadow:0 12px 26px rgba(5,13,20,.05)}
.lh-footer{position:relative;isolation:isolate;overflow:hidden}
.lh-footer::before{position:absolute;z-index:-1;inset:0;content:"";background:radial-gradient(circle at 12% 18%,rgba(137,118,253,.17),transparent 30%),radial-gradient(circle at 88% 82%,rgba(201,245,232,.08),transparent 31%)}
.lh-footer__promise{padding:36px 0}
.lh-footer__grid{gap:clamp(27px,4vw,48px);padding:43px 0}
.lh-footer__grid>div:not(:first-child){padding-left:18px;border-left:1px solid rgba(255,255,255,.11)}
.lh-footer__grid a{transition:color .18s ease,transform .18s ease}
.lh-footer__grid a:hover{color:var(--lyv-pied-lien,#c9f5e8);transform:translateX(3px)}
@media(max-width:850px){
	.lh-header__inner{height:68px}
	.lh-footer__grid>div:not(:first-child){padding-left:0;border-left:0}
}
@media(max-width:560px){
	.lh-hero{padding:48px 0 56px}
	.lh-section{padding:56px 0}
	.lh-benefit-grid article,.lh-steps li{min-height:0}
	.lh-benefit-grid h3{margin-top:25px}
	.lh-footer__promise,.lh-footer__grid{padding:34px 0}
}

/* L'espacement du menu ne grandit plus avec la fenêtre.
   Constat du propriétaire, 26 septembre 2026 : « il y a un retour à la ligne
   sur le menu ». Mesuré : la largeur utile est plafonnée à 1 220 px quelle que
   soit la fenêtre, tandis que l'espacement suivait le viewport (25,5 px à
   1 280, 32 px à 1 600). Passé ~1 536 px, les espaces avaient mangé assez de
   place pour replier quatre libellés — « Nos équipements », « Services
   inclus », « Comment ça marche », « Questions fréquentes ». Une fenêtre plus
   large donnait donc un menu plus serré, ce que personne n'attend.
   L'espacement est ramené sous la largeur utile, et les libellés ne se
   coupent plus : s'ils ne tiennent pas, cela se verra au lieu de s'empiler. */

/* Un mot trop long ne pousse plus la page hors de l'écran.
   Mesuré le 26 septembre 2026, à 375 px de large : l'accueil allemand de la
   démonstration outillage débordait de 22 px, alors que les cinq autres
   langues tenaient exactement dans la fenêtre. La cause n'était pas la mise en
   page mais un mot : « EINZELMASCHINE », « Verbrauchsmaterial ». L'allemand
   compose des mots que rien ne coupe, et un client peut nommer son bien aussi
   longuement qu'il veut, dans n'importe quelle langue.
   La règle ne s'applique que lorsqu'un mot ne tient pas : ce qui tenait déjà
   ne bouge pas. */
h1, h2, h3, h4, h5, h6, p, li, dt, dd, figcaption, th, td, summary, label,
blockquote, .wp-block-heading {
	overflow-wrap: break-word;
}
