/* Helioneon v3, branding neuf (02/10/2026). Clean, moderne, flat : pas d'ombres, pilules partout,
   fond blanc + surfaces gris clair + sections quasi noires, un seul accent vert (confiance / Trustpilot). */
:root{
  --ink:#131517; --ink-2:#4b535b; --ink-3:#8a9199;
  --paper:#ffffff; --soft:#f4f4f5; --line:#e4e5e8;
  --dark:#131517; --dark-2:#1d2024; --on-dark:#ffffff; --on-dark-2:rgba(255,255,255,.72); --on-dark-line:rgba(255,255,255,.14);
  --accent:#00a87e;
  --display:"Manrope",system-ui,sans-serif; --body:"Inter",system-ui,sans-serif;
  --h1:clamp(2.4rem,1.4rem + 3.1vw,4.2rem); --h2:clamp(1.9rem,1.3rem + 2.1vw,3.2rem); --h3:clamp(1.35rem,1.15rem + .9vw,1.9rem); --h4:1.25rem; --h5:1.05rem;
  --r-card:20px; --r-small:12px; --r-pill:9999px;
  --gap:clamp(16px,2.2vw,32px); --wrap:1280px; --pad:clamp(20px,4vw,48px); --section:clamp(80px,9vw,128px);
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.55 var(--body);letter-spacing:.01em;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
.hx-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.hx-ico{display:inline-flex;width:20px;height:20px;flex:none}
.hx-ico svg{width:100%;height:100%}
.hx-ico--green{color:var(--accent)}
.hx-ico--box{width:44px;height:44px;padding:11px;border-radius:var(--r-small);background:var(--soft);color:var(--ink)}
.hx-dark .hx-ico--box{background:rgba(255,255,255,.08);color:var(--on-dark)}
.hx-center{text-align:center}

/* Typo */
.hx-h1,.hx-h2,.hx-h3,.hx-h4,.hx-h5{font-family:var(--display);font-weight:600;margin:0;letter-spacing:-.02em}
.hx-h1{font-size:var(--h1);line-height:1.02;letter-spacing:-.035em}
.hx-h1 span{color:var(--ink);position:relative;white-space:nowrap;box-decoration-break:clone}
.hx-h1 span::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.12em;background:var(--accent);border-radius:999px;transform:scaleX(0);transform-origin:left;animation:hx-underline .9s var(--ease) .5s forwards}
@keyframes hx-underline{to{transform:scaleX(1)}}
.hx-h2{font-size:var(--h2);line-height:1.06;letter-spacing:-.03em;max-width:20ch}
.hx-h2 em{font-style:normal;color:var(--ink-2)}
.hx-h3{font-size:var(--h3);line-height:1.15}
.hx-h4{font-size:var(--h4);line-height:1.3;letter-spacing:-.01em}
.hx-h5{font-size:var(--h5);line-height:1.35;letter-spacing:0}
.hx-lead{font-size:1.125rem;line-height:1.55;color:var(--ink-2);max-width:60ch}
.hx-lead a{text-decoration:underline;text-underline-offset:.15em}
.hx-kicker{display:inline-block;font:600 .8125rem/1 var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.hx-dark{background:var(--dark);color:var(--on-dark)}
.hx-dark .hx-lead,.hx-dark p{color:var(--on-dark-2)}
.hx-dark .hx-kicker{color:var(--on-dark-2)}
.hx-dark .hx-h1 span,.hx-dark .hx-h2,.hx-dark .hx-h3,.hx-dark .hx-h4{color:var(--on-dark)}
.hx-soft{background:var(--soft)}

/* Boutons : pilules, grands, sans ombre */
.hx-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:52px;padding:14px 30px;border-radius:var(--r-pill);font:600 1rem/1 var(--body);letter-spacing:0;transition:opacity .2s,background .2s,border-color .2s;white-space:nowrap}
.hx-btn--dark{background:var(--ink);color:#fff}
.hx-btn--dark:hover{opacity:.85}
.hx-btn--outline{border:2px solid var(--ink);color:var(--ink)}
.hx-btn--outline:hover{background:var(--ink);color:#fff}
.hx-btn--light{background:#fff;color:var(--ink)}
.hx-btn--light:hover{opacity:.9}
.hx-btn--ghost{border:2px solid rgba(255,255,255,.7);color:#fff;background:rgba(255,255,255,.06)}
.hx-btn--ghost:hover{background:rgba(255,255,255,.14)}
.hx-btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.hx-dark :focus-visible{outline-color:#fff}
.hx-actions{display:flex;flex-wrap:wrap;gap:12px}
.hx-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:var(--r-pill);background:var(--soft);color:var(--ink);font:600 .8125rem/1 var(--body)}
.hx-dark .hx-chip{background:rgba(255,255,255,.1);color:#fff}
.hx-chip--on-img{position:absolute;left:14px;top:14px;background:#fff;color:var(--ink)}

/* Bandeau + header */
.hx-topbar{background:var(--soft);border-bottom:1px solid var(--line);font-size:.8125rem;color:var(--ink-2);overflow:hidden}
.hx-topbar__in{display:flex;gap:32px;justify-content:center;min-height:40px;align-items:center;white-space:nowrap}
body{overflow-x:hidden}
.hx-topbar__item{display:inline-flex;align-items:center;gap:8px}
.hx-topbar .hx-ico{width:16px;height:16px}
.hx-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.hx-header__in{display:flex;align-items:center;gap:36px;min-height:76px}
.hx-logo{font:700 1.3rem/1 var(--display);letter-spacing:-.02em}
.hx-logo span{color:var(--accent)}
.hx-nav{display:flex;gap:28px}
.hx-nav a{font:500 .95rem/1 var(--body);color:var(--ink-2);padding:10px 0}
.hx-nav a:hover{color:var(--ink)}
.hx-header__actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.hx-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-pill);background:var(--soft);color:var(--ink)}
.hx-iconbtn:hover{background:var(--line)}
/* nombre d'articles sur l'icône panier (05/10/2026), rempli par shop.js */
.hx-iconbtn--cart{position:relative}
.hx-cartcount{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font:600 .6875rem/20px var(--body);letter-spacing:0;text-align:center;box-shadow:0 0 0 2px #fff;pointer-events:none}
.hx-cartcount[hidden]{display:none}
.hx-header .hx-btn{min-height:44px;padding:12px 22px;font-size:.9rem;margin-left:6px}
.hx-burger{display:none;width:44px;height:44px;border:0;border-radius:var(--r-pill);background:var(--soft);color:var(--ink);align-items:center;justify-content:center;cursor:pointer}
.hx-mobile{display:none}

/* Hero */
.hx-hero{padding:clamp(48px,7vw,104px) 0 clamp(40px,6vw,88px)}
.hx-hero .hx-wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.hx-hero__copy{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.hx-hero__trust{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:var(--ink-2);font-weight:500}
.hx-hero__media{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-hero__media img{width:100%;aspect-ratio:5/4;object-fit:cover;object-position:center 35%}

/* Sections génériques */
.hx-section{padding:var(--section) 0}
.hx-section__head{margin-bottom:clamp(36px,5vw,64px)}
.hx-section__head--split{display:flex;justify-content:space-between;align-items:end;gap:40px}
.hx-section__head--split .hx-lead{max-width:44ch;padding-bottom:6px}
.hx-section__foot{display:flex;justify-content:center;margin-top:clamp(32px,4vw,56px)}

/* Produits */
.hx-prod__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-prod__link{display:block;border-radius:var(--r-card);background:var(--soft);overflow:hidden;transition:transform .35s var(--ease)}
.hx-prod__link:hover{transform:translateY(-4px)}
.hx-prod__media img{width:100%;aspect-ratio:1;object-fit:cover}
.hx-prod__body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:6px}
.hx-prod__body .hx-kicker{margin:0;font-size:.75rem}
.hx-prod__price{font:600 1.05rem/1 var(--display);margin-top:6px}

/* Logos */
.hx-logos{padding:0 0 var(--section);overflow:hidden}
.hx-logos__track{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 48px;margin-top:20px}
.hx-logos__track img{height:26px;width:auto;opacity:.55;filter:grayscale(1)}

/* AR Studio */
.hx-ar__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,88px);align-items:center}
.hx-ar__copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.hx-steps{display:flex;flex-direction:column;gap:18px;margin:8px 0}
.hx-step{display:flex;gap:18px;align-items:flex-start}
.hx-step__n{display:block;font:600 .75rem/1 var(--body);letter-spacing:.06em;color:var(--on-dark-2);margin-bottom:6px}
.hx-step .hx-h4{margin-bottom:6px}
.hx-step p{font-size:.95rem}
.hx-step a{text-decoration:underline;text-underline-offset:.15em;color:#fff}
.hx-trustline{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:var(--on-dark-2)}
.hx-ar__device{display:flex;justify-content:center}
.hx-phone{width:min(330px,100%);aspect-ratio:9/19;border-radius:44px;background:var(--dark-2);border:1px solid var(--on-dark-line);padding:12px;position:relative}
.hx-phone__notch{position:absolute;top:22px;left:50%;transform:translateX(-50%);width:96px;height:26px;border-radius:999px;background:var(--dark);z-index:2}
.hx-phone__screen{width:100%;height:100%;border-radius:34px;overflow:hidden;background:#000}
.hx-phone__screen iframe{width:100%;height:100%;border:0;display:block}
.hx-ar__features{margin-top:clamp(56px,7vw,96px);padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--on-dark-line)}
.hx-ar__features .hx-h3{margin-bottom:36px;max-width:28ch}
.hx-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-feature{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:var(--r-card);background:var(--dark-2)}
.hx-feature p{font-size:.95rem}

/* Comment créer */
.hx-howsteps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-howstep{display:flex;flex-direction:column;gap:12px;padding:28px 0 0;border-top:2px solid var(--ink)}
.hx-howstep__n{font:600 .8125rem/1 var(--body);letter-spacing:.04em;color:var(--ink-3)}
.hx-howstep p{color:var(--ink-2);font-size:.98rem}
.hx-how__foot{margin-top:clamp(40px,5vw,72px);display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.hx-how__foot .hx-lead{max-width:52ch}

/* Tarifs + garanties */
.hx-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-tile{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:var(--r-card);background:var(--paper)}
.hx-tile p{color:var(--ink-2);font-size:.95rem}
.hx-tile p a{text-decoration:underline;text-underline-offset:.15em}
.hx-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);margin-top:var(--gap);padding-top:var(--gap);border-top:1px solid var(--line)}
.hx-proof li{display:flex;gap:14px;align-items:flex-start}
.hx-proof li div{display:flex;flex-direction:column;gap:2px}
.hx-proof strong{font-weight:600;font-size:.95rem}
.hx-proof span{color:var(--ink-3);font-size:.85rem}
.hx-proof .hx-ico{margin-top:1px;color:var(--ink)}

/* Réalisations */
.hx-works__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-work{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-work img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s var(--ease)}
.hx-work:hover img{transform:scale(1.03)}
.hx-work figcaption{padding:18px 22px 22px;display:flex;flex-direction:column;gap:4px}
.hx-work figcaption .hx-kicker{margin:0;font-size:.75rem}
.hx-work strong{font:600 1.1rem/1.3 var(--display);letter-spacing:-.01em}

/* CTA */
.hx-cta__in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px}
.hx-cta .hx-h2{max-width:18ch}
.hx-cta .hx-lead a{color:#fff}

/* Avis */
.hx-tp{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 18px;border-radius:var(--r-card);background:var(--paper);font-size:.9rem;color:var(--ink-2);max-width:100%}
.hx-tp strong{color:var(--ink)}
.hx-stars{display:inline-flex;gap:2px;color:var(--accent)}
.hx-stars svg{width:16px;height:16px}
.hx-reviews{overflow:hidden}
.hx-reviews__track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-review{min-width:0;display:flex;flex-direction:column;gap:16px;padding:28px;border-radius:var(--r-card);background:var(--paper)}
.hx-review p{font-size:1.02rem;line-height:1.55;flex:1}
.hx-review footer{display:flex;align-items:center;gap:12px}
.hx-review footer div{display:flex;flex-direction:column}
.hx-review footer strong{font-weight:600;font-size:.95rem}
.hx-review footer span:last-child{font-size:.8rem;color:var(--ink-3)}
.hx-avatar{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font:600 .8rem/1 var(--body)}

/* FAQ */
.hx-faq__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,88px);align-items:start}
.hx-faq__head{position:sticky;top:100px}
.hx-faq__item{border-top:1px solid var(--line)}
.hx-faq__item:last-child{border-bottom:1px solid var(--line)}
.hx-faq__item summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;list-style:none}
.hx-faq__item summary::-webkit-details-marker{display:none}
.hx-faq__item summary .hx-h4{font-size:1.1rem;font-weight:600}
.hx-faq__item summary .hx-ico{width:32px;height:32px;padding:7px;border-radius:var(--r-pill);background:var(--soft);transition:transform .3s var(--ease)}
.hx-faq__item[open] summary .hx-ico{transform:rotate(45deg)}
.hx-faq__a{padding:0 0 24px;color:var(--ink-2);max-width:62ch}
.hx-faq__a a{text-decoration:underline;text-underline-offset:.15em}

/* Blog */
.hx-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-post{display:flex;flex-direction:column;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-post__media{position:relative}
.hx-post__media img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .6s var(--ease)}
.hx-post:hover .hx-post__media img{transform:scale(1.03)}
.hx-post__body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.hx-post__body p{color:var(--ink-2);font-size:.95rem}
.hx-post__meta{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;font-size:.8rem;color:var(--ink-3)}
.hx-post__read{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--ink)}
.hx-post__read .hx-ico{width:16px;height:16px}

/* Pied */
.hx-footer{padding:clamp(56px,7vw,96px) 0 120px}
.hx-footer__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2.4fr);gap:clamp(32px,6vw,88px)}
.hx-footer__brand{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.hx-footer__brand p{max-width:30ch}
.hx-footer__contact,.hx-footer__social{display:flex;flex-wrap:wrap;gap:10px}
.hx-footer__contact a,.hx-footer__social a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:var(--r-pill);background:rgba(255,255,255,.08);font-size:.875rem;color:#fff}
.hx-footer__contact a:hover,.hx-footer__social a:hover{background:rgba(255,255,255,.16)}
.hx-footer__cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.hx-footer__col{display:flex;flex-direction:column;gap:10px}
.hx-footer .hx-footer__title{margin:0 0 6px;font:600 .8125rem/1 var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--on-dark-2)}
.hx-footer__col a{font-size:.925rem;color:#fff;opacity:.85}
.hx-footer__col a:hover{opacity:1}
.hx-footer__eu{margin-top:clamp(40px,5vw,64px);padding-top:32px;border-top:1px solid var(--on-dark-line)}
.hx-footer__eu-grid{display:flex;flex-wrap:wrap;gap:8px}
.hx-footer__eu-grid a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--on-dark-line);font-size:.85rem;color:#fff}
.hx-footer__eu-grid a:hover{border-color:#fff}
.hx-footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid var(--on-dark-line);font-size:.8125rem;color:var(--on-dark-2)}
.hx-sticky{display:none}
.hx-skip{position:absolute;left:-999px;top:8px;z-index:100;padding:10px 16px;border-radius:var(--r-pill);background:var(--ink);color:#fff}
.hx-skip:focus{left:8px}
.hx-review__top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.hx-review__via{font-size:.75rem;color:var(--ink-3)}
.hx-trustline--light{display:flex;justify-content:center;margin-top:28px;color:var(--ink-2)}
.hx-tp__link{font-weight:600;color:var(--ink)}

/* Apparition au défilement : contenu visible sans JS, le JS pose l'état initial */
.hx-js .hx-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.hx-js .hx-hero .hx-reveal{opacity:1;transform:none}
.hx-js .hx-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.hx-js .hx-reveal{opacity:1;transform:none;transition:none}.hx-h1 span::after{animation:none;transform:scaleX(1)}*{scroll-behavior:auto!important}}

/* Responsive */
@media (max-width:1100px){
  .hx-prod__grid,.hx-howsteps,.hx-tiles,.hx-proof,.hx-features{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hx-footer__cols{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .hx-nav,.hx-header .hx-btn,.hx-header .hx-iconbtn:nth-child(2){display:none}
  .hx-burger{display:inline-flex}
  .hx-mobile.is-open{display:flex;flex-direction:column;gap:6px;padding:12px var(--pad) 24px;border-top:1px solid var(--line);background:#fff}
  .hx-mobile a{padding:12px 0;font:500 1.05rem/1 var(--body)}
  .hx-mobile .hx-btn{margin-top:12px;align-self:flex-start}
  .hx-hero .hx-wrap,.hx-ar__grid,.hx-faq__grid,.hx-footer__top{grid-template-columns:minmax(0,1fr)}
  .hx-hero__media{order:-1}
  .hx-faq__head{position:static}
  .hx-section__head--split{flex-direction:column;align-items:flex-start;gap:16px}
  .hx-works__grid,.hx-reviews__track,.hx-posts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hx-sticky{display:flex;position:fixed;left:16px;right:16px;bottom:16px;width:auto;z-index:60;justify-content:center;min-height:54px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font:600 1rem/1 var(--body);align-items:center}
}
@media (max-width:600px){
  .hx-prod__grid,.hx-howsteps,.hx-tiles,.hx-proof,.hx-features,.hx-works__grid,.hx-reviews__track,.hx-posts{grid-template-columns:minmax(0,1fr)}
  .hx-footer__cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hx-actions .hx-btn{flex:1}
  .hx-phone{width:min(300px,100%)}
}

/* l'étoile « ★ » des textes est conservée dans le HTML (contenu inchangé) mais rendue par l'icône */
.hx-txtstar{display:inline-block}
.hx-txtstar::first-letter{font-size:0}
/* FAQ : titres un peu plus présents */
.hx-faq__item summary .hx-h4{font-size:1.15rem}

/* Sliders conservés du site actuel : bandeau (mobile, 15 s), logos (25 s), avis (60 s, pause au survol).
   Les doublons sont ajoutés par le JS (aria-hidden) ; sans JS ou en reduced-motion : rangées statiques. */
@keyframes hx-marquee{to{transform:translateX(-50%)}}
.hx-marquee.is-loop{display:flex;flex-wrap:nowrap;justify-content:flex-start;width:max-content;max-width:none;gap:0;animation:hx-marquee var(--loop,25s) linear infinite}
.hx-marquee.is-loop:hover{animation-play-state:paused}
.hx-logos__track.is-loop{--loop:25s}
.hx-logos__track.is-loop img{margin-right:64px}
.hx-reviews__track.is-loop{--loop:60s;padding:10px 0}
.hx-reviews__track.is-loop .hx-review{width:360px;flex-shrink:0;margin-right:20px}
.hx-topbar__in.is-loop [aria-hidden]{display:none}
@media (max-width:768px){
  .hx-topbar__in.is-loop{--loop:15s;padding-left:0;padding-right:0}
  .hx-topbar__in.is-loop [aria-hidden]{display:inline-flex}
  .hx-topbar__in.is-loop .hx-topbar__item{margin-right:40px}
}
@media (min-width:769px){.hx-topbar__in.is-loop{animation:none;width:auto;justify-content:center;gap:32px}}

/* ── Passe couleur (retour Guillaume 01/10 : « ça manque un peu de couleurs ») ──
   Palette tirée des tubes néon, posée en touches : violet (principal), rose, cyan, ambre, vert (avis). */
:root{--c-violet:#6b4dff;--c-pink:#ff3d8a;--c-cyan:#19b8ff;--c-amber:#ffb224;
  --t-violet:#efeaff;--t-pink:#ffeaf2;--t-cyan:#e3f5ff;--t-amber:#fff3d9;--t-mint:#e2f7ef;
  --neon:linear-gradient(90deg,var(--c-violet),var(--c-pink) 50%,var(--c-cyan))}
.hx-kicker{color:var(--c-violet)}
.hx-dark .hx-kicker{color:#9fdcff}
.hx-h1 span::after{background:var(--neon);height:.14em}
.hx-topbar .hx-ico{color:var(--c-violet)}
.hx-topbar__item:nth-child(4n+2) .hx-ico{color:var(--c-pink)}
.hx-topbar__item:nth-child(4n+3) .hx-ico{color:var(--c-cyan)}
.hx-topbar__item:nth-child(4n+4) .hx-ico{color:var(--c-amber)}
.hx-header .hx-btn:hover{background:var(--c-violet)}
/* produits : badge + prix */
.hx-prod .hx-chip--on-img{background:var(--c-pink);color:#fff}
.hx-prod__price{color:var(--c-violet)}
/* AR Studio (sombre) : halo cyan + cartes accentuées */
.hx-ar{background:radial-gradient(55% 70% at 85% 15%,rgba(25,184,255,.28),transparent 65%),radial-gradient(45% 60% at 10% 90%,rgba(107,77,255,.3),transparent 60%),var(--dark)}
.hx-feature{border-left:3px solid var(--c-cyan)}
.hx-feature:nth-child(2){border-left-color:var(--c-violet)}
.hx-feature:nth-child(3){border-left-color:var(--c-pink)}
.hx-feature:nth-child(4){border-left-color:var(--c-amber)}
.hx-step__n{color:var(--c-cyan)}
/* étapes : une couleur par étape */
.hx-howstep{border-top-color:var(--c-violet)}
.hx-howstep__n{color:var(--c-violet)}
.hx-howstep:nth-child(2){border-top-color:var(--c-pink)}.hx-howstep:nth-child(2) .hx-howstep__n{color:var(--c-pink)}
.hx-howstep:nth-child(3){border-top-color:var(--c-cyan)}.hx-howstep:nth-child(3) .hx-howstep__n{color:var(--c-cyan)}
.hx-howstep:nth-child(4){border-top-color:var(--c-amber)}.hx-howstep:nth-child(4) .hx-howstep__n{color:var(--c-amber)}
/* tarifs : fond lilas, tuiles blanches avec pastille colorée */
.hx-pricing.hx-soft{background:var(--t-violet)}
.hx-tile{position:relative;padding-top:34px}
.hx-tile::before{content:"";position:absolute;left:28px;top:24px;width:34px;height:4px;border-radius:999px;background:var(--c-violet)}
.hx-tile:nth-child(2)::before{background:var(--c-pink)}
.hx-tile:nth-child(3)::before{background:var(--c-cyan)}
.hx-tile:nth-child(4)::before{background:var(--c-amber)}
.hx-tile:nth-child(5)::before{background:var(--accent)}
.hx-tile:nth-child(6)::before{background:var(--c-violet)}
.hx-tile .hx-h4,.hx-tile .hx-h3{margin-top:14px}
/* réalisations : étiquette catégorie */
.hx-work figcaption .hx-kicker{color:var(--c-pink)}
/* CTA sombre : halos néon */
.hx-cta{background:radial-gradient(60% 80% at 8% 12%,rgba(107,77,255,.5),transparent 60%),radial-gradient(50% 70% at 92% 88%,rgba(255,61,138,.4),transparent 60%),var(--dark)}
.hx-cta .hx-btn:first-child{background:#fff;color:var(--ink)}
/* avis : fond rose pâle, avatars colorés */
.hx-reviews.hx-soft{background:var(--t-pink)}
.hx-review{border:1px solid rgba(255,61,138,.08)}
.hx-review:nth-child(5n+1) .hx-avatar{background:var(--c-violet)}
.hx-review:nth-child(5n+2) .hx-avatar{background:var(--c-pink)}
.hx-review:nth-child(5n+3) .hx-avatar{background:var(--c-cyan)}
.hx-review:nth-child(5n+4) .hx-avatar{background:var(--c-amber);color:var(--ink)}
.hx-review:nth-child(5n+5) .hx-avatar{background:var(--accent)}
/* FAQ : puces + ; blog : lien lire */
.hx-faq__item summary .hx-ico{background:var(--t-violet);color:var(--c-violet)}
.hx-faq__item[open] summary .hx-ico{background:var(--c-violet);color:#fff}
.hx-post__read{color:var(--c-violet)}
.hx-post__meta{color:var(--c-pink)}
/* pied de page : liseré néon */
.hx-footer{border-top:4px solid transparent;border-image:var(--neon) 1}
/* CTA mobile collant : dégradé */
.hx-sticky{background:linear-gradient(90deg,var(--c-violet),#8a3dff)}
@media (max-width:900px){.hx-reviews__track.is-loop .hx-review{width:300px;padding:22px 20px 20px}}
/* garanties sous les tarifs : en slider (retour 01/10), 30 s, pause au survol */
.hx-pricing{overflow:hidden}
.hx-proof.is-loop{--loop:30s;border-top:0;padding-top:0}
.hx-proof.is-loop li{width:260px;flex-shrink:0;margin-right:40px}
/* Rythme vertical (retour 01/10) : un seul token --sub pour l'espace entre un bloc et le bloc suivant d'une même section */
:root{--sub:clamp(32px,4vw,56px)}
.hx-pricing .hx-tiles{padding-bottom:var(--sub);border-bottom:1px solid rgba(107,77,255,.18)}
.hx-proof.is-loop{margin-top:var(--sub)}
.hx-logos__track{margin-top:32px}
.hx-reviews .hx-trustline{margin-top:var(--sub)}
.hx-reviews__track.is-loop{padding:0}
/* sections sombres : texte d'accompagnement en blanc, plus de gris (retour 01/10) */
.hx-dark .hx-lead,.hx-dark .hx-trustline,.hx-cta .hx-lead,.hx-cta .hx-trustline{color:#fff}
/* Plus aucun gris de texte (retour 01/10) : noir sur fond clair, blanc sur fond sombre. Les 3 tokens gris ne servaient qu'au texte. */
:root{--ink-2:var(--ink);--ink-3:var(--ink);--on-dark-2:#fff}
.hx-dark .hx-kicker{color:#9fdcff}
/* réalisations : la couleur du néon rayonne derrière la carte au survol (tactile : carte au centre de l'écran) */
.hx-work{position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.hx-work:hover,.hx-work.is-lit{transform:translateY(-6px);box-shadow:0 30px 90px -18px var(--c),0 0 0 1px color-mix(in srgb,var(--c) 45%,transparent)}
.hx-work figcaption{transition:background .45s var(--ease)}
.hx-work:hover figcaption,.hx-work.is-lit figcaption{background:color-mix(in srgb,var(--c) 12%,var(--soft))}
.hx-work:hover figcaption .hx-kicker,.hx-work.is-lit figcaption .hx-kicker{color:color-mix(in srgb,var(--c) 70%,var(--ink))}
@media (prefers-reduced-motion:reduce){.hx-work,.hx-work figcaption{transition:none}}
/* hero desktop : l'image domine (retour 01/10) : colonne plus large, plus haute, et elle file jusqu'au bord droit de l'écran */
@media (min-width:1100px){
  .hx-hero .hx-wrap{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr);gap:clamp(40px,5vw,80px)}
  .hx-hero__media{margin-right:calc(-1 * ((100vw - min(100vw,var(--wrap))) / 2 + var(--pad)));border-radius:var(--r-card) 0 0 var(--r-card)}
  .hx-hero__media img{aspect-ratio:auto;height:min(78vh,760px);min-height:560px;object-position:center 40%}
}
/* produits : slider pleine largeur qui traverse l'écran (retour 01/10), 14 produits, 70 s, pause au survol ; sans JS : rangée défilable au doigt */
.hx-products{overflow:hidden}
.hx-prod__track{display:flex;gap:var(--gap);padding:0 var(--pad);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.hx-prod__track::-webkit-scrollbar{display:none}
.hx-prod{flex:0 0 280px;scroll-snap-align:start}
.hx-prod__track.is-loop{--loop:70s;overflow:visible;padding-right:0}
.hx-prod__track.is-loop .hx-prod{margin-right:var(--gap)}
@media (max-width:600px){.hx-prod{flex-basis:240px}}

/* ══ Pages intérieures (02/10) ══════════════════════════════════════════ */
/* hero compact de page */
.hx-pagehero{padding:clamp(56px,7vw,96px) 0 clamp(24px,3vw,40px)}
.hx-pagehero__in{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.hx-pagehero__in .hx-lead{max-width:52rem}
.hx-pagehero .hx-h1{max-width:16ch}
/* formulaire */
.hx-contact__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-contact__form .hx-h2{margin-bottom:28px}
.hx-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 16px}
.hx-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.hx-field--wide{grid-column:1/-1}
.hx-field label,.hx-choice legend{font:500 .9rem/1.2 var(--body)}
.hx-req{color:var(--c-pink)}
.hx-field input,.hx-field textarea,.hx-select select{width:100%;min-height:52px;padding:12px 18px;border:1.5px solid var(--line);border-radius:14px;background:#fff;font:400 1rem/1.4 var(--body);color:var(--ink);transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.hx-field textarea{min-height:140px;resize:vertical}
.hx-field input:focus,.hx-field textarea:focus,.hx-select select:focus{outline:0;border-color:var(--c-violet);box-shadow:0 0 0 4px rgba(107,77,255,.15)}
.hx-field input::placeholder,.hx-field textarea::placeholder{color:#8a8f98}
.hx-select{position:relative}
.hx-select select{appearance:none;padding-right:44px}
.hx-select .hx-ico{position:absolute;right:16px;top:50%;width:18px;height:18px;transform:translateY(-50%);pointer-events:none}
.hx-choice{display:block;border:0;padding:0;margin:0}
.hx-choice legend{margin-bottom:10px}
.hx-choice__opt{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 18px;margin:0 10px 0 0;border:1.5px solid var(--line);border-radius:var(--r-pill);cursor:pointer;font:500 .95rem/1 var(--body)}
.hx-choice__opt:has(input:checked){border-color:var(--ink);background:var(--ink);color:#fff}
.hx-choice .hx-choice__opt input{appearance:none;width:16px;height:16px;min-height:0;padding:0;border:1.5px solid currentColor;border-radius:50%;margin:0;background:transparent;box-shadow:none}
.hx-choice__opt input:checked{background:radial-gradient(circle,#fff 40%,transparent 45%)}
.hx-upload{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;border:1.5px dashed var(--line);border-radius:14px;background:var(--soft);text-align:center;cursor:pointer}
.hx-upload input{position:absolute;width:1px;height:1px;opacity:0}
.hx-upload .hx-ico{width:28px;height:28px;color:var(--c-violet)}
.hx-upload strong{font-weight:600}
.hx-upload span{font-size:.85rem}
.hx-form__foot{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap}
.hx-form__note{font-size:.85rem;margin:0}
/* colonne latérale */
.hx-contact__side{display:flex;flex-direction:column;gap:28px;padding:28px;border-radius:var(--r-card);background:var(--t-violet)}
.hx-founder{display:flex;flex-direction:column;gap:16px}
.hx-founder img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}
.hx-founder div{display:flex;flex-direction:column;gap:4px}
.hx-founder strong{font:600 1.1rem/1.2 var(--display)}
.hx-founder p{margin-top:6px}
.hx-founder a{font-weight:600;color:var(--c-violet);text-decoration:underline;text-underline-offset:.15em}
.hx-info{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.hx-info li{display:flex;gap:14px;align-items:center}
.hx-info li div{display:flex;flex-direction:column}
.hx-info span{font-size:.85rem}
.hx-info strong{font-weight:600}
.hx-contact__side .hx-ico--box{background:#fff;color:var(--c-violet)}
.hx-contact__social{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hx-contact__social .hx-kicker{margin:0 6px 0 0}
.hx-contact__social .hx-chip{background:#fff}
.hx-reassure{list-style:none;margin:0;padding:20px 0 0;border-top:1px solid rgba(107,77,255,.2);display:flex;flex-direction:column;gap:10px;font-weight:500}
.hx-reassure li{display:flex;gap:10px;align-items:center}
.hx-reassure .hx-ico{width:18px;height:18px}
.hx-proofonly{padding:40px 0}
.hx-proofonly .hx-proof.is-loop{margin-top:0}
/* clients (contact) */
.hx-clients__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-client{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-client img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-client figcaption{padding:16px 20px;font:600 1rem/1.3 var(--display)}
/* réalisations : chiffres + note */
.hx-stats{padding:8px 0 clamp(24px,3vw,40px)}
.hx-stats__row{list-style:none;margin:0;padding:clamp(24px,3vw,40px) 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-stats__row li{display:flex;flex-direction:column;gap:6px}
.hx-stats__row strong{font:600 clamp(2rem,1.4rem + 2vw,3.2rem)/1 var(--display);letter-spacing:-.03em;background:var(--neon);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-works--page .hx-section__head--split{align-items:start}
.hx-note{max-width:40ch;font-size:.9rem;padding:16px 20px;border-radius:14px;background:var(--t-violet)}
.hx-works--page .hx-works__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.hx-clients__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .hx-contact__grid{grid-template-columns:minmax(0,1fr)}
  .hx-stats__row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hx-note{max-width:none}
}
@media (max-width:600px){.hx-form{grid-template-columns:minmax(0,1fr)}.hx-choice__opt{margin-bottom:10px}}
/* ── néon personnalisé : simulateur (maquette statique) ── */
.hx-sim{background:radial-gradient(50% 60% at 15% 20%,rgba(255,102,178,.25),transparent 60%),radial-gradient(45% 60% at 90% 80%,rgba(107,77,255,.3),transparent 60%),var(--dark)}
.hx-sim__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--gap);align-items:stretch}
.hx-sim__preview{display:flex;flex-direction:column;border-radius:var(--r-card);background:var(--dark-2);border:1px solid var(--on-dark-line);overflow:hidden}
.hx-sim__canvas{flex:1;min-height:360px;display:grid;place-items:center;background:#0b0c0e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M40 0H0v40' fill='none' stroke='%23ffffff12'/%3E%3C/svg%3E")}
.hx-sim__neon{font:600 clamp(2.4rem,5vw,4.5rem)/1 'Dancing Script',cursive;color:#fff;text-shadow:0 0 6px #fff,0 0 18px var(--c),0 0 40px var(--c),0 0 80px var(--c)}
.hx-sim__meta{display:flex;gap:24px;padding:16px 22px;border-top:1px solid var(--on-dark-line);font-size:.9rem}
.hx-sim__meta strong{font-weight:600}
.hx-sim__price{margin-left:auto}
.hx-sim__controls{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:var(--r-card);background:var(--dark-2);border:1px solid var(--on-dark-line)}
.hx-sim__block{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center}
.hx-sim__block > :nth-child(n+3){grid-column:1/-1}
.hx-sim__block--row{display:flex;flex-wrap:wrap;gap:8px 12px;padding-top:6px;border-top:1px solid var(--on-dark-line)}
.hx-sim__n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--c-violet);font:600 .8rem/1 var(--body);color:#fff}
.hx-sim__block textarea{width:100%;min-height:64px;padding:12px 14px;border-radius:12px;border:1px solid var(--on-dark-line);background:rgba(255,255,255,.06);color:#fff;font:400 1rem/1.4 var(--body);resize:none}
.hx-sim__chips{display:flex;flex-wrap:wrap;gap:8px}
.hx-sim .hx-chip.is-on{background:#fff;color:var(--ink)}
.hx-sim__dots{display:flex;flex-wrap:wrap;gap:10px}
.hx-sim__dot{width:28px;height:28px;border-radius:50%;border:2px solid transparent;background:var(--c);box-shadow:0 0 12px var(--c);cursor:pointer}
.hx-sim__dot.is-on{border-color:#fff;transform:scale(1.15)}
.hx-sim__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid var(--on-dark-line)}
.hx-sim__bar div{display:flex;flex-direction:column}
.hx-sim__bar strong{font:600 1.5rem/1.1 var(--display)}
.hx-sim__logo{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:var(--gap);padding:22px 26px;border-radius:var(--r-card);background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-sim__logo strong{font:600 1.15rem/1.2 var(--display)}
.hx-sim__logo p{flex:1;min-width:240px;margin:0}
/* 13 couleurs */
.hx-colors__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
.hx-color{margin:0;border-radius:var(--r-card);overflow:hidden;background:#fff}
.hx-color img{width:100%;aspect-ratio:1;object-fit:cover}
.hx-color figcaption{padding:12px 16px;font:600 .95rem/1.3 var(--display)}
/* supports */
.hx-mounts__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-mount{display:flex;flex-direction:column;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-mount--best{outline:2px solid var(--c-violet);outline-offset:-2px}
.hx-mount__media{position:relative}
.hx-mount__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-chip--best{left:auto;right:14px;background:var(--c-violet);color:#fff}
.hx-mount__body{display:flex;flex-direction:column;gap:10px;padding:22px 24px 26px}
.hx-mount__body .hx-kicker{margin:6px 0 0;font-size:.75rem}
/* colis */
.hx-colis{background:radial-gradient(50% 60% at 85% 10%,rgba(255,178,36,.22),transparent 60%),var(--dark)}
.hx-colis .hx-section__head .hx-lead{margin-top:16px;max-width:60ch}
.hx-colis__hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;margin-bottom:var(--sub)}
.hx-colis__media{margin:0;border-radius:var(--r-card);overflow:hidden}
.hx-colis__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-colis__intro{display:flex;flex-direction:column;gap:16px}
.hx-tiles--dark{list-style:none;margin:0;padding:0}
.hx-tiles--dark .hx-tile{background:var(--dark-2);border:1px solid var(--on-dark-line);position:relative}
.hx-tiles--dark .hx-tile::before{display:none}
.hx-tiles--dark .hx-tile .hx-howstep__n{position:absolute;right:22px;top:22px;color:var(--c-amber)}
.hx-tiles--dark .hx-tile .hx-h4{margin-top:0}
.hx-tiles--dark .hx-tile p{color:#fff}
.hx-colis__note{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:var(--sub);padding:22px 26px;border-radius:var(--r-card);background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-colis__note p{flex:1;min-width:260px;margin:0}
/* maillage */
.hx-mlg .hx-h2{max-width:none}
.hx-mlg__group{display:flex;flex-direction:column;gap:10px;margin-top:28px}
.hx-mlg__pills{display:flex;flex-wrap:wrap;gap:8px}
.hx-mlg .hx-chip{background:#fff}
.hx-mlg .hx-chip.is-on{background:var(--ink);color:#fff}
/* boutique */
.hx-shop{padding-top:16px}
.hx-shop__filters{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.hx-shop__filters .hx-chip{cursor:pointer;border:0;min-height:40px;padding:0 16px}
.hx-shop__filters .hx-chip span{margin-left:8px;opacity:.6;font-weight:500}
.hx-shop__filters .hx-chip.is-on{background:var(--ink);color:#fff}
.hx-shop__count{margin:16px 0 20px;font-size:.9rem}
.hx-shop__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.hx-shop__grid .hx-prod{flex:none}
.hx-shop__empty{margin:32px 0;text-align:center}
@media (max-width:1100px){.hx-colors__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hx-shop__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.hx-sim__grid,.hx-colis__hero{grid-template-columns:minmax(0,1fr)}.hx-mounts__grid{grid-template-columns:minmax(0,1fr)}.hx-shop__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.hx-colors__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* galerie d'exemples (néon personnalisé) : slider pleine largeur */
.hx-how{overflow:hidden}
.hx-gallery{display:flex;gap:var(--gap);padding:var(--sub) var(--pad) 0;overflow-x:auto;scrollbar-width:none}
.hx-gallery img{flex:0 0 360px;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-card)}
.hx-gallery.is-loop{--loop:55s;overflow:visible;padding-right:0;gap:0}
.hx-gallery.is-loop img{margin-right:var(--gap)}
@media (max-width:600px){.hx-gallery img{flex-basis:260px}}
/* ── néon sur mesure ── */
.hx-whys__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-why{display:flex;flex-direction:column;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-why img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-why div{display:flex;flex-direction:column;gap:8px;padding:22px 24px 26px}
.hx-devis{background:var(--t-violet)}
.hx-devis__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-devis__head{position:sticky;top:100px;display:flex;flex-direction:column;gap:16px}
.hx-devis__head .hx-reassure{border-top:0;padding-top:8px}
.hx-form--card{padding:28px;border-radius:var(--r-card);background:#fff}
.hx-form__req{grid-column:1/-1;margin:0;font-size:.8rem}
.hx-pricing.hx-proofonly:not(.hx-soft){border-bottom:1px solid var(--line)}
.hx-sectors__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
.hx-sector{display:flex;flex-direction:column;gap:12px;padding:26px 22px;border-radius:var(--r-card);background:var(--soft);color:var(--ink);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.hx-sector:hover{transform:translateY(-4px);box-shadow:0 24px 60px -24px rgba(19,21,23,.35)}
.hx-sector__l{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;font:600 1.1rem/1 var(--display);color:#fff;background:var(--c-violet)}
.hx-sector[data-c=pink] .hx-sector__l{background:var(--c-pink)}.hx-sector[data-c=cyan] .hx-sector__l{background:var(--c-cyan)}.hx-sector[data-c=amber] .hx-sector__l{background:var(--c-amber);color:var(--ink)}.hx-sector[data-c=green] .hx-sector__l{background:var(--accent)}
.hx-sector p{font-size:.95rem;flex:1}
.hx-sector__cta{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.9rem}
.hx-sector__cta .hx-ico{width:16px;height:16px}
.hx-guide{display:grid;grid-template-columns:auto 1fr auto;gap:8px 28px;align-items:center;margin-top:var(--sub);padding:26px 30px;border-radius:var(--r-card);background:var(--dark);color:#fff}
.hx-guide .hx-kicker{grid-column:1/-1;margin:0;color:#9fdcff}
.hx-guide strong{font:600 1.25rem/1.2 var(--display)}
.hx-guide > span:nth-child(3){font-size:.95rem}
.hx-sectors__more{margin-top:var(--sub);max-width:none}
.hx-laws__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap)}
.hx-law{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:var(--r-card);background:var(--t-cyan)}
.hx-law a{text-decoration:underline;text-underline-offset:.15em}
.hx-port__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--gap)}
.hx-situ{margin:0;position:relative;grid-column:span 2;border-radius:var(--r-card);overflow:hidden}
.hx-situ--lg{grid-column:span 3}
.hx-situ img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-situ figcaption{position:absolute;left:16px;bottom:16px;padding:8px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.92);color:var(--ink);font:600 .85rem/1 var(--body)}
.hx-faq__head .hx-actions{margin-top:20px}
@media (max-width:1100px){.hx-sectors__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hx-port__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hx-situ,.hx-situ--lg{grid-column:span 1}}
@media (max-width:900px){.hx-whys__grid,.hx-devis__grid,.hx-laws__grid{grid-template-columns:minmax(0,1fr)}.hx-devis__head{position:static}.hx-sectors__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hx-guide{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.hx-sectors__grid,.hx-port__grid{grid-template-columns:minmax(0,1fr)}.hx-form--card{padding:20px}}
/* cartes produit : couleurs disponibles + dimensions (retour 02/10) */
.hx-prod__colors{display:inline-flex;align-items:center;gap:4px;margin-top:4px}
.hx-prod__colors i{width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.hx-prod__colors span{margin-left:6px;font-size:.78rem}
.hx-prod__dims{font-size:.82rem}
.hx-section__head > .hx-lead{margin-top:14px}
.hx-prod__colors{flex-wrap:nowrap}
.hx-prod__colors span{white-space:nowrap}
/* H1 longs (néon personnalisé, sur mesure) : le mot souligné peut passer à la ligne, plus de chevauchement sur l'image */
.hx-h1 span{white-space:normal}
.hx-hero__copy{min-width:0}
.hx-h1{overflow-wrap:anywhere}
/* heros des pages intérieures : H1 longs, un cran plus petits, et jamais de débordement sur l'image */
.hx-hero--page .hx-h1{font-size:clamp(2.1rem,1.2rem + 2.4vw,3.4rem)}
.hx-hero__copy{overflow-wrap:anywhere}
@media (min-width:1100px){.hx-hero--page .hx-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}
/* marquee : piste sans padding, collée au bord gauche de l'écran (plus de trou au début de chaque tour) */
.hx-marquee.is-loop{padding:0!important}
.hx-wrap > .hx-marquee.is-loop{margin-left:calc(-1 * ((100vw - min(100vw, var(--wrap))) / 2 + var(--pad)))}
.hx-topbar__in.is-loop{margin-left:0}
@media (min-width:769px){.hx-topbar__in.is-loop{padding:0 var(--pad)!important}}
.hx-prod__track.is-loop,.hx-gallery.is-loop{margin-left:0}
.hx-gallery.is-loop{padding-top:var(--sub)!important}

/* ── CSS d'origine du simulateur (helioneon.com/neon-personnalise, relevé 02/10, media queries conservées) ── */
.sim-wrapper,
.sim-wrapper *,
.sim-wrapper *::before,
.sim-wrapper *::after{margin: 0; padding: 0; box-sizing: border-box;}
.sim-wrapper{display: flex;
  min-height: 100vh;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  font-family: 'Inter', sans-serif;}
.sim-preview{flex: 1;
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background: radial-gradient(ellipse at center, #12121E 0%, #0A0A12 100%);
  overflow: hidden;}
.sim-preview-header{padding: 20px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 2;}
.sim-logo{font-size: 16px; font-weight: 700; color: var(--blanc); letter-spacing: 1.5px;}
.sim-logo span{color: var(--gold);}
.sim-preview-actions{display: flex; gap: 8px;}
.sim-preview-btn{padding: 8px 16px; font-size: 12px; font-weight: 600; font-family: 'Inter', sans-serif;
  border-radius: var(--radius-sm); border: 1px solid var(--bordure-dark);
  background: rgba(255,255,255,0.04); color: var(--gris-500); cursor: pointer; transition: all 0.2s;}
.sim-preview-btn:hover{border-color: var(--gold-border); color: var(--gold); background: var(--gold-bg);}
.sim-neon-wrap.draggable{cursor: grab; user-select: none;}
.sim-neon-wrap.dragging{cursor: grabbing;}
.sim-preview-canvas{flex: 1; display: flex; align-items: center; justify-content: center;
  padding: 40px; position: relative; overflow: hidden;}
.sim-neon-wrap{width: 85%; height: 80%; display: flex; align-items: center; justify-content: center;}
.sim-neon-text{font-size: clamp(28px, 5vw, 72px); font-weight: 700; text-align: center;
  white-space: pre; line-height: 1.3;
  transition: font-family 0.3s, color 0.3s, text-shadow 0.3s;
  animation: neonPulse 3s ease-in-out infinite alternate;}
.sim-neon-text.rgb-active{animation: rgbCycle 4s linear infinite !important;}
.sim-neon-placeholder{font-size: 18px; color: var(--gris-500); font-weight: 400;}
.sim-preview-dims{position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%);
  display: flex; align-items: center; gap: 16px; padding: 10px 20px;
  background: rgba(20,20,31,0.85); backdrop-filter: blur(8px);
  border: 1px solid var(--bordure-dark); border-radius: 24px;
  font-size: 13px; font-weight: 500; color: var(--gris-500); z-index: 10;}
.sim-preview-dims strong{color: var(--blanc); font-weight: 600;}
.sim-split-notice{color: var(--gold); font-size: 11px; font-weight: 600; white-space: nowrap;}
.sim-dim-sep{width: 1px; height: 16px; background: var(--bordure-dark);}
.sim-preview-price{font-size: 22px; font-weight: 700; color: var(--blanc);
  text-shadow: 0 2px 8px rgba(0,0,0,0.5);}
.sim-controls{width: 520px; min-width: 520px; height: 100vh; position: sticky; top: 0;
  background: var(--blanc); color: var(--gris-700);
  overflow-y: auto; overflow-x: hidden;}
.sim-controls-inner{padding: 32px 28px 28px;}
.sim-section{margin-bottom: 32px;}
.sim-section-title{font-size: 14px; font-weight: 700; color: var(--noir); text-transform: uppercase;
  letter-spacing: 1.5px; margin-bottom: 14px; display: flex; align-items: center; gap: 8px;}
.sim-section-title .num{width: 24px; height: 24px; background: var(--gold); color: var(--blanc);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 700;}
.sim-section-sub{font-size: 13px; color: var(--gris-500); margin-bottom: 12px; line-height: 1.5;}
.sim-divider{height: 1px; background: var(--gris-200); margin: 28px 0;}
.sim-textarea{width: 100%; padding: 14px 16px; border: 1.5px solid var(--gris-200); border-radius: var(--radius);
  font-size: 16px; font-family: 'Inter', sans-serif; color: var(--noir);
  resize: none; min-height: 80px; transition: border-color 0.2s; line-height: 1.5;}
.sim-textarea:focus{outline: none; border-color: var(--gold); box-shadow: 0 0 0 3px var(--gold-bg);}
.sim-textarea::placeholder{color: var(--gris-300);}
.sim-textarea-hint{font-size: 11px; color: var(--gris-500); margin-top: 6px;}
.sim-fonts-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;}
.sim-font-card{display: flex; flex-direction: column; align-items: center; gap: 6px;}
.sim-font-btn{display: flex; align-items: center; justify-content: center; width: 100%;
  height: 64px; padding: 10px 8px; border: 1.5px solid var(--gris-200); border-radius: var(--radius-sm);
  background: var(--blanc); cursor: pointer; transition: all 0.2s; position: relative; overflow: hidden;}
.sim-font-btn:hover{border-color: var(--gold-border); background: var(--gold-bg);}
.sim-font-btn.active{border-color: var(--gold); background: var(--gold-bg); box-shadow: 0 0 0 3px rgba(209,173,97,0.1);}
.sim-font-btn .font-preview{font-size: 18px; color: var(--noir); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 1.2;}
.sim-font-btn .badge-pop{position: absolute; top: 4px; right: 4px; font-size: 7px; font-weight: 700;
  color: var(--gold); background: var(--gold-bg); border: 1px solid var(--gold-border);
  padding: 1px 5px; border-radius: 4px; text-transform: uppercase; letter-spacing: 0.5px; font-family: 'Inter', sans-serif;}
.sim-font-label{font-size: 10px; color: var(--gris-500); font-weight: 600; font-family: 'Inter', sans-serif;}
.sim-font-filters{display: none;}
.sim-font-dropdown{display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px; border: 1.5px solid var(--gold); border-radius: var(--radius-sm);
  background: var(--gold); cursor: pointer; transition: all 0.2s; margin-bottom: 10px;}
.sim-font-dropdown-label{font-size: 18px; color: var(--blanc); font-weight: 700; overflow: hidden;
  text-overflow: ellipsis; white-space: nowrap; flex: 1;}
.sim-font-dropdown-chevron{width: 20px; height: 20px; color: var(--blanc); transition: transform 0.3s;
  display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 700;}
.sim-font-dropdown-chevron.open{transform: rotate(180deg);}
.sim-fonts-grid.collapsed{display: none;}
.sim-colors-grid{display: flex; flex-wrap: wrap; gap: 10px;}
.sim-color-btn{width: 38px; height: 38px; border-radius: 50%; border: 3px solid transparent;
  cursor: pointer; transition: all 0.2s; position: relative;}
.sim-color-btn:hover{transform: scale(1.15);}
.sim-color-btn{outline:1px solid rgba(19,21,23,.25);outline-offset:-1px}
.sim-wrapper.fullscreen{overflow:hidden}
.sim-color-btn.active{border-color: var(--gold); transform: scale(1.15); box-shadow: 0 0 16px var(--glow-color, rgba(255,255,255,0.3));}
.sim-color-btn .tooltip{position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%);
  background: var(--noir); color: var(--blanc); font-size: 11px; font-weight: 500;
  padding: 4px 10px; border-radius: 6px; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity 0.2s;}
.sim-color-btn:hover .tooltip{opacity: 1;}
.sim-color-rgb{background: conic-gradient(#ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000);}
.sim-sizes-grid{display: flex; gap: 8px; flex-wrap: wrap;}
.sim-size-btn{flex: 1; min-width: 70px; padding: 14px 8px; border: 1.5px solid var(--gris-200);
  border-radius: var(--radius-sm); background: var(--blanc); text-align: center; cursor: pointer; transition: all 0.2s; position: relative;}
.sim-size-btn:hover{border-color: var(--gold-border); background: var(--gold-bg);}
.sim-size-btn.active{border-color: var(--gold); background: var(--gold-bg);}
.sim-size-btn .size-label{font-size: 16px; font-weight: 700; color: var(--noir); display: block;}
.sim-size-btn .size-desc{font-size: 11px; color: var(--gris-500); margin-top: 2px; display: block;}
.sim-size-btn .badge-pop{position: absolute; top: -8px; right: -4px; font-size: 8px; font-weight: 700;
  color: var(--blanc); background: var(--gold); padding: 2px 6px; border-radius: 4px;
  text-transform: uppercase; font-family: 'Inter', sans-serif;}
.sim-custom-size{display: none; flex-direction: column; gap: 10px; margin-top: 14px;}
.sim-custom-size.visible{display: flex;}
.sim-slider-label{display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: var(--gris-500); font-weight: 500;}
.sim-slider-value{font-size: 14px; font-weight: 700; color: var(--noir);}
.sim-slider-dims{font-size: 12px; color: var(--gris-500); text-align: center; margin-top: 2px;}
.sim-slider-dims strong{color: var(--noir); font-weight: 600;}
.sim-slider-notice{font-size: 11px; color: var(--gris-500); margin-top: 6px; line-height: 1.4;}
input[type="range"].sim-range{-webkit-appearance: none; appearance: none; width: 100%; height: 6px;
  background: var(--gris-200); border-radius: 3px; outline: none; cursor: pointer;}
input[type="range"].sim-range::-webkit-slider-thumb{-webkit-appearance: none; appearance: none; width: 22px; height: 22px;
  background: var(--gold); border-radius: 50%; cursor: grab; border: 3px solid var(--blanc);
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);}
input[type="range"].sim-range::-moz-range-thumb{width: 22px; height: 22px; background: var(--gold); border-radius: 50%;
  cursor: grab; border: 3px solid var(--blanc); box-shadow: 0 2px 6px rgba(0,0,0,0.15);}
.sim-supports-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding-top: 12px;}
.sim-support-card{display: flex; flex-direction: column; align-items: center; position: relative;}
.sim-support-btn{padding: 0; border: 1.5px solid var(--gris-200); border-radius: var(--radius);
  background: var(--blanc); cursor: pointer; transition: all 0.2s; text-align: center;
  overflow: hidden; position: relative; width: 100%;
  display: flex; flex-direction: column;}
.sim-support-btn:hover{border-color: var(--gold-border);}
.sim-support-btn.active{border-color: var(--gold); box-shadow: 0 0 0 3px rgba(209,173,97,0.1);}
.sim-support-btn .support-photo{width: 100%; height: 120px; object-fit: cover; display: block;}
.sim-support-btn .support-info{padding: 10px 8px 12px; flex: 1; display: flex; flex-direction: column;}
.sim-support-btn .support-name{font-size: 12px; font-weight: 700; color: var(--noir); margin-bottom: 4px; line-height: 1.3;}
.sim-support-btn .support-desc{font-size: 10px; color: var(--gris-500); line-height: 1.4; margin-bottom: 6px; flex: 1;}
.sim-support-btn.popular{border-color: var(--gold); border-width: 2px;}
.sim-support-btn .support-badge{display: inline-block; font-size: 9px; font-weight: 700; color: var(--gold);
  background: var(--gold-bg); border: 1px solid var(--gold-border);
  padding: 3px 8px; border-radius: 4px; text-transform: uppercase;}
.sim-support-card .support-top-badge{position: absolute; top: -10px; left: 50%; transform: translateX(-50%);
  font-size: 9px; font-weight: 700; color: var(--blanc); background: var(--gold);
  padding: 3px 12px; border-radius: 10px; text-transform: uppercase;
  letter-spacing: 0.5px; font-family: 'Inter', sans-serif; white-space: nowrap; z-index: 2;}
.sim-support-btn .support-price{font-size: 10px; font-weight: 600; color: var(--gold); margin-top: 4px;}
.sim-zoom-link{font-size: 10px; color: var(--gold); cursor: pointer; font-weight: 600;
  font-family: 'Inter', sans-serif; margin-top: 6px; transition: opacity 0.2s; opacity: 0.7;}
.sim-zoom-link:hover{opacity: 1; text-decoration: underline;}
.sim-acrylic-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;}
.sim-acrylic-card{display: flex; flex-direction: column; align-items: center; position: relative;}
.sim-acrylic-btn{padding: 0; border: 1.5px solid var(--gris-200); border-radius: var(--radius-sm);
  background: var(--blanc); cursor: pointer; transition: all 0.2s; text-align: center;
  overflow: hidden; width: 100%;}
.sim-acrylic-btn:hover{border-color: var(--gold-border);}
.sim-acrylic-btn.active{border-color: var(--gold); box-shadow: 0 0 0 3px rgba(209,173,97,0.1);}
.sim-acrylic-btn.popular{border-color: var(--gold); border-width: 2px;}
.sim-acrylic-btn .acrylic-photo{width: 100%; height: 90px; object-fit: cover; display: block;}
.sim-acrylic-btn .acrylic-info{padding: 8px 6px;}
.sim-acrylic-name{font-size: 11px; font-weight: 700; color: var(--gris-700); line-height: 1.2; padding: 6px 4px 2px;}
.sim-acrylic-price{font-size: 10px; color: var(--gold); font-weight: 600; padding-bottom: 6px;}
.sim-acrylic-card .acrylic-top-badge{position: absolute; top: -10px; left: 50%; transform: translateX(-50%);
  font-size: 8px; font-weight: 700; color: var(--blanc); background: var(--gold);
  padding: 2px 10px; border-radius: 10px; text-transform: uppercase;
  letter-spacing: 0.5px; font-family: 'Inter', sans-serif; white-space: nowrap; z-index: 2;}
.sim-example-link{display: inline-flex; align-items: center; justify-content: center; gap: 4px;
  font-size: 10px; font-weight: 700; font-family: 'Inter', sans-serif;
  color: var(--gold); cursor: pointer; margin-top: 6px;
  background: var(--gold-bg); border: 1px solid var(--gold-border);
  padding: 4px 10px; border-radius: 4px; transition: all 0.2s;
  text-transform: uppercase; letter-spacing: 0.3px; width: 100%;}
.sim-example-link:hover{background: rgba(209,173,97,0.2); border-color: var(--gold);}
.sim-example-link svg{width: 12px; height: 12px;}
.sim-lightbox{display: none; position: fixed; inset: 0; z-index: 10000;
  background: rgba(0,0,0,0.82); align-items: center; justify-content: center; padding: 24px; cursor: pointer;}
.sim-lightbox.open{display: flex;}
.sim-lightbox-inner{position: relative; max-width: 700px; max-height: 85vh; cursor: default;}
.sim-lightbox-inner img{max-width: 100%; max-height: 80vh; border-radius: 12px; box-shadow: 0 8px 40px rgba(0,0,0,0.5); display: block;}
.sim-lightbox-caption{text-align: center; color: #fff; font-size: 14px; font-weight: 600; margin-top: 12px; font-family: 'Inter', sans-serif;}
.sim-lightbox-close{position: absolute; top: -14px; right: -14px; width: 32px; height: 32px; border-radius: 50%;
  background: #fff; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center;
  font-size: 18px; color: #333; box-shadow: 0 2px 8px rgba(0,0,0,0.3);}
.sim-lightbox-close:hover{background: #f0f0f0;}
.sim-toggle-wrap{display: flex; border: 1.5px solid var(--gris-200); border-radius: var(--radius-sm); overflow: hidden;}
.sim-toggle-btn{flex: 1; padding: 14px; font-size: 13px; font-weight: 600; font-family: 'Inter', sans-serif;
  text-align: center; cursor: pointer; background: var(--blanc); color: var(--gris-500); border: none; transition: all 0.2s;}
.sim-toggle-btn.active{background: var(--noir); color: var(--blanc);}
.sim-toggle-btn .toggle-price{font-size: 11px; font-weight: 400; color: var(--gold); display: block; margin-top: 2px;}
.sim-logo-cta{display: flex; gap: 16px; padding: 24px; background: var(--noir); border-radius: var(--radius); align-items: flex-start;}
.sim-logo-cta-icon{width: 44px; height: 44px; min-width: 44px; background: var(--gold-bg);
  border: 1px solid var(--gold-border); border-radius: 50%;
  display: flex; align-items: center; justify-content: center; font-size: 20px; color: var(--gold);}
.sim-logo-cta-content{flex: 1;}
.sim-logo-cta-title{font-size: 15px; font-weight: 700; color: var(--blanc); margin-bottom: 6px;}
.sim-logo-cta-desc{font-size: 13px; color: var(--gris-500); line-height: 1.5; margin-bottom: 14px;}
.sim-logo-cta-btn{display: inline-block; padding: 10px 22px; background: var(--gold); color: var(--blanc);
  font-size: 12px; font-weight: 700; font-family: 'Inter', sans-serif; text-transform: uppercase;
  letter-spacing: 0.8px; text-decoration: none; border-radius: var(--radius-sm); transition: all 0.2s;}
.sim-logo-cta-btn:hover{background: var(--gold-hover); transform: translateY(-1px); box-shadow: 0 4px 16px rgba(209,173,97,0.3);}
.sim-price-bar{position: sticky; bottom: 0; background: var(--gold);
  padding: 16px 28px; z-index: 100;
  border-radius: 0;}
.sim-price-row{display: flex; align-items: center; justify-content: space-between;}
.sim-price-info{display: flex; align-items: center; gap: 16px;}
.sim-price-amount{font-size: 28px; font-weight: 700; color: var(--blanc); line-height: 1;}
.sim-price-dims-inline{display: flex; flex-direction: column; gap: 1px;}
.sim-price-dims-inline span{font-size: 11px; color: rgba(255,255,255,0.8); font-weight: 500;}
.sim-price-dims-inline strong{color: var(--blanc); font-weight: 600;}
.sim-price-label{font-size: 10px; color: rgba(255,255,255,0.7); font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px;}
.sim-price-ttc{display: none;}
.sim-price-amount-wrap{display: flex; flex-direction: column; gap: 2px;}
.sim-price-old{font-size: 14px; color: rgba(255,255,255,0.6); text-decoration: line-through; font-weight: 500;}
.sim-price-badge{display: inline-block; font-size: 11px; font-weight: 700; color: #fff; background: #e53e3e; padding: 2px 8px; border-radius: 10px; align-self: flex-start;}
.sim-preview-price-wrap{position: absolute; bottom: 20px; left: 28px; z-index: 10; font-family: 'Inter', sans-serif;}
.sim-preview-price-old{font-size: 14px; color: rgba(255,255,255,0.5); text-decoration: line-through; display: block; margin-bottom: 2px;}
.sim-price-cta{padding: 14px 28px; background: var(--noir); color: var(--blanc);
  font-size: 12px; font-weight: 700; font-family: 'Inter', sans-serif; text-transform: uppercase;
  letter-spacing: 1px; border: none; border-radius: var(--radius-sm); cursor: pointer;
  transition: all 0.2s; box-shadow: 0 4px 16px rgba(0,0,0,0.2);}
.sim-price-cta:hover{background: #1a1a2e; transform: translateY(-1px); box-shadow: 0 6px 24px rgba(0,0,0,0.3);}
.sim-price-cta:disabled{opacity: 0.5; cursor: wait; transform: none;}
.sim-cta-loading{background: #1a1a2e !important;}
.sim-cta-spinner{display: inline-block; width: 14px; height: 14px; border: 2px solid rgba(255,255,255,0.3);
  border-top-color: #fff; border-radius: 50%; animation: ctaSpin 0.6s linear infinite;
  vertical-align: middle; margin-right: 6px;}
.sim-fullscreen-btn{display: block; position: absolute; top: 12px; right: 12px; z-index: 51;
  padding: 7px 14px; background: rgba(255,255,255,0.15); backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.2); color: var(--blanc);
  font-size: 11px; font-weight: 700; font-family: 'Inter', sans-serif;
  text-transform: uppercase; letter-spacing: 0.5px;
  border-radius: var(--radius-sm); cursor: pointer;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2); transition: all 0.2s;}
.sim-fullscreen-btn:hover{background: rgba(255,255,255,0.25);}
.sim-fullscreen-close{display: none; position: absolute; top: 12px; right: 12px; z-index: 10001;
  width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.25); color: var(--blanc);
  font-size: 18px; cursor: pointer; align-items: center; justify-content: center;
  backdrop-filter: blur(4px); transition: all 0.2s;}
.sim-fullscreen-close:hover{background: rgba(255,255,255,0.25);}
.sim-wrapper.fullscreen{position: fixed !important; inset: 0; z-index: 10000;
  width: 100vw !important; height: 100vh !important;
  max-width: 100vw !important; margin: 0 !important;
  flex-direction: row;}
.sim-wrapper.fullscreen .sim-preview{flex: 1; height: 100vh !important; position: relative;}
.sim-wrapper.fullscreen .sim-controls{width: 520px; min-width: 520px; height: 100vh;
  position: relative; overflow-y: auto;}
.sim-wrapper.fullscreen .sim-fullscreen-close{display: flex;}
.sim-wrapper.fullscreen .sim-fullscreen-btn{display: none;}
body.sim-fullscreen-active{overflow: hidden !important;}
.hn-color-photos{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;}
.hn-color-photos li{margin: 0;}
.hn-color-photos figure{margin: 0; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; overflow: hidden; transition: transform .3s, border-color .3s;}
.hn-color-photos figure:hover{transform: translateY(-4px); border-color: rgba(201,169,110,0.5);}
.hn-color-photos img{display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover;}
.hn-color-photos figcaption{padding: 12px 10px 14px; text-align: center; color: #FFFFFF; font-family: 'Sora', 'Inter', sans-serif; font-weight: 600; font-size: var(--hn-fs-5); line-height: 1.3;}
@media (max-width: 900px) {.sim-wrapper{flex-direction: column;
    height: 100vh; height: 100svh;
    overflow: hidden;}.sim-preview{flex: none; position: relative;
    height: 90vw; min-height: 300px; max-height: 55svh;
    z-index: 50;}.sim-controls{flex: 1; width: 100%; min-width: unset;
    overflow-y: auto; position: relative;
    display: flex; flex-direction: column;}.sim-controls-inner{flex: 1; padding-bottom: 10px;}.sim-price-bar{flex-shrink: 0; width: 100%; border-radius: 0; z-index: 100; position: relative;}.sim-preview-canvas{padding: 10px;}.sim-neon-text{font-size: clamp(36px, 11.8vw, 81px);}.sim-preview-dims{bottom: 10px; padding: 8px 14px; font-size: 11px; gap: 10px;}.sim-wrapper.fullscreen{flex-direction: column;}.sim-wrapper.fullscreen .sim-preview{height: 40vh !important; min-height: 200px; max-height: 45vh;}.sim-wrapper.fullscreen .sim-controls{width: 100%; min-width: unset; flex: 1;}}
@media (max-width: 480px) {.sim-controls-inner{padding: 24px 16px 90px;}.sim-fonts-grid{grid-template-columns: repeat(2, 1fr); gap: 6px;}.sim-font-btn{height: 52px;}.sim-font-btn .font-preview{font-size: 14px;}.sim-supports-grid{grid-template-columns: repeat(2, 1fr);}.sim-sizes-grid{gap: 6px;}.sim-size-btn{min-width: 56px; padding: 12px 6px;}.sim-price-cta{padding: 12px 20px; font-size: 11px;}.sim-price-amount{font-size: 22px;}.sim-preview{height: 100vw; min-height: 250px; max-height: 55vh;}.sim-acrylic-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 1024px) {.hn-color-photos{grid-template-columns: repeat(3, 1fr); gap: 16px;}}
@media (max-width: 640px) {.hn-color-photos{grid-template-columns: repeat(2, 1fr); gap: 12px;}.hn-color-photos figcaption{font-size: var(--hn-fs-6); padding: 10px 6px 12px;}}

/* ══ Simulateur : composant existant (sim.js + sim.css d'origine) habillé dans la DA ══ */
.hx-sim .sim-wrapper{
  --gold:var(--c-violet);--gold-bg:rgba(107,77,255,.12);--gold-border:rgba(107,77,255,.45);--gold-hover:#5a3df0;
  --noir:#131517;--blanc:#fff;--gris-200:#e4e5e8;--gris-300:#8a8f98;--gris-500:#131517;--gris-700:#131517;
  --bordure-dark:rgba(255,255,255,.14);--radius:16px;--radius-sm:12px;
  width:100%!important;height:auto!important;min-height:0;border-radius:var(--r-card);overflow:hidden;
  font-family:var(--body);background:var(--dark-2);border:1px solid var(--on-dark-line)}
.hx-sim .sim-wrapper{margin-left:0!important;max-width:100%!important;flex-direction:row;overflow:hidden}
.hx-sim .sim-preview{position:relative!important;top:auto;flex:1;height:auto!important;max-height:none!important;min-height:560px;background:radial-gradient(60% 50% at 50% 45%,rgba(107,77,255,.18),transparent 70%),#0b0c0e}
.hx-sim .sim-controls{position:static!important;height:auto!important;max-height:none;overflow:visible!important;width:520px;min-width:520px;background:#fff;color:var(--ink)}
.hx-sim .sim-controls-inner{padding:28px 26px}
.hx-sim .sim-section-title{font:600 1rem/1.2 var(--display);color:var(--ink)}
.hx-sim .sim-section-title .num{background:var(--c-violet);color:#fff;font-family:var(--body)}
.hx-sim .sim-section-sub,.hx-sim .sim-textarea-hint,.hx-sim .sim-slider-notice,.hx-sim .sim-font-label{color:var(--ink)}
.hx-sim .sim-textarea{font-family:var(--body);border-radius:14px;min-height:72px}
.hx-sim .sim-textarea:focus{border-color:var(--c-violet);box-shadow:0 0 0 4px rgba(107,77,255,.15)}
.hx-sim .sim-font-dropdown{background:var(--ink);border-color:var(--ink);border-radius:14px}
.hx-sim .sim-font-btn,.hx-sim .sim-size-btn,.hx-sim .sim-support-btn,.hx-sim .sim-acrylic-btn,.hx-sim .sim-toggle-wrap{border-radius:14px}
.hx-sim .sim-font-btn.active,.hx-sim .sim-size-btn.active,.hx-sim .sim-support-btn.active,.hx-sim .sim-acrylic-btn.active{border-color:var(--c-violet);background:var(--t-violet);box-shadow:0 0 0 3px rgba(107,77,255,.12)}
.hx-sim .sim-size-btn .badge-pop,.hx-sim .sim-support-card .support-top-badge,.hx-sim .sim-acrylic-card .acrylic-top-badge{background:var(--c-pink);border-radius:999px}
.hx-sim .sim-font-btn .badge-pop,.hx-sim .sim-support-btn .support-badge{color:var(--c-violet);background:var(--t-violet);border-color:transparent;border-radius:999px}
.hx-sim .sim-color-btn.active{border-color:#fff;box-shadow:0 0 0 2px var(--ink),0 0 16px var(--glow-color,rgba(255,255,255,.5))}
.hx-sim .sim-toggle-btn{font-family:var(--body)}
.hx-sim .sim-toggle-btn.active{background:var(--ink)}
.hx-sim .sim-example-link,.hx-sim .sim-zoom-link{color:var(--c-violet);background:var(--t-violet);border-color:transparent;border-radius:999px}
.hx-sim .sim-preview-btn,.hx-sim .sim-fullscreen-btn{border-radius:999px;font-family:var(--body);color:#fff;border-color:rgba(255,255,255,.25)}
.hx-sim .sim-preview-btn:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.12)}
.hx-sim .sim-preview-dims{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);border-radius:999px}
.hx-sim .sim-split-notice{color:var(--c-amber)}
.hx-sim .sim-price-bar{background:var(--ink);border-radius:0}
.hx-sim .sim-price-amount{font:600 1.75rem/1 var(--display);color:#fff}
.hx-sim .sim-price-label,.hx-sim .sim-price-dims-inline span{color:rgba(255,255,255,.75)}
.hx-sim .sim-price-cta{background:#fff;color:var(--ink);border-radius:999px;font:600 .95rem/1 var(--body);padding:16px 26px;box-shadow:none}
.hx-sim .sim-price-cta:hover{background:var(--c-violet);color:#fff;box-shadow:none}
.hx-sim .sim-cta-loading{background:var(--c-violet)!important}
.hx-sim .sim-logo-cta{background:var(--t-violet);color:var(--ink);border-radius:var(--r-card)}
.hx-sim .sim-logo-cta-icon{background:#fff;border-color:transparent;color:var(--c-violet)}
.hx-sim .sim-logo-cta-title{color:var(--ink);font:600 1.1rem/1.2 var(--display)}
.hx-sim .sim-logo-cta-desc{color:var(--ink)}
.hx-sim .sim-logo-cta-btn{background:var(--ink);color:#fff;border-radius:999px;font:600 .9rem/1 var(--body);padding:12px 22px}
.hx-sim .sim-logo-cta-btn:hover{background:var(--c-violet);box-shadow:none}
.hx-sim input[type="range"].sim-range::-webkit-slider-thumb{background:var(--c-violet)}
.hx-sim input[type="range"].sim-range::-moz-range-thumb{background:var(--c-violet)}
.hx-sim .sim-price-badge{background:var(--c-pink);border-radius:999px}
@media (max-width:900px){.hx-sim .sim-wrapper{flex-direction:column;height:auto!important;overflow:visible}.hx-sim .sim-controls{width:100%;min-width:0}.hx-sim .sim-preview{min-height:380px;height:auto!important;max-height:none!important}.hx-sim .sim-price-bar{position:sticky;bottom:0}}
/* vitesses de défilement (px/s), lentes et régulières */
.hx-marquee{--speed:40px}
.hx-logos__track{--speed:35px}
.hx-proof{--speed:30px}
.hx-reviews__track{--speed:30px}
.hx-prod__track{--speed:35px}
.hx-gallery{--speed:35px}
.hx-topbar__in{--speed:30px}
/* 13 couleurs : la couleur du néon est projetée derrière la carte (retour 02/10), plus forte au survol */
.hx-colors__grid{gap:clamp(24px,3vw,40px)}
.hx-color{position:relative;box-shadow:0 18px 50px -14px var(--c),0 0 0 1px color-mix(in srgb,var(--c) 35%,transparent);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.hx-color:hover{transform:translateY(-6px);box-shadow:0 30px 80px -14px var(--c),0 0 40px -6px var(--c),0 0 0 1px color-mix(in srgb,var(--c) 60%,transparent)}
.hx-color figcaption{background:color-mix(in srgb,var(--c) 14%,#fff)}
.hx-client figcaption{display:flex;flex-direction:column;gap:4px}
.hx-client figcaption .hx-kicker{margin:0;font-size:.75rem;color:var(--c-pink)}
.hx-colis__media img{aspect-ratio:1;background:#0b0c0e}
.hx-hero__media picture{display:block}

/* ══ Composants génériques des pages enfants (auto.py) ══ */
.hx-crumbs{font-size:.85rem;padding:14px 0 0}
.hx-crumbs .hx-wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hx-crumbs a{text-decoration:underline;text-underline-offset:.15em}
.hx-crumbs i{font-style:normal;opacity:.5}
.hx-auto .hx-wrap > *+*{margin-top:clamp(18px,2.4vw,28px)}
.hx-auto .hx-wrap > .hx-kicker{margin-bottom:0}
.hx-auto .hx-wrap > .hx-kicker + .hx-h2{margin-top:12px}
.hx-auto .hx-wrap > .hx-h2{max-width:24ch}
.hx-auto .hx-wrap > .hx-h2 + .hx-p,.hx-auto .hx-wrap > .hx-h2 + .hx-lead{margin-top:14px;font-size:1.125rem;line-height:1.55;max-width:60ch}
.hx-auto .hx-wrap > .hx-cards,.hx-auto .hx-wrap > .hx-stats__row,.hx-auto .hx-wrap > .hx-table,.hx-auto .hx-wrap > .hx-works__grid,.hx-auto .hx-wrap > .hx-form{margin-top:var(--sub)}
.hx-p{max-width:68ch;line-height:1.6}
.hx-p a,.hx-list a,.hx-card__body a:not(.hx-btn),.hx-faq__a a,.hx-quote a{text-decoration:underline;text-underline-offset:.15em}
.hx-list{max-width:68ch;padding-left:1.2em;line-height:1.6;display:flex;flex-direction:column;gap:8px}
.hx-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.hx-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hx-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hx-card{display:flex;flex-direction:column;border-radius:var(--r-card);background:var(--soft);overflow:hidden;color:inherit;position:relative;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.hx-dark .hx-card{background:var(--dark-2);border:1px solid var(--on-dark-line)}
.hx-soft .hx-card{background:#fff}
a.hx-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px -24px rgba(19,21,23,.35)}
.hx-card__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-card__body{display:flex;flex-direction:column;gap:10px;padding:22px 24px 26px}
.hx-card__body .hx-kicker{margin:0;font-size:.75rem}
.hx-card__body p{font-size:.95rem;line-height:1.55}
.hx-card__body .hx-chip{align-self:flex-start;margin-top:auto}
.hx-card__body .hx-actions{margin-top:auto}
.hx-cards .hx-card::before{content:"";position:absolute;left:24px;top:0;width:34px;height:4px;border-radius:0 0 999px 999px;background:var(--c-violet)}
.hx-cards .hx-card:nth-child(3n+2)::before{background:var(--c-pink)}
.hx-cards .hx-card:nth-child(3n+3)::before{background:var(--c-cyan)}
.hx-cards .hx-card:has(.hx-card__media)::before{display:none}
.hx-stats__row--auto{border-top:0;padding-top:0}
.hx-chips{display:flex;flex-wrap:wrap;gap:10px}
.hx-chips .hx-chip{gap:8px;min-height:40px;padding:0 16px 0 12px}
.hx-chips .hx-ico{width:16px;height:16px}
.hx-table{overflow-x:auto;border-radius:var(--r-card);border:1px solid var(--line);background:#fff}
.hx-table table{width:100%;border-collapse:collapse;font-size:.95rem}
.hx-table th,.hx-table td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.hx-table thead th{background:var(--ink);color:#fff;font:600 .85rem/1.3 var(--body)}
.hx-table tbody tr:nth-child(even){background:var(--soft)}
.hx-table tbody td:first-child{font-weight:600}
.hx-quote{margin:0;padding:clamp(24px,3vw,40px);border-radius:var(--r-card);background:var(--t-violet);display:flex;flex-direction:column;gap:12px}
.hx-dark .hx-quote{background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-quote blockquote{margin:0;font:600 clamp(1.2rem,1rem + 1vw,1.6rem)/1.35 var(--display);letter-spacing:-.01em;max-width:30ch}
.hx-quote figcaption{font-size:.9rem}
.hx-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.hx-split__text > *+*{margin-top:16px}
.hx-split__media{margin:0;border-radius:var(--r-card);overflow:hidden}
.hx-split__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hx-figure{margin:0;border-radius:var(--r-card);overflow:hidden}
.hx-figure img{width:100%;max-height:560px;object-fit:cover}
.hx-works__grid--auto .hx-work figcaption{padding:14px 18px}
.hx-auto .hx-form--card{max-width:820px}
.hx-auto .hx-faq__list{max-width:860px}
.hx-dark .hx-list,.hx-dark .hx-p{color:#fff}
@media (max-width:1100px){.hx-cards,.hx-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.hx-split{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.hx-cards,.hx-cards--2,.hx-cards--4{grid-template-columns:minmax(0,1fr)}}

/* ══ Blog, article, fiche produit, panier, commande (02/10) ══ */
.hx-search{display:flex;align-items:center;gap:10px;width:100%;max-width:640px;padding:8px 8px 8px 18px;border:1.5px solid var(--line);border-radius:999px;background:#fff}
.hx-search .hx-ico{width:20px;height:20px;flex:none}
.hx-search input{flex:1;min-width:0;border:0;font:400 1rem/1.3 var(--body);color:var(--ink);background:transparent;outline:0}
.hx-search .hx-btn{min-height:44px}
.hx-stats__row--4{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:8px}
.hx-bloghub{padding-top:16px}
.hx-posts--hub{grid-template-columns:repeat(3,minmax(0,1fr))}
.hx-bloghero .hx-pagehero__in{gap:22px}
/* article */
.hx-arthead{padding:clamp(32px,4vw,56px) 0 0}
.hx-arthead__copy{display:flex;flex-direction:column;gap:16px;max-width:52rem;margin-bottom:clamp(24px,3vw,40px)}
.hx-arthead__copy .hx-h1{font-size:clamp(2rem,1.2rem + 2.4vw,3.4rem)}
.hx-arthead__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.9rem}
.hx-arthead__media{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-arthead__media img{width:100%;aspect-ratio:16/9;object-fit:cover}
.hx-arthead__media figcaption{padding:12px 18px;font-size:.85rem}
.hx-article{padding:clamp(32px,4vw,56px) 0 clamp(56px,7vw,96px)}
.hx-article__grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-article__side{position:sticky;top:100px;display:flex;flex-direction:column;gap:20px}
.hx-toc{padding:22px 24px;border-radius:var(--r-card);background:var(--soft)}
.hx-toc ol{margin:10px 0 0;padding-left:1.2em;display:flex;flex-direction:column;gap:8px;font-size:.9rem}
.hx-toc a{text-decoration:none}
.hx-toc a:hover{color:var(--c-violet)}
.hx-article__cta{display:flex;flex-direction:column;gap:14px;padding:22px 24px;border-radius:var(--r-card);background:var(--t-violet)}
.hx-article__cta strong{font:600 1.05rem/1.3 var(--display)}
.hx-article__cta .hx-btn{align-self:flex-start}
.hx-tldr{padding:22px 26px;border-radius:var(--r-card);background:var(--t-violet);margin-bottom:clamp(24px,3vw,40px)}
.hx-tldr .hx-list{margin-top:10px;max-width:none}
.hx-prose{max-width:72ch;font-size:1.0625rem;line-height:1.7}
.hx-prose > *+*{margin-top:1.1em}
.hx-prose h2{font:600 clamp(1.5rem,1.2rem + 1.2vw,2.1rem)/1.15 var(--display);letter-spacing:-.02em;margin-top:2em;scroll-margin-top:110px}
.hx-prose h3{font:600 1.25rem/1.25 var(--display);margin-top:1.6em}
.hx-prose a{text-decoration:underline;text-underline-offset:.15em}
.hx-prose ul,.hx-prose ol{padding-left:1.2em;display:flex;flex-direction:column;gap:.4em}
.hx-prose figure{margin:1.6em 0;border-radius:var(--r-card);overflow:hidden}
.hx-prose figure img{width:100%;height:auto;display:block}
.hx-prose figcaption{padding:10px 16px;font-size:.85rem;background:var(--soft)}
.hx-prose .hx-table{font-size:.95rem}
.hx-author{display:flex;gap:20px;align-items:center;margin-top:clamp(32px,4vw,56px);padding:24px;border-radius:var(--r-card);background:var(--soft)}
.hx-author img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex:none}
.hx-author p{font-size:.95rem}
.hx-author p:first-child{font:600 1.05rem/1.3 var(--display)}
/* fiche produit */
.hx-product{padding:clamp(24px,3vw,40px) 0 clamp(40px,5vw,64px)}
.hx-product__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-pgallery{position:sticky;top:100px;display:flex;flex-direction:column;gap:12px}
.hx-pgallery__main{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-pgallery__main img{width:100%;aspect-ratio:1;object-fit:cover}
.hx-pgallery__thumbs{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none}
.hx-pgallery__thumb{flex:0 0 84px;height:84px;padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:var(--soft);cursor:pointer}
.hx-pgallery__thumb.is-on{border-color:var(--ink)}
.hx-pgallery__thumb img{width:100%;height:100%;object-fit:cover}
.hx-product__info{display:flex;flex-direction:column;gap:18px}
.hx-product__info .hx-h1{font-size:clamp(1.8rem,1.2rem + 1.8vw,2.6rem)}
.hx-product__price{display:flex;align-items:baseline;gap:12px;font:600 1.75rem/1 var(--display)}
.hx-product__price small{font:400 .85rem/1.3 var(--body)}
.hx-product__opt{display:flex;flex-direction:column;gap:10px}
.hx-product__lab{font:500 .9rem/1.2 var(--body)}
.hx-product__lab strong{font-weight:600;margin-left:6px}
.hx-swatches{display:flex;flex-wrap:wrap;gap:10px}
.hx-swatch{width:32px;height:32px;border-radius:50%;border:2px solid #fff;background:var(--c);box-shadow:0 0 0 1px var(--line),0 0 14px var(--c);cursor:pointer}
.hx-swatch.is-on{box-shadow:0 0 0 2px var(--ink),0 0 14px var(--c)}
.hx-swatches:has(.hx-swatch-item){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px 8px;max-width:420px}
.hx-swatch-item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.hx-swatch-see{background:none;border:0;padding:2px 0;font:500 .72rem/1.2 var(--body);color:var(--ink-2);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:center}
.hx-swatch-see:hover,.hx-swatch-see:focus-visible{color:var(--ink)}
.hx-colorbox{border:0;padding:0;border-radius:16px;width:min(92vw,800px);max-width:none;background:#0b0b0f;color:#fff;overflow:hidden}
.hx-colorbox::backdrop{background:rgba(10,10,15,.72)}
.sim-colors-grid:has(.sim-color-item){display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px 6px}
.sim-color-item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.sim-color-see{background:none;border:0;padding:2px 0;font:500 .72rem/1.2 var(--body);color:var(--ink-2);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:center}
.sim-color-see:hover,.sim-color-see:focus-visible{color:var(--ink)}
@media (max-width:560px){.sim-colors-grid:has(.sim-color-item){grid-template-columns:repeat(5,minmax(0,1fr))}}
.hx-colorbox figure{margin:0}
.hx-colorbox img{display:block;width:100%;height:auto}
.hx-colorbox figcaption{padding:12px 56px 14px 18px;font:600 1rem/1.3 var(--body)}
.hx-colorbox__close{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer}
.hx-choice--sizes{display:flex;flex-wrap:wrap;gap:10px}
.hx-choice--sizes .hx-choice__opt{flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:10px 16px;margin:0;border-radius:14px}
.hx-choice--sizes .hx-choice__opt input{display:none}
.hx-choice--sizes .hx-choice__opt small{font-size:.8rem;opacity:.75}
.hx-choice--sizes .hx-choice__opt.is-on{border-color:var(--ink);background:var(--ink);color:#fff}
.hx-product__buy{display:flex;gap:12px;align-items:stretch}
.hx-qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden}
.hx-qty button{width:44px;min-height:52px;border:0;background:transparent;font-size:1.2rem;cursor:pointer}
.hx-qty input{width:48px;border:0;text-align:center;font:600 1rem/1 var(--body);-moz-appearance:textfield}
.hx-qty input::-webkit-outer-spin-button,.hx-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.hx-btn--big{flex:1;justify-content:center;min-height:52px;font-size:1.05rem}
.hx-reassure--row{flex-direction:row;flex-wrap:wrap;gap:8px 18px;padding-top:0;border-top:0;font-size:.9rem}
.hx-product__desc{padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px;line-height:1.6}
/* panier */
.hx-cart__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-cart__head{display:grid;grid-template-columns:minmax(0,1fr) 150px 110px 44px;gap:16px;padding:0 0 14px;border-bottom:1px solid var(--line);font:600 .8125rem/1 var(--body);text-transform:uppercase;letter-spacing:.04em}
.hx-cart__head span:nth-child(2),.hx-cart__head span:nth-child(3){text-align:center}
.hx-cart__list ul{list-style:none;margin:0;padding:0}
.hx-cart__row{display:grid;grid-template-columns:120px minmax(0,1fr) 150px 110px 44px;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.hx-cart__row img{width:120px;height:120px;object-fit:cover;border-radius:16px;background:var(--soft)}
.hx-cart__item{display:flex;flex-direction:column;gap:4px;font-size:.9rem}
.hx-cart__item a{font:600 1.05rem/1.3 var(--display);text-decoration:none}
.hx-cart__row strong{text-align:center;font:600 1.05rem/1 var(--display)}
.hx-cart__del{border:0;background:var(--soft);width:36px;height:36px;border-radius:50%;cursor:pointer}
.hx-cart__continue{display:inline-flex;align-items:center;gap:8px;margin-top:20px;font-weight:600}
.hx-cart__continue .hx-ico{width:16px;height:16px;transform:rotate(180deg)}
.hx-cart__summary,.hx-checkout__summary{display:flex;flex-direction:column;gap:18px;padding:28px;border-radius:var(--r-card);background:var(--soft);position:sticky;top:100px}
.hx-cart__summary .hx-btn{justify-content:center}
.hx-totals{margin:0;display:flex;flex-direction:column;gap:10px}
.hx-totals div{display:flex;justify-content:space-between;gap:12px;font-size:.95rem}
.hx-totals dd{margin:0;font-weight:600}
.hx-totals__total{padding-top:12px;border-top:1px solid var(--line);font:600 1.15rem/1.2 var(--display)}
.hx-cart__empty{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:32px 0}
/* commande */
.hx-checkout{padding:clamp(24px,3vw,40px) 0 clamp(56px,7vw,96px)}
.hx-checkout__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,72px);align-items:start}
.hx-checkout__form{display:flex;flex-direction:column;gap:24px}
.hx-checkout__form .hx-h1{font-size:clamp(1.8rem,1.2rem + 1.8vw,2.6rem)}
.hx-checkout__block{padding:24px;border-radius:var(--r-card);border:1.5px solid var(--line)}
.hx-checkout__bh{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.hx-checkout__bh .hx-h4{margin:0}
.hx-checkout__express{display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center}
.hx-checkout__express .hx-actions{justify-content:center}
.hx-checkout__or{font-size:.85rem}
.hx-checkout__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.hx-checkout__items li{display:flex;gap:12px;align-items:center}
.hx-checkout__items img{width:64px;height:64px;border-radius:12px;object-fit:cover;background:#fff}
.hx-checkout__items div{flex:1;display:flex;flex-direction:column;font-size:.85rem}
.hx-checkout__items strong{font-weight:600;font-size:.95rem}
.hx-coupon summary{cursor:pointer;font-weight:600;list-style:none}
.hx-coupon__row{display:flex;gap:8px;margin-top:10px}
.hx-coupon__row input{flex:1;min-width:0;min-height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:12px;font:400 .95rem/1 var(--body)}
.hx-checkout__secure{display:flex;gap:8px;align-items:center;font-size:.8rem}
.hx-checkout__secure .hx-ico{width:16px;height:16px}
.hx-checkout__summary .hx-logo{font-size:1.1rem}
@media (max-width:1100px){.hx-posts--hub{grid-template-columns:repeat(2,minmax(0,1fr))}.hx-article__grid{grid-template-columns:minmax(0,1fr)}.hx-article__side{position:static;flex-direction:row;flex-wrap:wrap}.hx-article__side > *{flex:1 1 260px}}
@media (max-width:900px){.hx-product__grid,.hx-cart__grid,.hx-checkout__grid{grid-template-columns:minmax(0,1fr)}.hx-pgallery,.hx-cart__summary,.hx-checkout__summary{position:static}.hx-cart__head{display:none}.hx-cart__row{grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto auto}.hx-cart__row img{width:88px;height:88px}.hx-cart__row .hx-qty{grid-column:2}.hx-cart__row strong{grid-column:1;text-align:left}.hx-stats__row--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.hx-posts--hub{grid-template-columns:minmax(0,1fr)}.hx-product__buy{flex-direction:column}.hx-search{flex-wrap:wrap;border-radius:20px}.hx-search .hx-btn{width:100%;justify-content:center}}
.hx-anchor{display:block;position:relative;top:-90px}

/* ══ Gabarit secteur (build_sector.py) ══ */
.hx-pagehero--sector .hx-pagehero__in{align-items:center;text-align:center;margin:0 auto}
.hx-pagehero--sector .hx-h1{max-width:22ch}
.hx-pagehero--sector .hx-lead{max-width:60ch}
.hx-pagehero--sector .hx-actions{justify-content:center}
.hx-chip--dot::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-violet);margin-right:8px;box-shadow:0 0 8px var(--c-violet)}
.hx-band{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.hx-band__in{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 36px;font:500 .9rem/1.3 var(--body)}
.hx-band__in span{display:inline-flex;align-items:center;gap:8px}
.hx-band__in .hx-ico{width:18px;height:18px}
.hx-split--rev .hx-split__media{order:-1}
.hx-split__media--tall{position:relative}
.hx-split__media--tall img{aspect-ratio:4/3}
.hx-badge{position:absolute;left:18px;bottom:18px;display:flex;flex-direction:column;padding:14px 18px;border-radius:16px;background:#fff;color:var(--ink);max-width:220px}
.hx-badge strong{font:600 1.6rem/1 var(--display);color:var(--c-violet)}
.hx-badge span{font-size:.8rem;margin-top:4px}
.hx-checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.hx-checks li{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.hx-checks .hx-ico{flex:none;width:18px;height:18px;margin-top:3px}
.hx-section__head--center{text-align:center;display:flex;flex-direction:column;align-items:center}
.hx-section__head--center .hx-h2{max-width:24ch}
.hx-section__head--center .hx-lead{max-width:64ch;margin-top:14px}
.hx-card--icon .hx-card__body{padding:26px 26px 28px}
.hx-card--icon .hx-ico--box{margin-bottom:6px}
.hx-dark .hx-card--icon .hx-ico--box{background:rgba(255,255,255,.08);color:#fff}
.hx-card--icon .hx-h4{margin:0}
.hx-cards .hx-card--icon::before{display:none}
.hx-card--center .hx-card__body{align-items:center;text-align:center}
.hx-strip{position:relative;padding:clamp(72px,9vw,120px) 0;background:var(--bg) center/cover no-repeat;color:#fff;text-align:center}
.hx-strip::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(11,12,14,.78),rgba(11,12,14,.45))}
.hx-strip__in{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px}
.hx-strip__quote{max-width:34ch;font:600 clamp(1.4rem,1rem + 1.6vw,2.2rem)/1.3 var(--display);letter-spacing:-.02em}
.hx-strip__quote a{color:#fff;text-decoration:underline;text-underline-offset:.15em}
.hx-strip__cite{font:600 .8125rem/1 var(--body);letter-spacing:.04em;text-transform:uppercase;opacity:.85}
.hx-center{text-align:center;margin-left:auto;margin-right:auto}
.hx-proofsec__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);align-items:center}
.hx-stats__col{grid-template-columns:repeat(2,minmax(0,1fr))}
.hx-dark .hx-stats__row strong{background:var(--neon);-webkit-background-clip:text;background-clip:text}
.hx-quote--card{background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-quote--card blockquote{max-width:none;font-size:clamp(1.05rem,1rem + .4vw,1.3rem);font-weight:500}
.hx-devis__grid--form-first{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);margin-top:var(--sub)}
.hx-devis__side{display:flex;flex-direction:column;gap:18px;padding:26px;border-radius:var(--r-card);background:#fff;position:sticky;top:100px}
.hx-devis__side .hx-quote{padding:20px;background:var(--t-violet)}
.hx-chips--dark .hx-chip{background:rgba(255,255,255,.1);color:#fff}
.hx-chips--dark .hx-ico{display:none}
.hx-card--link .hx-card__body{gap:12px}
.hx-card--link .hx-sector__cta{margin-top:auto}
@media (max-width:900px){.hx-proofsec__grid,.hx-devis__grid--form-first{grid-template-columns:minmax(0,1fr)}.hx-devis__side{position:static}.hx-split--rev .hx-split__media{order:0}}

/* ══ Gabarit LP (build_lp.py) ══ */
.hx-stats--band{padding:clamp(24px,3vw,40px) 0;border-bottom:1px solid var(--line)}
.hx-stats--band .hx-stats__row{padding-top:0;border-top:0}
.hx-imgband{padding:clamp(24px,3vw,40px) 0}
.hx-imgband .hx-gallery{padding-top:0!important}
.hx-chip--mini{min-height:26px;padding:0 10px;font-size:.72rem;background:var(--t-pink);color:var(--c-pink)}
.hx-card--lp .hx-card__body{gap:8px}
.hx-card--lp .hx-howstep__n{color:var(--c-violet)}
.hx-card--lp .hx-h4{margin-top:4px}
.hx-card__sub{font-size:.9rem;color:var(--ink);opacity:.8}
.hx-amount{font:600 1.6rem/1 var(--display);letter-spacing:-.02em;background:var(--neon);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-card--featured{outline:2px solid var(--c-violet);outline-offset:-2px;background:var(--t-violet)}
.hx-stats-mini{margin:8px 0 0;display:flex;flex-direction:column;gap:6px;font-size:.85rem}
.hx-stats-mini div{display:flex;justify-content:space-between;gap:12px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.hx-stats-mini dd{margin:0;font-weight:600;text-align:right}
.hx-checks--small{font-size:.9rem;margin-top:6px}
.hx-p--wide{max-width:72ch}
.hx-section__head--center + .hx-cards,.hx-section__head--center + .hx-faq__list,.hx-section__head--center + .hx-quote,.hx-section__head--center + .hx-p{margin-top:var(--sub)}
.hx-section__head--center + .hx-faq__list{max-width:860px;margin-left:auto;margin-right:auto}
.hx-section .hx-cards + .hx-p,.hx-section .hx-cards + .hx-cards{margin-top:var(--sub)}
.hx-hero__media--cap{position:relative}
.hx-hero__media--cap .hx-badge{max-width:260px}
.hx-hero__media--cap .hx-badge span:first-child{font:600 .85rem/1.3 var(--body)}
.hx-hero__media--cap .hx-badge span+span{font-size:.8rem;margin-top:2px}

/* ══ Enseigne néon + pages villes ══ */
.hx-narrow{max-width:820px}
.hx-narrow > *+*{margin-top:clamp(18px,2.4vw,28px)}
.hx-narrow .hx-section__head{margin-bottom:8px}
.hx-narrowsec .hx-h2{max-width:none}
.hx-figure--nat img{max-height:none;object-fit:contain;background:var(--soft)}
.hx-figure figcaption,.hx-figcap{padding:10px 16px;font-size:.85rem;background:var(--soft)}
.hx-dark .hx-figure figcaption{background:rgba(255,255,255,.08)}
.hx-note--wide{max-width:none;font-size:1rem;line-height:1.6}
.hx-note--wide a{text-decoration:underline;text-underline-offset:.15em}
.hx-howsteps--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hx-emoji{font-size:1.6rem;line-height:1}
.hx-split--text .hx-split__text{min-width:0}
.hx-split__media .hx-figcap{position:absolute;left:14px;bottom:14px;right:14px;border-radius:12px;background:rgba(255,255,255,.92)}
.hx-split__media{position:relative}
.hx-works__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hx-section__head--center + .hx-howsteps,.hx-section__head--center + .hx-works__grid,.hx-section__head--center + .hx-split{margin-top:var(--sub)}
.hx-band__in--hero{justify-content:center;margin-top:6px;font-size:.85rem}
.hx-statsdark{padding:clamp(40px,5vw,64px) 0}
.hx-devis__single{max-width:860px;margin:var(--sub) auto 0}
.hx-devis.hx-dark .hx-form--card{background:#fff;color:var(--ink)}
.hx-devis.hx-dark .hx-devis__head .hx-kicker{color:#9fdcff}
.hx-devis.hx-dark .hx-reassure{color:#fff}
.hx-h2--small{font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem);max-width:none}
@media (max-width:1100px){.hx-howsteps--4{grid-template-columns:repeat(2,minmax(0,1fr))}.hx-works__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.hx-howsteps--4,.hx-works__grid--4{grid-template-columns:minmax(0,1fr)}}
.hx-narrow .hx-faq__list{max-width:none}
.hx-narrow .hx-faq__list details+details{margin-top:0}
.hx-split--rev.hx-split--top{align-items:start}
/* espacement entre blocs frères d'une section (retour 02/10 : paragraphe collé à l'encadré) */
.hx-section > .hx-wrap > .hx-p + .hx-p{margin-top:1em}
.hx-section > .hx-wrap > .hx-p + :not(.hx-p),.hx-section > .hx-wrap > :not(.hx-section__head) + .hx-quote,.hx-section > .hx-wrap > .hx-quote + *,.hx-section > .hx-wrap > .hx-cards + :not(.hx-p),.hx-section > .hx-wrap > .hx-table + *,.hx-section > .hx-wrap > .hx-works__grid + *,.hx-section > .hx-wrap > .hx-split + *,.hx-section > .hx-wrap > .hx-figure + *{margin-top:var(--sub)}
.hx-section > .hx-wrap > .hx-section__head + .hx-p{margin-top:0}
/* retour 02/10 : plus jamais de photos géantes. Les images d'un slider flex gardaient leur largeur native (min-width:auto) : largeur explicite */
.hx-gallery img{width:360px;min-width:0}
@media (max-width:600px){.hx-gallery img{width:260px}}
.hx-imgband .hx-gallery img{width:280px;aspect-ratio:3/4}
@media (max-width:600px){.hx-imgband .hx-gallery img{width:200px}}
.hx-figure--nat img{max-height:520px}
.hx-split__media img{max-height:560px}
.hx-split__text--full{max-width:70ch;margin-bottom:var(--sub)}
/* barre de progression de lecture (02/10) : 3 px, dégradé néon, discrète, sous l'en-tête collant */
.hx-progress{position:fixed;top:0;left:0;z-index:60;height:3px;width:100%;background:var(--neon,linear-gradient(90deg,#6b4dff,#ff3d8a,#19b8ff));transform-origin:0 50%;transform:scaleX(var(--p,0));opacity:.9;pointer-events:none}
/* bandeau cookies (02/10) : même contenu que le live, habillage DA (carte blanche, pilules, point violet) */
.hx-cc{position:fixed;left:24px;bottom:24px;z-index:70;width:min(440px,calc(100vw - 32px));color:var(--ink)}
.hx-cc[hidden]{display:none!important}
.hx-cc__in{display:grid;gap:14px;padding:22px 22px 16px;border-radius:var(--r-card);background:#fff;border:1px solid var(--line);box-shadow:0 24px 60px rgba(19,21,23,.18)}
.hx-cc__titre{margin:0;font:600 1.1rem/1.2 var(--display);letter-spacing:-.01em}
.hx-cc__titre::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--c-violet);box-shadow:0 0 12px var(--c-violet);margin-right:10px;vertical-align:1px}
.hx-cc__texte{margin:0;font-size:.9rem;line-height:1.6}
.hx-cc__lien{color:var(--c-violet)!important;text-decoration:underline!important;text-underline-offset:3px}
.hx-cc__choix{display:grid;gap:8px}
.hx-cc__ligne{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:14px;background:var(--soft);cursor:pointer}
.hx-cc__cat{margin:0;font-weight:600;font-size:.9rem}
.hx-cc__desc{margin:2px 0 0;font-size:.8rem}
.hx-cc__toujours{font-size:.75rem;font-weight:600;color:#00a87e;white-space:nowrap}
.hx-cc__switch{appearance:none;width:42px;height:24px;flex:none;border-radius:999px;background:#d4d4d8;position:relative;cursor:pointer;transition:background .2s}
.hx-cc__switch::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
.hx-cc__switch:checked{background:var(--c-violet)}
.hx-cc__switch:checked::after{transform:translateX(18px)}
.hx-cc__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hx-cc__btn{justify-content:center}
.hx-cc__bas{display:flex;justify-content:center;gap:18px}
.hx-cc__perso{background:none;border:0;padding:4px;font:600 .85rem/1 var(--body);color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media (max-width:600px){.hx-cc{left:12px;bottom:84px}.hx-cc__in{padding:18px 16px 12px}}
.hx-cc__choix[hidden],.hx-cc__perso[hidden]{display:none!important}
.hx-arthead__media img{aspect-ratio:21/9;max-height:520px;object-fit:cover} /* visuel d article borné (02/10) */

/* build_articles.py : articles de blog (en-tête, sommaire h2/h3, encadrés, FAQ en prose, auteur, partage, connexes) */
.hx-arthead__cat{display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.hx-arthead__cat .hx-ico{width:12px;height:12px}
.hx-arthead__meta > span{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}
.hx-arthead__meta .hx-ico{width:14px;height:14px}
.hx-arthead__av{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font:600 .7rem/1 var(--body);font-style:normal}
.hx-toc ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--ink-2)}
.hx-prose .hx-box{padding:22px 26px;border-radius:var(--r-card);background:var(--t-violet)}
.hx-prose .hx-box > *+*{margin-top:.8em}
.hx-prose .hx-box .hx-h4{font-size:1.05rem}
.hx-prose .hx-faq__list{margin-top:1.6em}
.hx-prose .hx-faq__item summary p{margin:0}
.hx-prose .hx-faq__a > *+*{margin-top:.8em}
.hx-author > div{display:flex;flex-direction:column;gap:6px;min-width:0}
.hx-author .hx-kicker{margin-bottom:2px}
.hx-author .hx-actions{margin-top:10px}
.hx-author__photo{flex:none;display:block}
.hx-btn--small{min-height:40px;padding:10px 18px;font-size:.9rem}
.hx-btn .hx-ico{width:16px;height:16px}
.hx-artfoot{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:clamp(24px,3vw,40px)}
.hx-author--mini{margin-top:0;padding:20px}
.hx-author--mini img{width:56px;height:56px}
.hx-social__row{display:flex;gap:8px;margin-top:6px}
.hx-social,.hx-share__btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--ink);border:1px solid var(--line);cursor:pointer;padding:0}
.hx-social:hover,.hx-share__btn:hover{background:var(--ink);color:#fff}
.hx-social .hx-ico,.hx-share__btn .hx-ico{width:16px;height:16px}
.hx-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:20px 24px;border-radius:var(--r-card);background:var(--soft)}
.hx-share .hx-kicker{margin:0 6px 0 0}
.hx-share__done{display:inline-flex;align-items:center;gap:6px;font-size:.85rem}
.hx-share__done .hx-ico{width:14px;height:14px}
.hx-share__done[hidden]{display:none}
.hx-related__foot{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:var(--sub)}
@media (max-width:600px){.hx-author{flex-direction:column;align-items:flex-start}}

/* build_blog_categories.py : hubs de catégorie (en-tête de liste, retour au blog) */
.hx-cathub__head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.hx-cathub__head .hx-h2{margin:0}
.hx-cathub__count{font-size:.9rem;color:var(--ink-3)}
.hx-cathub__back{display:flex;justify-content:center;margin-top:var(--sub)}

/* build_pages.py */
/* pages légales : prose + sommaire latéral */
.hx-legal .hx-prose{max-width:none}
.hx-legal__art{scroll-margin-top:110px}
.hx-legal__art:first-child h2{margin-top:0}
.hx-prose h4{font:600 1.1rem/1.3 var(--display);letter-spacing:-.01em;margin-top:1.4em}
.hx-prose .hx-note{margin-top:1.4em}
.hx-prose .hx-list{max-width:none}
.hx-toc .hx-kicker{margin-bottom:0}
.hx-toc ol{margin-top:12px}
/* pages éditoriales */
.hx-stats__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hx-stats--hero{width:100%;max-width:760px;padding:0}
.hx-stats--hero .hx-stats__row{margin-top:10px;padding-top:24px;border-top:1px solid var(--line);text-align:center}
.hx-stats--hero .hx-stats__row li{align-items:center}
.hx-stepsplit{display:flex;flex-direction:column;gap:var(--sub)}
.hx-stepsplit > li{padding-top:var(--sub);border-top:1px solid var(--line)}
.hx-stepsplit > li:first-child{padding-top:0;border-top:0}
.hx-stepsplit .hx-howstep__n{display:block;margin-bottom:4px}
.hx-video{aspect-ratio:16/9;max-width:860px;margin:0 auto;border-radius:var(--r-card);background:var(--dark);display:grid;place-items:center;color:#fff}
.hx-video .hx-ico{width:84px;height:84px;padding:26px;border-radius:50%;background:rgba(255,255,255,.14)}
.hx-howstep .hx-ico--box{margin-bottom:4px}
.hx-small{font-size:.9rem}
.hx-hero__media--square img{aspect-ratio:1/1;max-height:560px}
.hx-author__role{text-transform:none;letter-spacing:0;font-size:1rem;margin:-10px 0 0}
.hx-author__sig{display:flex;margin-top:var(--sub);max-width:none}
.hx-author__sig .hx-kicker{margin:0}
.hx-author__sig strong{font-weight:600}
.hx-pagehero--wide .hx-h1{max-width:26ch}
/* catégories boutique */
.hx-shop--cat .hx-shop__count{margin-top:0}
.hx-shop__pages{display:flex;justify-content:center;gap:8px;margin-top:var(--sub)}
.hx-shop__pages .is-on{background:var(--ink);color:#fff}
@media (max-width:900px){.hx-legal .hx-article__grid{grid-template-columns:minmax(0,1fr)}.hx-legal .hx-article__side{position:static}.hx-stats__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.hx-stats--hero .hx-stats__row,.hx-stats__row--3{grid-template-columns:minmax(0,1fr)}}
/* build_articles.py : correctifs calc() (les règles d'origine écrivent « 1.2rem + 1.2vw » sans espaces, ce qui est invalide et renvoie le h2 de prose au corps de texte) */
.hx-prose h2{font:600 clamp(1.5rem,1.2rem + 1.2vw,2.1rem)/1.15 var(--display);letter-spacing:-.02em;margin-top:2em;scroll-margin-top:110px}
.hx-prose h3{scroll-margin-top:110px}
.hx-arthead__copy .hx-h1{font-size:clamp(2rem,1.2rem + 2.4vw,3.4rem)}
/* retours 02/10 soir (contrôle qualité) */
.hx-dark .hx-table{color:var(--ink)} /* tableau sur section sombre : le texte héritait du blanc */
.hx-narrow .hx-cards--4,.hx-narrow .hx-cards--3{grid-template-columns:repeat(2,minmax(0,1fr))} /* cartes dans la colonne étroite : 2 par ligne, pas 4 */
@media (max-width:600px){.hx-narrow .hx-cards--4,.hx-narrow .hx-cards--3{grid-template-columns:minmax(0,1fr)}}
.hx-colis__media img{aspect-ratio:4/3;object-fit:contain;background:#0b0c0e} /* visuel colis entier, aucun accessoire coupé */
.hx-devis.hx-dark{background:radial-gradient(60% 60% at 85% 0%,rgba(107,77,255,.35),transparent 60%),var(--dark)} /* texte blanc sur fond sombre, plus sur lilas */
/* simulateur : mêmes largeur et hauteur que la version en ligne (pleine largeur, 100vh, commandes 520 px à défilement) */
.hx-sim .hx-wrap--sim{max-width:none;padding:0}
.hx-sim .sim-wrapper{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;min-height:100vh;height:auto!important;border-radius:0;border:0;flex-direction:row;overflow:visible}
.hx-sim .sim-preview{position:sticky!important;top:0;flex:1;height:100vh!important;max-height:none!important;min-height:0}
.hx-sim .sim-controls{position:relative!important;height:100vh!important;max-height:100vh;overflow-y:auto!important;width:520px;min-width:520px}
.hx-sim .sim-controls{overflow-x:hidden!important;overscroll-behavior-x:none}
@media (max-width:900px){.hx-sim .sim-wrapper{flex-direction:column;min-height:0}.hx-sim .sim-preview{position:relative!important;height:45vh!important;min-height:300px}.hx-sim .sim-controls{width:100%;min-width:0;height:auto!important;max-height:none}}
.hx-simwrap{overflow:visible;border-radius:0;border:0}
/* QA 02/10 : état vide du panier affiché à tort (display de la classe battait l'attribut hidden) ; groupes de FAQ trop espacés */
.hx-cart__empty[hidden]{display:none!important}
.hx-section.hx-faq + .hx-section.hx-faq{padding-top:0}
/* retour 02/10 : en-tête du blog centré (titre, recherche, chiffres, filtres) */
.hx-bloghero .hx-pagehero__in{align-items:center;text-align:center}
.hx-bloghero .hx-search{width:min(100%,640px)}
.hx-bloghero .hx-stats__row{justify-content:center;justify-items:center;text-align:center;width:auto}
.hx-bloghub .hx-shop__filters{justify-content:center}
.hx-bloghub .hx-shop__count{text-align:center}
/* retours 02/10 soir : en-tête d'article centré ; sous un en-tête de section centré, les paragraphes qui suivent sont centrés eux aussi (alignement du live) */
.hx-arthead__copy{text-align:center;align-items:center;margin-left:auto;margin-right:auto}
.hx-arthead__copy .hx-arthead__meta{justify-content:center}
.hx-arthead__copy .hx-kicker,.hx-arthead__cat{justify-content:center;align-self:center}
.hx-section__head--center ~ .hx-p,.hx-section__head--center ~ p.hx-p{text-align:center;margin-left:auto;margin-right:auto;max-width:72ch}
.hx-section__head--center ~ .hx-note,.hx-section__head--center ~ .hx-quote{margin-left:auto;margin-right:auto}
/* retour 02/10 soir : tableaux à la nouvelle DA sur tout le site (plus d'en-tête noir ni de zébrage : carte blanche, en-tête doux avec libellés en petites capitales violettes, filets fins, survol) */
.hx-table{overflow-x:auto;border-radius:var(--r-card);border:1px solid var(--line);background:#fff;color:var(--ink)}
.hx-table table{width:100%;border-collapse:separate;border-spacing:0;font-size:.95rem}
.hx-table thead th{background:var(--soft);color:var(--c-violet);font:600 .72rem/1.3 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:16px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.hx-table th:first-child,.hx-table td:first-child{padding-left:24px}
.hx-table th:last-child,.hx-table td:last-child{padding-right:24px}
.hx-table tbody td,.hx-table tbody th{padding:16px 20px;border-bottom:1px solid var(--line);vertical-align:top;background:transparent;line-height:1.5}
.hx-table tbody tr:nth-child(even){background:transparent}
.hx-table tbody tr:last-child td,.hx-table tbody tr:last-child th{border-bottom:0}
.hx-table tbody tr:hover td,.hx-table tbody tr:hover th{background:rgba(107,77,255,.04)}
.hx-table tbody td:first-child,.hx-table tbody th{font-weight:600;color:var(--ink)}
.hx-table td strong{font-weight:600}
.hx-dark .hx-table,.hx-dark .hx-table thead th{color:var(--ink)}
.hx-prose .hx-table{margin:28px 0;font-size:.95rem}
@media (max-width:600px){.hx-table table{font-size:.875rem}.hx-table thead th,.hx-table tbody td,.hx-table tbody th{padding:12px 14px}.hx-table th:first-child,.hx-table td:first-child{padding-left:16px}.hx-table th:last-child,.hx-table td:last-child{padding-right:16px}}
/* bandeaux citation : voile allégé pour laisser voir l'enseigne (les visuels sont déjà sombres) */
.hx-strip::before{background:linear-gradient(90deg,rgba(11,12,14,.35),rgba(11,12,14,.6) 55%,rgba(11,12,14,.5))}
.hx-strip__quote,.hx-strip__cite{text-shadow:0 2px 18px rgba(0,0,0,.55)}
/* retour 02/10 soir « attention aux espaces et entassements » : rythme vertical de la prose et des pages légales */
.hx-prose > * + *,.hx-legal__art > * + *,.hx-article__body > * + *{margin-top:1em}
.hx-prose h2,.hx-legal__art h2{margin-top:2.2em;margin-bottom:.4em}
.hx-prose h3,.hx-legal__art h3,.hx-prose h4,.hx-legal__art h4{margin-top:2em;margin-bottom:.35em}
.hx-prose h2 + h3,.hx-legal__art h2 + h3,.hx-prose h3 + h4{margin-top:1.2em}
.hx-prose h2 + p,.hx-prose h3 + p,.hx-prose h4 + p,.hx-legal__art h2 + p,.hx-legal__art h3 + p,.hx-legal__art h4 + p{margin-top:.5em}
.hx-prose .hx-table,.hx-legal__art .hx-table,.hx-prose table{margin:1.6em 0 2em}
.hx-prose .hx-note,.hx-legal__art .hx-note,.hx-prose .hx-box,.hx-prose figure,.hx-legal__art figure{margin:1.6em 0 2em}
.hx-prose ul,.hx-prose ol,.hx-legal__art ul,.hx-legal__art ol{margin:.8em 0 1.2em}
.hx-legal__art + .hx-legal__art{margin-top:3em}
/* retour 02/10 soir : visuels Pinterest (portrait, néon dans le tiers supérieur) recadrés sur le néon quel que soit le cadre */
img[src*="pin-"],img[data-hx-img*="pin-"]{object-fit:cover;object-position:center 22%}
.hx-imgband .hx-gallery img{aspect-ratio:3/4;object-position:center 30%}
.hx-strip{background-position:center 30%} /* enseigne dans le tiers haut des visuels de bandeau */
/* QA nuit : agent C */
/* Articles : blocs de conversion du script du site (hnx-20260930.js) à la DA v3. Carte latérale collante dès 1280 px
   (grille sommaire | article | carte) ; en dessous, barre basse (carte flottante de 900 à 1279 px). */
.hnx-rail,.hnx-bar{display:none}
.hx-article__grid--cro .hx-article__main{container-type:inline-size}
@media (min-width:1280px){
  .hx-article__grid--cro{grid-template-columns:232px minmax(0,1fr) 272px;gap:40px}
  .hx-article__grid--cro .hnx-rail{display:flex}
}
.hnx-rail{position:sticky;top:100px;align-self:start;flex-direction:column;gap:14px;padding:22px;border-radius:var(--r-card);background:#fff;border:1px solid var(--line);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s}
.hnx-on .hnx-rail:not(.is-in){opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s .3s}
.hnx-eyebrow{margin:0;color:var(--c-violet)}
.hnx-rail .hx-h4{font-size:1.15rem}
.hnx-shot{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--r-small);background:var(--dark)}
.hnx-price{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.875rem;color:var(--ink-2)}
.hnx-price b{font:700 1.5rem/1 var(--display);letter-spacing:-.02em;color:var(--c-violet)}
.hnx-cta{gap:10px;white-space:normal;text-align:center;text-decoration:none!important}
.hnx-rail .hnx-cta,.hnx-f .hnx-cta{width:100%}
.hnx-cta .hx-ico{width:18px;height:18px}
.hnx-trust{display:flex;flex-direction:column;gap:10px;font-size:.875rem;line-height:1.4;color:var(--ink-2)}
.hnx-trust li{display:flex;gap:10px;align-items:flex-start}
.hnx-trust .hx-ico{width:18px;height:18px;margin-top:1px;color:var(--c-violet)}
.hnx-trust li:nth-child(2) .hx-ico{color:var(--c-pink)}
.hnx-trust li:nth-child(3) .hx-ico{color:var(--c-cyan)}
.hnx-micro{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;font-size:.8125rem;line-height:1.4;color:var(--ink-2);text-align:center}
.hnx-micro .hx-stars svg,.hnx-proof-head .hx-stars svg,.hnx-end-rev .hx-stars svg{width:14px;height:14px}
.hnx-link{font-weight:600;color:var(--c-violet);text-decoration:underline;text-underline-offset:.2em}
/* CTA contextuel (avant le 3e h2) */
.hx-prose .hnx-inline{display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);margin:2em 0;border-radius:var(--r-card);overflow:hidden;background:var(--t-violet)}
.hnx-inline-img{position:relative;min-height:250px;background:var(--dark)}
.hx-prose .hnx-inline-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hnx-inline-img span{position:absolute;left:12px;bottom:12px;padding:6px 12px;border-radius:var(--r-pill);background:rgba(19,21,23,.8);color:#fff;font:600 .75rem/1.2 var(--body)}
.hnx-inline-body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:28px}
.hx-prose .hnx-inline-body h3{margin:0;font:600 1.3rem/1.25 var(--display);letter-spacing:-.01em}
.hx-prose .hnx-inline-body p{margin:0;font-size:.975rem;line-height:1.6;color:var(--ink-2)}
.hnx-inline-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:4px}
/* preuve sociale (h2 à 60 %) */
.hx-prose .hnx-proof{margin:2em 0;padding:26px;border-radius:var(--r-card);color:#fff;background:radial-gradient(60% 80% at 0% 0%,rgba(107,77,255,.45),transparent 60%),radial-gradient(50% 70% at 100% 100%,rgba(255,61,138,.3),transparent 60%),var(--dark)}
.hnx-proof-head{display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-bottom:18px}
.hnx-proof-head b{font:600 1.3rem/1.2 var(--display);letter-spacing:-.01em;color:#fff}
.hnx-proof-head > span{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;color:var(--on-dark-2)}
.hnx-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hnx-proof-grid a{display:block;border-radius:var(--r-small);overflow:hidden}
.hx-prose .hnx-proof-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s var(--ease)}
.hnx-proof-grid a:hover img{transform:scale(1.04)}
.hx-prose .hnx-quote{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 20px;align-items:center;margin-top:18px;padding-top:18px;border-top:1px solid var(--on-dark-line)}
.hx-prose .hnx-quote blockquote{margin:0;padding:0;border:0;font:500 1rem/1.55 var(--body);color:#fff}
.hnx-quote cite{display:block;margin-top:6px;font:600 .8125rem/1.3 var(--body);font-style:normal;color:var(--on-dark-2)}
.hx-prose .hnx-proof .hnx-link{color:#fff;white-space:nowrap}
/* formulaire final (avant l'encart auteur) */
.hnx-end{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);margin-top:clamp(40px,5vw,64px);border-radius:var(--r-card);overflow:hidden;background:var(--dark);color:#fff;scroll-margin-top:100px}
.hnx-end-l{display:flex;flex-direction:column;gap:18px;padding:32px 30px;background:radial-gradient(70% 60% at 0% 0%,rgba(107,77,255,.5),transparent 65%),radial-gradient(60% 50% at 100% 100%,rgba(25,184,255,.2),transparent 60%),var(--dark)}
.hnx-end-l .hnx-eyebrow{color:var(--c-amber)}
.hnx-end-l .hx-h3{color:#fff;font-size:1.6rem;line-height:1.2}
.hnx-end-l .hx-h3 em{font-style:normal;color:#c4b8ff}
.hnx-steps{display:flex;flex-direction:column;gap:14px;counter-reset:s}
.hnx-steps li{counter-increment:s;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;font-size:.9rem;line-height:1.5;color:var(--on-dark-2)}
.hnx-steps li::before{content:counter(s);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--c-violet);color:#fff;font:700 .85rem/1 var(--display)}
.hnx-steps li:nth-child(2)::before{background:var(--c-pink)}
.hnx-steps li:nth-child(3)::before{background:var(--c-cyan);color:var(--ink)}
.hnx-steps b{display:block;color:#fff;font-weight:600}
.hnx-end-l .hnx-trust{color:var(--on-dark-2)}
.hnx-end-l .hnx-trust .hx-ico{color:#c4b8ff}
.hnx-end-l .hnx-trust li:nth-child(2) .hx-ico{color:#ff8ab8}
.hnx-end-l .hnx-trust li:nth-child(3) .hx-ico{color:var(--c-cyan)}
.hnx-end-rev{padding-top:16px;border-top:1px solid var(--on-dark-line);font-size:.9rem;line-height:1.55;color:#fff}
.hnx-end-rev .hx-stars{vertical-align:-2px;margin-right:4px}
.hnx-end-src{margin-top:6px;font-size:.8125rem;color:var(--on-dark-2)}
.hnx-end-r{display:flex;flex-direction:column;gap:14px;padding:30px 28px;background:#fff;color:var(--ink)}
.hnx-end-r-t{font:600 1.25rem/1.25 var(--display);letter-spacing:-.01em}
.hnx-f{display:flex;flex-direction:column;gap:14px}
.hnx-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.hnx-fl{display:block;font:500 .875rem/1.3 var(--body)}
.hnx-fl .hnx-in{margin-top:8px}
.hnx-hint{font-weight:400;color:var(--ink-3)}
.hnx-in{display:block;width:100%;min-height:50px;padding:12px 16px;border:1.5px solid var(--line);border-radius:14px;background:#fff;font:400 1rem/1.4 var(--body);color:var(--ink);transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.hnx-in:focus{outline:0;border-color:var(--c-violet);box-shadow:0 0 0 4px rgba(107,77,255,.15)}
.hnx-in[aria-invalid="true"]{border-color:#d92d20;box-shadow:0 0 0 4px rgba(217,45,32,.12)}
.hnx-lab{display:block;margin-bottom:8px;font:500 .875rem/1.2 var(--body)}
.hnx-pills{display:flex;gap:10px}
.hnx-pills label{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 12px;border:1.5px solid var(--line);border-radius:var(--r-pill);font:600 .9rem/1.2 var(--body);text-align:center;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.hnx-pills label:hover{border-color:var(--ink)}
.hnx-pills input{position:absolute;opacity:0;pointer-events:none}
.hnx-pills label:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.hnx-pills label:has(input:focus-visible){outline:2px solid var(--c-violet);outline-offset:2px}
.hnx-file{position:relative;display:flex;align-items:center;gap:14px;padding:16px;border:2px dashed rgba(107,77,255,.45);border-radius:14px;background:var(--t-violet);cursor:pointer}
.hnx-file:hover{border-color:var(--c-violet)}
.hnx-file:focus-within{outline:2px solid var(--c-violet);outline-offset:2px}
.hnx-file > .hx-ico{width:22px;height:22px;color:var(--c-violet)}
.hnx-file b{display:block;font:600 .95rem/1.3 var(--display);overflow-wrap:anywhere}
.hnx-file small{display:block;margin-top:3px;font-size:.8125rem;line-height:1.4;color:var(--ink-2)}
.hnx-file input{position:absolute;width:1px;height:1px;opacity:0}
.hnx-hp{position:absolute;left:-9999px;width:1px;height:1px}
.hnx-err{font:600 .8125rem/1.3 var(--body);color:#b42318}
.hnx-err:empty{display:none}
.hnx-done{display:none;flex-direction:column;align-items:center;gap:10px;padding:24px 8px;text-align:center}
.hnx-done .hx-ico{width:48px;height:48px;color:var(--accent)}
.hnx-done b{font:600 1.2rem/1.3 var(--display)}
.hnx-end.is-sent .hnx-f{display:none}
.hnx-end.is-sent .hnx-done{display:flex}
@container (max-width:720px){.hnx-end{grid-template-columns:minmax(0,1fr)}.hnx-end-l,.hnx-end-r{padding:26px 22px}}
@container (max-width:560px){.hx-prose .hnx-inline{grid-template-columns:minmax(0,1fr)}.hnx-inline-img{min-height:0;aspect-ratio:4/3}.hnx-inline-body{padding:22px}.hnx-inline-row .hnx-cta{width:100%}.hnx-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hx-prose .hnx-quote{grid-template-columns:minmax(0,1fr)}.hx-prose .hnx-proof{padding:20px}}
@container (max-width:460px){.hnx-2{grid-template-columns:minmax(0,1fr)}}
/* barre basse (moins de 1280 px) : masque le bouton devis collant du site tant qu'elle est affichée */
@media (max-width:1279px){
  .hnx-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:70;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--dark);color:#fff;transform:translateY(110%);transition:transform .35s var(--ease)}
  .hnx-bar.is-in{transform:none}
  .hnx-bar-txt{flex:1;min-width:0;font-size:.8125rem;line-height:1.35;color:var(--on-dark-2)}
  .hnx-bar-txt b{display:block;font:600 .95rem/1.25 var(--display);color:#fff}
  .hnx-bar .hnx-cta{flex:none;min-height:46px;padding:10px 18px;background:var(--c-violet);color:#fff;font-size:.9rem;white-space:nowrap}
  .hnx-bar .hnx-cta:hover{opacity:.9}
  .hx-sticky{transition:opacity .25s,transform .25s}
  body.hnx-bar-on .hx-sticky{opacity:0;pointer-events:none;transform:translateY(24px)}
}
@media (max-width:899px){body.hnx-has-bar{padding-bottom:72px}}
@media (min-width:900px) and (max-width:1279px){
  .hnx-bar{left:auto;right:24px;bottom:24px;width:min(440px,calc(100vw - 48px));padding:14px 14px 14px 22px;border-radius:var(--r-card);transform:translateY(calc(100% + 40px))}
}
@media (prefers-reduced-motion:reduce){.hnx-rail,.hnx-bar,.hnx-proof-grid img{transition:none!important}}

/* QA nuit : agent A */
/* Alignements du live (consigne 02/10) sur l'accueil, les pages du menu et /mon-logo-en-neon/ : le site en ligne centre titres, chapeaux, paragraphes et contenus de cartes.
   hx-hero--center : texte du hero centré dans sa colonne ; hx-sec--center : section dont les cartes sont centrées. */
.hx-hero--center .hx-hero__copy{align-items:center;text-align:center}
.hx-hero--center .hx-actions{justify-content:center}
.hx-section__head--center > .hx-chip,.hx-section__head--center > .hx-tp{margin-top:18px}
.hx-section__head--center .hx-lead + .hx-note{margin-top:16px;max-width:64ch}
.hx-sec--center .hx-howstep,.hx-sec--center .hx-tile,.hx-sec--center .hx-feature,.hx-sec--center .hx-mount__body,.hx-sec--center .hx-why > div,.hx-sec--center .hx-sector,.hx-sec--center .hx-colis__intro{align-items:center;text-align:center}
.hx-sec--center .hx-tile::before{left:50%;transform:translateX(-50%)}
.hx-sec--center .hx-colis__intro .hx-actions{justify-content:center}
.hx-sec--center .hx-colis__intro .hx-lead{margin:0 auto}
.hx-sec--center .hx-how__foot{flex-direction:column;justify-content:center;text-align:center}
.hx-sec--center .hx-how__foot .hx-lead{margin:0 auto}
.hx-sec--center .hx-how__foot .hx-actions{justify-content:center}
.hx-sec--center .hx-howstep p.hx-h3{font-size:var(--h3);line-height:1.15}
.hx-sec--center .hx-feature{border-left:0;border-top:3px solid var(--c-cyan)}
.hx-sec--center .hx-feature:nth-child(2){border-top-color:var(--c-violet)}
.hx-sec--center .hx-feature:nth-child(3){border-top-color:var(--c-pink)}
.hx-sec--center .hx-ar__features .hx-h3{margin-left:auto;margin-right:auto;text-align:center}
.hx-sec--center .hx-mlg__group{align-items:center;text-align:center}
.hx-sec--center .hx-mlg__pills{justify-content:center}
.hx-sec--center .hx-mlg .hx-section__head,.hx-mlg.hx-sec--center .hx-section__head{margin-bottom:8px}
/* AR Studio : en-tête centré au-dessus, étapes + téléphone, boutons et note centrés dessous (ordre du live) */
.hx-ar.hx-sec--center .hx-ar__grid{align-items:center}
.hx-ar__foot{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:var(--sub);text-align:center}
.hx-ar__foot .hx-actions{justify-content:center}
/* pied de formulaire centré (bouton puis mention, comme le live) */
.hx-form__foot--center{flex-direction:column;align-items:center;text-align:center}
/* simulateur sans en-tête : pas de bande sombre vide au-dessus ni au-dessous */
.hx-sim.hx-sec--flush{padding:0}
/* QA nuit : agent C */
/* boutons des blocs de conversion sur une ligne ; sommaire d'article plus haut que l'écran : défile dans sa carte */
.hnx-rail .hnx-cta,.hnx-inline .hnx-cta{white-space:nowrap;padding:14px 22px}
.hnx-inline-body{padding:26px 24px}
@media (min-width:1101px){.hx-arthead ~ .hx-article .hx-toc{max-height:calc(100vh - 300px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}
/* QA nuit : agent C */
.hnx-f .hnx-cta{padding:14px 18px}
@media (max-width:420px){.hnx-f .hnx-cta{font-size:.95rem}}
/* QA nuit : agent A (suite) : alignements relevés sur le live */
.hx-sec--center .hx-tiles--dark .hx-tile{align-items:flex-start;text-align:left} /* tuiles du colis : à gauche sur le live */
.hx-sec--center .hx-colis__note{flex-direction:column;justify-content:center;text-align:center}
.hx-sec--center .hx-colis__note p{flex:none;min-width:0}
.hx-sec--center .hx-color figcaption{text-align:center}
.hx-sec--center .hx-guide{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.hx-sec--center .hx-situ figcaption{left:50%;transform:translateX(-50%);white-space:nowrap}
.hx-sec--center .hx-stats__row li{align-items:center;text-align:center}
/* QA nuit : agent B */
/* Pages métier, LP (photo, pas-cher, ip65), enseigne néon, villes et régions : alignements relevés sur le live + correctifs de rendu */
.hx-logos p.hx-kicker.hx-center{display:block} /* « Ils nous font confiance » : la classe hx-center ne centrait pas un inline-block */
/* enseigne : en-têtes de section à gauche (live), emoji des engagements dans le h3, figures de la colonne étroite bornées à 560 px */
.hx-section__head--left .hx-lead{max-width:72ch;margin-top:14px}
.hx-h4--emoji .hx-emoji{display:block;margin-bottom:10px}
.hx-narrow .hx-figure{max-width:560px;margin-left:auto;margin-right:auto}
/* note client du formulaire (pages métier) */
.hx-rating{display:flex;align-items:center;gap:12px;margin:0}
.hx-rating strong{font:600 1.5rem/1 var(--display);letter-spacing:-.02em;background:var(--neon);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-rating span{font-size:.8rem;line-height:1.4;color:var(--ink-3)}
/* pages métier : chiffres puis témoignage, empilés et centrés comme en ligne */
.hx-proofsec--center .hx-proofsec__grid{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.hx-proofsec--center .hx-stats__row{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:1000px}
.hx-proofsec--center .hx-stats__row li{align-items:center;text-align:center}
.hx-proofsec--center .hx-quote{max-width:760px;align-items:center;text-align:center}
.hx-proofsec--center .hx-quote blockquote{max-width:none}
@media (max-width:700px){.hx-proofsec--center .hx-stats__row{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* FAQ des pages métier et villes : titre centré au-dessus de la liste (live) */
.hx-faq--center .hx-faq__grid{grid-template-columns:minmax(0,1fr);gap:var(--sub)}
.hx-faq--center .hx-faq__head{position:static;display:flex;flex-direction:column;align-items:center;text-align:center}
.hx-faq--center .hx-faq__head .hx-h2{max-width:28ch}
.hx-faq--center .hx-faq__list{width:100%;max-width:860px;margin:0 auto}
/* villes : chiffres centrés, titre du CTA final sur moins de lignes */
.hx-statsdark--center .hx-stats__row li{align-items:center;text-align:center}
.hx-cta--wide .hx-h2{max-width:28ch}
/* LP : bandeau de chiffres centré, montants lisibles, grille tarifaire centrée avec sa pastille « Populaire » (pseudo-contenu du live), promesse centrée, pastille du visuel */
.hx-stats--center .hx-stats__row li{align-items:center;text-align:center}
.hx-card--lp .hx-card__body .hx-amount{font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);line-height:1.05}
.hx-cards--pricing .hx-card--featured{position:relative;overflow:visible}
.hx-cards--pricing .hx-card--featured::before{content:"Populaire";position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:5px 14px;border-radius:100px;background:var(--c-violet);color:#fff;font:600 .72rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase}
.hx-cards--pricing .hx-checks{align-self:stretch}
.hx-cards--pricing .hx-checks li{justify-content:center}
.hx-quote--hl{align-items:center;text-align:center;max-width:860px;margin-left:auto;margin-right:auto}
.hx-quote--hl blockquote{max-width:none;font-size:clamp(1.05rem,1rem + .4vw,1.3rem)}
.hx-chip--float{z-index:1;font-weight:600}
/* QA nuit : agent A (LP /mon-logo-en-neon/, build_landing.py) : en-tête marque seule, pied de page propre, composants hx-* existants */
.hx-lphead .hx-header__in{min-height:64px;gap:14px}
.hx-lphead__tag{font-size:.875rem;color:var(--ink)}
.hx-lp .hx-hero__media--cap .hx-lp-tag{flex-direction:row;align-items:center;gap:12px;max-width:none;padding:12px 16px}
.hx-lp .hx-lp-tag--a{top:18px;bottom:auto}
.hx-lp .hx-lp-tag--b{left:auto;right:18px}
.hx-lp .hx-lp-tag .hx-ico{width:22px;height:22px;color:var(--c-violet)}
.hx-lp .hx-lp-tag span{display:flex;flex-direction:column}
.hx-lp .hx-lp-tag strong{font:600 1rem/1.2 var(--display);color:var(--ink)}
.hx-lp .hx-lp-tag small{font-size:.8rem;color:var(--ink)}
.hx-lp-cta{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:var(--sub);text-align:center}
.hx-lp-cta p{font-size:.9rem}
.hx-lp-logos .hx-lp-cta{margin-top:40px}
.hx-lp-proof{padding:clamp(48px,6vw,72px) 0}
.hx-lp-proof .hx-proof{margin-top:0;padding-top:0;border-top:0}
.hx-lp-proof .hx-proof li{padding:20px;border-radius:var(--r-card);background:var(--dark-2);border:1px solid var(--on-dark-line)}
.hx-lp-proof .hx-proof strong,.hx-lp-proof .hx-proof span{color:#fff}
.hx-lp-proof .hx-proof .hx-ico{color:var(--c-amber)}
.hx-lp-steps{counter-reset:hxs}
.hx-lp-steps .hx-howstep::before{counter-increment:hxs;content:"0" counter(hxs);font:600 .8125rem/1 var(--body);letter-spacing:.04em;color:var(--c-violet)}
.hx-lp-steps .hx-howstep:nth-child(2)::before{color:var(--c-pink)}
.hx-lp-steps .hx-howstep:nth-child(3)::before{color:var(--c-cyan)}
.hx-lp-steps .hx-howstep:nth-child(4)::before{color:#b77900}
.hx-lp-steps .hx-howstep .hx-chip{align-self:flex-start;margin-top:auto;background:var(--t-violet);color:var(--c-violet)}
.hx-lp-price strong{font:600 2.6rem/1 var(--display);letter-spacing:-.02em;color:var(--c-violet)}
.hx-lp-price small{margin-left:8px;font-size:.9rem}
.hx-lp-price p{margin-top:10px;font-size:.9rem}
.hx-lp-get,.hx-lp-tp{display:flex;flex-direction:column;gap:12px;padding-top:18px;border-top:1px solid var(--line)}
.hx-lp-get .hx-checks{font-size:.95rem}
.hx-lp-tp p{font-size:.9rem}
.hx-lp-hint{display:none}
.hx-lp-dur .hx-split{align-items:center}
.hx-lp-dur .hx-split__media img{aspect-ratio:4/3;object-fit:contain;background:#0b0c0e}
.hx-lp-hours{grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;padding-top:0;gap:12px}
.hx-lp-hours li{padding:16px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-lp-hours strong{font-size:1.8rem}
.hx-lp-hours span{font-size:.85rem}
.hx-lp-dur .hx-checks b{color:#fff}
.hx-lp-warranty{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--on-dark-line)}
.hx-lp-warranty p{display:flex;flex-direction:column;gap:4px}
.hx-lp-warranty strong{font:600 1.05rem/1.3 var(--display);color:#fff}
.hx-lp .hx-reviews .hx-section__head .hx-tp{gap:10px}
.hx-lpfoot{padding:40px 0 120px}
.hx-lpfoot__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.hx-lpfoot__legal{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:24px;padding-top:24px;border-top:1px solid var(--on-dark-line)}
.hx-lpfoot__legal a{font-size:.875rem;color:#fff}
.hx-lpfoot__legal a:hover{text-decoration:underline}
.hx-lpfoot__copy{margin-top:20px;font-size:.8125rem;color:#fff}
.hx-sticky small{font-size:inherit;font-weight:500;margin-left:4px}
@media (max-width:600px){
  .hx-lp-hint{display:block;margin-top:12px;text-align:center;font-size:.85rem}
  .hx-lp-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;margin:0 calc(-1 * var(--pad));padding:8px var(--pad) 28px;scrollbar-width:none}
  .hx-lp-scroll::-webkit-scrollbar{display:none}
  .hx-lp-scroll > *{flex:0 0 78%;scroll-snap-align:start}
  .hx-colors__grid.hx-lp-scroll > *{flex-basis:46%}
  .hx-lp-hours{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hx-lp-hours li{padding:12px 10px}
  .hx-lp-hours strong{font-size:1.35rem}
  .hx-lp .hx-hero__media--cap .hx-lp-tag{padding:8px 12px}
  .hx-lphead__tag{font-size:.8rem}
}

/* QA nuit : agent D */
/* Pages légales (cgv, mentions, politiques, retour) et éditoriales (faq, garantie, guide, tarifs, à propos, fondateur, néon LED flexible), puis chrome commun. */
/* hero de page suivi d'une section blanche : une seule marge entre le titre et le contenu (il y en avait deux, 170 px d'air) */
.hx-pagehero--joined + .hx-section:not(.hx-soft):not(.hx-dark){padding-top:clamp(32px,4vw,56px)}
/* pages légales : listes à tirets comme sur le live, listes numérotées lisibles */
.hx-legal__art ul.hx-list{padding-left:0}
.hx-legal__art ul.hx-list > li{position:relative;padding-left:1.4em}
.hx-legal__art ul.hx-list > li::before{content:"";position:absolute;left:0;top:.82em;width:.65em;height:2px;border-radius:2px;background:var(--c-violet)}
.hx-legal__art ol.hx-list{display:block;list-style:decimal;padding-left:1.5em}
.hx-legal__art ol.hx-list > li + li{margin-top:.4em}
.hx-legal__art ol.hx-list > li::marker{color:var(--c-violet);font-weight:600}
/* pages légales : le tableau ne porte plus la marge de la prose à l'intérieur de son cadre ; sur mobile, chaque ligne devient une fiche (libellé de colonne à gauche) au lieu d'une colonne coupée */
.hx-legal .hx-table table{margin:0}
@media (max-width:600px){
  .hx-legal .hx-table--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .hx-legal .hx-table--stack table,.hx-legal .hx-table--stack tbody,.hx-legal .hx-table--stack tbody tr{display:block;width:100%}
  .hx-legal .hx-table--stack tbody tr{padding:12px 16px;border-bottom:1px solid var(--line)}
  .hx-legal .hx-table--stack tbody tr:last-child{border-bottom:0}
  .hx-legal .hx-table--stack tbody td,.hx-legal .hx-table--stack tbody th{display:grid;grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:12px;padding:4px 0;border:0;background:none}
  .hx-legal .hx-table--stack tbody td::before,.hx-legal .hx-table--stack tbody th::before{content:attr(data-label);font:600 .7rem/1.7 var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--c-violet)}
}
/* montants en carte (garantie, néon LED flexible) : la règle des paragraphes de carte les réduisait à 15 px ; dégradé lisible sur fond clair */
.hx-card__body .hx-amount--card{font-size:clamp(1.8rem,1.4rem + 1.2vw,2.4rem);line-height:1.05;background:linear-gradient(90deg,var(--c-violet),#c81e65);-webkit-background-clip:text;background-clip:text}
.hx-card__body .hx-amount--price{font-size:1.3rem;line-height:1.25;background:none;color:#5a3df0}
/* tarifs : boutons alignés en bas des trois cartes */
.hx-tarifs .hx-card{display:flex;flex-direction:column}
.hx-tarifs .hx-card__body{flex:1}
.hx-tarifs .hx-card__body > .hx-actions{margin-top:auto;padding-top:10px}
/* chiffres clés sur fond clair : dégradé violet vers rose (le cyan final tombait à 2,2:1 sur blanc) ; sur fond sombre le dégradé néon est conservé */
.hx-stats__row--aa strong{background:linear-gradient(90deg,var(--c-violet),#c81e65);-webkit-background-clip:text;background-clip:text}
.hx-stats__row--aa li > .hx-ico{width:26px;height:26px;margin-bottom:6px;color:#9fdcff}
/* blocs centrés sur le live : texte d'un bloc texte + image (garantie, à propos, néon LED flexible) */
.hx-split--center .hx-split__text{text-align:center}
.hx-split--center .hx-split__text .hx-h2,.hx-split--center .hx-split__text .hx-lead,.hx-split--center .hx-split__text .hx-p{margin-left:auto;margin-right:auto}
.hx-split--center .hx-split__text .hx-actions{justify-content:center}
.hx-split--center .hx-split__text .hx-checks{text-align:left}
/* néon LED flexible : chapeau puis paragraphes centrés d'un seul tenant (64 px de vide entre eux) */
.hx-lpflex .hx-section__head--center:has(+ .hx-p){margin-bottom:24px}
/* contraste AA des numéros d'étapes rose, cyan, ambre sur fond clair (3,3 / 2,2 / 1,8:1 → plus de 4,5:1), filets de couleur inchangés */
.hx-section:not(.hx-dark) .hx-howstep:nth-child(2) .hx-howstep__n{color:#c81e65}
.hx-section:not(.hx-dark) .hx-howstep:nth-child(3) .hx-howstep__n{color:#006da8}
.hx-section:not(.hx-dark) .hx-howstep:nth-child(4) .hx-howstep__n{color:#9a5800}
/* pastilles « Populaire », « Couvert », « Non couvert » : rose lisible sur fond rose pâle (2,9:1 → 4,9:1) */
.hx-chip--mini{color:#c41d63}
/* chrome : menu mobile, le bouton « Demander un devis » était masqué par la règle qui cache le bouton de l'en-tête sous 900 px */
@media (max-width:900px){.hx-header .hx-mobile .hx-btn{display:inline-flex}}
/* chrome : bandeau cookies, « Toujours actif » lisible (2,8:1 → 5,2:1) */
.hx-cc .hx-cc__toujours{color:#00745a}
/* chrome : mouvement réduit sur mobile, bandeau du haut statique mais défilable au doigt (les messages étaient coupés des deux côtés) */
@media (prefers-reduced-motion:reduce) and (max-width:768px){.hx-topbar .hx-topbar__in{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.hx-topbar .hx-topbar__in::-webkit-scrollbar{display:none}}
/* QA nuit : agent D (suite) */
/* montants : priorité sur la règle générale .hx-card--lp ajoutée plus haut (le prix « À partir de 350 CHF / texte + design » passait à 35 px sur deux lignes) */
.hx-card .hx-card__body .hx-amount--price{font-size:1.3rem;line-height:1.25}
.hx-card .hx-card__body .hx-amount--card{font-size:clamp(1.8rem,1.4rem + 1.2vw,2.4rem);line-height:1.05}
/* garantie : carte prix de réparation, contenu centré verticalement */
.hx-repair .hx-card--center .hx-card__body{justify-content:center}
/* QA nuit : agent B (suite) */
.hx-split__text > .hx-checks{margin-top:16px} /* la liste à coches collait au paragraphe (margin:0 de .hx-checks battait la règle *+*) */
/* bandeaux citation des pages métier : l'enseigne des visuels est à gauche ; le texte reste centré mais dans les deux tiers droits pour ne plus la chevaucher */
@media (min-width:901px){.hx-strip__in{padding-left:34%}}
@media (max-width:900px){.hx-strip{background-position:left center}.hx-strip::before{background:rgba(11,12,14,.62)}}
/* néon LED flexible : les cinq étoiles du live (texte ★★★★★) remplacent l'icône unique, vert foncé lisible */
.hx-hero__trust .hx-hero__stars{color:#00745a;letter-spacing:.08em;font-size:1rem}
/* QA nuit : agent B (bandeaux métier, mobile) : enseigne du visuel en haut, citation dessous, plus de texte posé sur les lettres néon */
@media (max-width:900px){.hx-strip{padding-top:clamp(150px,42vw,230px);background-position:left top}.hx-strip::before{background:linear-gradient(180deg,rgba(11,12,14,.2) 0%,rgba(11,12,14,.35) 30%,rgba(11,12,14,.8) 55%)}}
/* QA nuit : agent B : enseigne, preuves du hero et du formulaire en liste à coches ; logos détachés du bandeau de chiffres */
.hx-checks--proofs{margin-top:22px;font-size:.95rem}
.hx-hero__copy .hx-checks--proofs + .hx-actions{margin-top:26px}
.hx-devis__head .hx-checks--proofs{margin-top:20px}
.hx-dark .hx-checks--proofs{color:var(--on-dark-2)}
.hx-stats--band + .hx-logos{padding-top:clamp(28px,3.4vw,48px)}
/* QA nuit : agent C */
@media (max-width:600px){.hx-share .hx-kicker{flex-basis:100%;margin:0 0 4px}}
/* QA nuit : agent C */
/* panneau formulaire du bloc final : surface grise pour se détacher du fond blanc de la page */
.hnx-end-r{background:var(--soft)}
.hnx-pills label{background:#fff}
.hnx-pills label:has(input:checked){background:var(--ink)}
/* QA nuit : agent B : pastille de la carte tarifaire mise en avant (texte du live porté par data-badge), espace sous une section avant la bande de logos */
.hx-cards--pricing .hx-card--featured[data-badge]::before{content:attr(data-badge)}
.hx-cards--pricing .hx-card--featured:not(.hx-card--center)::before{left:24px;transform:none}
.hx-cards--pricing{padding-top:12px}
.hx-section + .hx-logos{padding-top:clamp(28px,3.4vw,48px)}
.hx-cards.hx-cards--pricing .hx-card--featured::before{width:auto;height:auto;white-space:nowrap;border-radius:100px;background:var(--c-violet);z-index:1} /* QA nuit : agent B, la pastille héritait de la taille du trait décoratif (34×4) */
/* fondateur : libellé « LinkedIn » de la carte signature, violet foncé sur lilas (4,3:1 → 5,3:1) */
.hx-author__sig .hx-kicker{color:#5a3df0}
/* QA nuit : agent C */
/* hub du blog : éléments rendus en JS sur le site (article à la une, newsletter après la 6e carte, pagination 9 par page) */
.hx-search--blog{padding:6px 6px 6px 22px}
.hx-search--blog .hx-search__go{width:48px;min-height:48px;padding:0;border-radius:50%}
.hx-search--blog .hx-search__go .hx-ico{width:20px;height:20px}
@media (max-width:600px){.hx-search--blog{flex-wrap:nowrap;border-radius:999px}.hx-search--blog .hx-search__go{width:44px;min-height:44px}}
.hx-bloghero + .hx-crumbs{padding-top:0}
.hx-posts--hub > [hidden]{display:none!important}
.hx-feat{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);margin-top:var(--sub);border-radius:var(--r-card);overflow:hidden;background:var(--dark);color:#fff}
.hx-feat__media{min-height:320px;background:var(--dark-2)}
.hx-feat__media img{width:100%;height:100%;max-height:440px;object-fit:cover;transition:transform .5s var(--ease)}
.hx-feat:hover .hx-feat__media img{transform:scale(1.03)}
.hx-feat__body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;padding:clamp(28px,3.5vw,48px);background:radial-gradient(70% 60% at 100% 0%,rgba(107,77,255,.4),transparent 65%),var(--dark)}
.hx-feat__body .hx-kicker{margin:0;color:var(--c-amber)}
.hx-feat__body .hx-chip{background:rgba(255,255,255,.12);color:#fff}
.hx-feat__body .hx-h3{color:#fff}
.hx-feat__body p:not(.hx-h3){color:var(--on-dark-2);line-height:1.6}
.hx-feat__meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.875rem;color:var(--on-dark-2)}
.hx-feat__cta{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:600;color:#fff}
.hx-feat__cta .hx-ico{width:18px;height:18px;transition:transform .25s var(--ease)}
.hx-feat:hover .hx-feat__cta .hx-ico{transform:translateX(4px)}
.hx-bloghub__head{margin-top:var(--sub)}
.hx-nl{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap;padding:clamp(24px,3vw,36px) clamp(24px,3.5vw,44px);border-radius:var(--r-card);color:#fff;background:radial-gradient(60% 120% at 0% 0%,rgba(107,77,255,.45),transparent 60%),radial-gradient(50% 120% at 100% 100%,rgba(255,61,138,.3),transparent 60%),var(--dark)}
.hx-nl[hidden]{display:none!important}
.hx-nl__txt{display:flex;flex-direction:column;gap:6px;min-width:0}
.hx-nl__txt .hx-kicker{margin:0;color:var(--c-amber)}
.hx-nl__txt .hx-h4{color:#fff}
.hx-nl__txt p:not(.hx-h4){color:var(--on-dark-2);font-size:.9rem}
.hx-nl__form{display:flex;gap:8px;flex:1 1 320px;max-width:440px;padding:6px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid var(--on-dark-line)}
.hx-nl__form input{flex:1;min-width:0;border:0;background:transparent;padding:0 14px;font:400 1rem/1.3 var(--body);color:#fff;outline:0}
.hx-nl__form input::placeholder{color:rgba(255,255,255,.6)}
.hx-nl__form .hx-btn{min-height:46px;padding:12px 22px}
.hx-nl__form .hx-btn.is-done{background:var(--accent);color:#fff}
.hx-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 0;text-align:center;color:var(--ink-2)}
.hx-empty[hidden]{display:none}
.hx-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:var(--sub)}
.hx-pages:empty{display:none}
.hx-pages button{min-width:44px;height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;font:600 .9rem/1 var(--body);color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s}
.hx-pages button:hover:not(:disabled){border-color:var(--ink)}
.hx-pages button.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.hx-pages button:disabled{opacity:.4;cursor:default}
@media (max-width:900px){.hx-feat{grid-template-columns:minmax(0,1fr)}.hx-feat__media{min-height:0}.hx-feat__media img{aspect-ratio:16/10;height:auto}}
@media (max-width:600px){.hx-nl__form{flex-basis:100%;max-width:none}.hx-pages button{min-width:40px;height:40px;padding:0 10px}}
/* QA nuit : agent C */
.hx-nl__form{min-width:0;box-sizing:border-box}
.hx-nl__form input{width:100%}
/* QA nuit : agent B (mobile) : surtitre de hero sur deux lignes lisible, pastilles du CTA final centrées, tableau comparatif à 5 colonnes défilant au lieu de s'écraser */
.hx-hero__copy .hx-kicker,.hx-pagehero .hx-kicker{line-height:1.35}
.hx-cta__in .hx-chips{justify-content:center}
@media (max-width:600px){.hx-table table:has(th:nth-child(5)){min-width:640px}}
/* chrome : bandeau cookies, les deux boutons gardaient le style navigateur (fond gris, bordure en relief) : .hx-btn--primary n'existe pas dans la feuille. « Tout refuser » en contour, « Tout accepter » plein, même taille */
.hx-cc .hx-cc__btn{cursor:pointer;border:2px solid var(--ink);font:600 1rem/1 var(--body)}
.hx-cc .hx-cc__btn.hx-btn--outline{background:#fff;color:var(--ink)}
.hx-cc .hx-cc__btn.hx-btn--outline:hover{background:var(--ink);color:#fff}
.hx-cc .hx-cc__btn.hx-btn--primary{background:var(--ink);color:#fff}
.hx-cc .hx-cc__btn.hx-btn--primary:hover{opacity:.85}
/* chrome : bandeau cookies centré sur mobile (12 px à gauche, 20 px à droite) */
@media (max-width:600px){.hx-cc{left:16px;right:16px;width:auto}}
/* QA nuit : correctifs globaux (retours agent D) */
.hx-prose .hx-table table,.hx-legal__art .hx-table table{margin:0}
.hx-stats__row strong{background:linear-gradient(90deg,var(--c-violet),#c81e65);-webkit-background-clip:text;background-clip:text} /* contraste AA du dégradé sur fond clair */
.hx-dark .hx-stats__row strong{background:var(--neon,linear-gradient(90deg,#6b4dff,#ff3d8a,#19b8ff));-webkit-background-clip:text;background-clip:text}
/* QA nuit : agent C */
/* fiches produit : blocs rendus en JS sur le site (accroche, réassurance, 4 garanties, accordéons, « Vous aimerez aussi », barre d'ajout collante) */
.hx-product__short{color:var(--ink-2);line-height:1.6}
.hx-product__lab strong{margin-left:2px}
.hx-swatch{box-shadow:0 0 0 1px #c9ccd2,0 0 14px var(--c)}
.hx-product__buy .hx-btn--big{flex:1}
.hx-product__buy .hx-btn .hx-ico{width:18px;height:18px}
.hx-product__reass{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:-6px;font-size:.85rem;color:var(--ink-2)}
.hx-product__reass .hx-ico{width:16px;height:16px;color:var(--accent)}
.hx-ptrust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hx-ptrust li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--soft)}
.hx-ptrust .hx-ico{width:36px;height:36px;padding:8px;border-radius:10px;background:#fff;color:var(--c-violet)}
.hx-ptrust li:nth-child(2) .hx-ico{color:var(--c-pink)}
.hx-ptrust li:nth-child(3) .hx-ico{color:var(--c-cyan)}
.hx-ptrust li:nth-child(4) .hx-ico{color:var(--c-amber)}
.hx-ptrust div{display:flex;flex-direction:column;gap:2px;min-width:0}
.hx-ptrust strong{font:600 .9rem/1.25 var(--body)}
.hx-ptrust span{font-size:.8rem;line-height:1.3;color:var(--ink-2)}
.hx-accs{border-top:1px solid var(--line)}
.hx-acc{border-bottom:1px solid var(--line)}
.hx-acc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;font:600 1rem/1.3 var(--display);cursor:pointer;list-style:none}
.hx-acc summary::-webkit-details-marker{display:none}
.hx-acc summary .hx-ico{width:18px;height:18px;transition:transform .25s var(--ease)}
.hx-acc[open] summary .hx-ico{transform:rotate(180deg)}
.hx-acc__in{padding:0 0 18px;color:var(--ink-2);line-height:1.65;font-size:.95rem}
.hx-acc__in > *+*{margin-top:.7em}
.hx-acc__in a{text-decoration:underline;text-underline-offset:.15em}
.hx-related-prods{margin-top:clamp(48px,6vw,80px)}
.hx-related-prods .hx-h3{text-align:center}
.hx-related-prods .hx-h3 span{color:var(--c-violet)}
.hx-relprods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);margin-top:28px}
.hx-relprod{display:flex;flex-direction:column;border-radius:var(--r-card);overflow:hidden;background:var(--soft)}
.hx-relprod__media{overflow:hidden}
.hx-relprod__media img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .5s var(--ease)}
.hx-relprod:hover .hx-relprod__media img{transform:scale(1.04)}
.hx-relprod__body{display:flex;flex-direction:column;gap:4px;padding:14px 18px 18px}
.hx-relprod__body span{font:600 .95rem/1.3 var(--display)}
.hx-relprod__body strong{font:600 1rem/1 var(--display);color:var(--c-violet)}
.hx-pdesc{padding-top:0}
.hx-pdesc__in{max-width:68ch;margin:0 auto}
.hx-pstick{position:fixed;left:0;right:0;bottom:0;z-index:65;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(19,21,23,.08);transform:translateY(110%);transition:transform .3s var(--ease)}
.hx-pstick.is-in{transform:none}
.hx-pstick__in{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:600px;margin:0 auto}
.hx-pstick__in div{display:flex;flex-direction:column;gap:4px;min-width:0}
.hx-pstick__in span{font-size:.75rem;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hx-pstick__in strong{font:600 1.15rem/1 var(--display)}
.hx-pstick .hx-btn{min-height:46px;padding:12px 22px}
body.hx-pstick-on .hx-sticky{opacity:0;pointer-events:none}
@media (max-width:900px){.hx-relprods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.hx-ptrust{grid-template-columns:minmax(0,1fr)}}
/* QA nuit : agent C */
/* fiches produit : colis, comparatif et avis centrés comme en ligne ; badge « Recommandé » du live sur la colonne Helioneon */
.hx-auto--center .hx-wrap > .hx-kicker,.hx-auto--center .hx-wrap > .hx-h2{display:block;text-align:center;margin-left:auto;margin-right:auto}
.hx-auto--center .hx-wrap > .hx-h2{max-width:24ch}
.hx-auto--center .hx-wrap > .hx-p{text-align:center;margin-left:auto;margin-right:auto;max-width:62ch}
.hx-auto--cmp .hx-table{max-width:1080px;margin-left:auto;margin-right:auto}
.hx-auto--cmp .hx-table{overflow:visible}
.hx-auto--cmp .hx-table thead th:nth-child(2){position:relative}
.hx-auto--cmp .hx-table thead th:nth-child(2)::before{content:"Recommandé";position:absolute;left:50%;top:-11px;transform:translateX(-50%);padding:4px 10px;border-radius:999px;background:var(--c-violet);color:#fff;font:600 .65rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.hx-reviews--center .hx-section__head{align-items:center;text-align:center}
.hx-reviews--center .hx-tp{margin:18px auto 0}
.hx-reviews__note{margin-top:28px;text-align:center;font-weight:600;color:var(--ink-2)}
/* QA nuit : agent C */
@media (max-width:760px){.hx-auto--cmp .hx-table{overflow-x:auto}.hx-auto--cmp .hx-table thead th:nth-child(2)::before{position:static;display:block;width:max-content;margin:0 0 6px;transform:none}}
/* QA nuit : agent C */
.hx-shop--cat .hx-prod .hx-h4{overflow-wrap:anywhere;hyphens:auto}
/* QA nuit : agent C */
/* fiches produit mobile : pastilles sur deux lignes lisibles, quantité centrée */
.hx-perso .hx-chip{line-height:1.3;padding-top:8px;padding-bottom:8px;height:auto}
.hx-perso .hx-chip--on-img{max-width:calc(100% - 28px);min-height:0;padding:6px 12px;line-height:1.3}
@media (max-width:600px){.hx-product__buy .hx-qty{justify-content:space-between}.hx-product__buy .hx-qty input{flex:1}}
/* QA nuit : agent C */
.hx-relprods{grid-template-columns:repeat(4,minmax(0,268px));justify-content:center}
@media (max-width:900px){.hx-relprods{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* QA nuit : agent C */
/* catégories boutique : compteur à gauche, tri à droite (comme en ligne) */
.hx-shop__bar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin:0 0 20px}
.hx-shop__bar .hx-shop__count{margin:0}
.hx-shop__sort{width:min(100%,300px)}
.hx-shop__sort select{min-height:46px;padding:10px 44px 10px 18px;border-radius:999px}
/* QA nuit : agent C */
/* catégories boutique en 2 colonnes mobiles : pastilles de couleur à taille fixe (elles s'écrasaient en traits) */
.hx-shop--cat .hx-prod__colors{flex-wrap:wrap;row-gap:6px}
.hx-shop--cat .hx-prod__colors i{flex:none}
/* QA nuit : agent C */
/* commande : h1 masqué comme en ligne (titre visible « Finalisez votre paiement »), aides sous les champs, case offres, logos cartes, écran de confirmation */
.hx-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hx-checkout__title{font-size:clamp(2rem,1.4rem + 1.8vw,3rem);margin-bottom:8px}
.hx-checkout__title em{font-style:normal;background:var(--neon);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-field__hint{font-size:.8rem;color:var(--ink-3)}
.hx-field[hidden]{display:none}
.hx-optin{display:flex;align-items:center;gap:10px;font-size:.9rem;cursor:pointer}
.hx-optin input{width:18px;height:18px;accent-color:var(--c-violet);flex:none}
.hx-checkout__bh-r{display:flex;align-items:center;gap:12px}
.hx-checkout__brands{display:inline-flex;gap:6px}
.hx-checkout__brands img{width:38px;height:24px}
.hx-success{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:rgba(19,21,23,.6)}
.hx-success[hidden]{display:none}
.hx-success__card{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(440px,100%);padding:32px 28px;border-radius:var(--r-card);background:#fff;text-align:center}
.hx-success__card > .hx-ico{width:56px;height:56px;padding:14px;border-radius:50%;background:var(--t-mint);color:var(--accent)}
.hx-success__card p:not(.hx-h3){color:var(--ink-2);line-height:1.6}
/* QA nuit : agent C */
.hx-checkout__bh{flex-wrap:wrap;row-gap:8px}
.hx-checkout__bh .hx-chip{white-space:nowrap}
/* QA nuit : agent C */
/* panier : lignes lisibles sur mobile (visuel + infos, puis quantité, total et suppression sur une ligne), état vide */
.hx-cart__del{display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2)}
.hx-cart__del .hx-ico{width:18px;height:18px}
.hx-cart__del:hover{background:var(--ink);color:#fff}
.hx-cart__color{color:var(--c-violet)}
.hx-cart .hx-qty button:disabled{opacity:.35;cursor:default}
.hx-cart.is-empty .hx-cart__head,.hx-cart.is-empty .hx-cart__summary,.hx-cart.is-empty .hx-cart__continue{display:none}
.hx-cart.is-empty .hx-cart__grid{grid-template-columns:minmax(0,1fr)}
.hx-cart__empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;text-align:center}
.hx-pagehero--cart .hx-lead:empty{display:none}
@media (max-width:900px){
  .hx-cart__row{grid-template-columns:88px minmax(0,1fr) auto;grid-template-areas:"img info info" "img qty del" "img tot tot";gap:10px 14px;align-items:center}
  .hx-cart__row img{grid-area:img;width:88px;height:88px;align-self:start}
  .hx-cart__item{grid-area:info}
  .hx-cart__row .hx-qty{grid-area:qty;justify-self:start}
  .hx-cart__row .hx-qty button{min-height:40px;width:38px}
  .hx-cart__row .hx-qty input{width:36px}
  .hx-cart__row strong{grid-area:tot;text-align:left}
  .hx-cart__del{grid-area:del;justify-self:end}
}
/* QA nuit : agent C */
.hx-pagehero--cart + .hx-cart{padding-top:0}
/* QA nuit : agent C */
/* articles mobiles : tableaux de 3 colonnes et plus à largeur lisible, défilement horizontal dans leur carte */
@media (max-width:600px){.hx-prose .hx-table{-webkit-overflow-scrolling:touch}.hx-prose .hx-table table{min-width:540px}.hx-prose .hx-table th,.hx-prose .hx-table td{padding:12px 14px}}
/* QA nuit : agent C */
@media (max-width:600px){.hx-prose .hx-table table{min-width:500px}.hx-prose .hx-table{background:linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) left/40px 100% no-repeat local,linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) right/40px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,rgba(19,21,23,.18),transparent) left/14px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(19,21,23,.18),transparent) right/14px 100% no-repeat scroll;background-color:#fff}}
/* QA nuit : agent C */
.hx-shop--cat .hx-prod{display:flex;flex-direction:column}
.hx-shop--cat .hx-prod__link{flex:1}
.hx-prod__opts{margin:0 20px 20px;align-self:stretch}
@media (max-width:600px){.hx-prod__opts{margin:0 12px 14px;padding:8px 10px;font-size:.85rem}}
/* QA nuit : agent C */
.hx-shop--cat .hx-prod{background:var(--soft);border-radius:var(--r-card);overflow:hidden}
.hx-shop--cat .hx-prod__link{background:transparent;border-radius:0}
/* QA nuit : agent C */
@media (min-width:601px){.hx-shop--cat .hx-prod__colors{flex-wrap:nowrap}}
/* QA nuit : correctifs globaux (retours agent C) : en-tête entre 900 et 1180 px, pastilles de couleur sur mobile */
@media (max-width:1180px){.hx-header__in{gap:20px}.hx-nav{gap:18px}.hx-nav a{white-space:nowrap;font-size:.9rem}.hx-header__actions{gap:8px}}
@media (max-width:1080px){.hx-nav{display:none}.hx-burger{display:inline-flex}.hx-header__actions .hx-btn{display:none}}
.hx-prod__colors{flex-wrap:wrap}.hx-prod__colors i{flex:none}
.hx-sec--center .hx-sectors__more{text-align:center;margin-left:auto;margin-right:auto} /* QA nuit : agent A, paragraphe sous les secteurs centré comme le live */
/* QA nuit : agent A : étapes de l'accueil à gauche (frise du live), prix et heures de la LP centrés comme le live */
.hx-sec--center .hx-howsteps--left .hx-howstep{align-items:flex-start;text-align:left}
.hx-lp-price{text-align:center}
.hx-lp-hours li{align-items:center;text-align:center}
/* QA nuit : agent A : « sur votre mur » (em du titre AR, page sur mesure) était noir sur fond noir ; réalisations : 3 colonnes à 390 px donnaient des cartes de 80 px ; catégories sur deux lignes collées */
.hx-ar .hx-h2 em{color:#9fdcff}
@media (max-width:900px){.hx-works--page .hx-works__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hx-shop .hx-prod__body .hx-kicker{line-height:1.25}
/* retour 03/10 : bandeau de réassurance de la LP dans le style des chiffres clés de la DA (plus de cartes grises ni d'icônes ambre) */
.hx-lp-proof .hx-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,40px);max-width:1100px;margin:0 auto;padding:0;list-style:none;text-align:center}
.hx-lp-proof .hx-proof li{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;padding:0;border-radius:0}
.hx-lp-proof .hx-proof .hx-ico{display:none}
.hx-lp-proof .hx-proof li > div{display:flex;flex-direction:column;align-items:center;gap:6px}
.hx-lp-proof .hx-proof strong{font:600 clamp(1.6rem,1.2rem + 1.4vw,2.4rem)/1.1 var(--display);letter-spacing:-.02em;background:var(--neon,linear-gradient(90deg,#6b4dff,#ff3d8a,#19b8ff));-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-lp-proof .hx-proof span{color:#fff;font-size:.95rem;max-width:22ch}
.hx-lp-proof .hx-lp-cta{margin-top:clamp(28px,4vw,44px);text-align:center}
@media (max-width:900px){.hx-lp-proof .hx-proof{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hx-lp-proof .hx-proof{max-width:1240px}
.hx-lp-proof .hx-proof strong{font-size:clamp(1.25rem,1rem + .9vw,1.7rem)}
@media (min-width:1100px){.hx-lp-proof .hx-proof strong{white-space:nowrap}}
/* langues : agent B : texte SEO de la page réalisations (es) centré sous la galerie */
.hx-proy .hx-prose{margin-inline:auto}.hx-proy .hx-prose>:first-child{margin-top:0}
/* langues : agent F : pages légales mobiles, le tableau empilé en fiches garde la largeur de sa carte (la largeur mini des tableaux d'articles le coupait à droite) */
@media (max-width:600px){.hx-legal .hx-table--stack table{min-width:0}}
/* langues : agent F : encadré pays en fin de page (taxes d'import en Suisse sur tarifs) */
/* mention pays (douane CH) : espacement serré et symétrique ; collée à la section blanche qui précède, aérée après une section sombre (07/10) */
.hx-countrynote{padding-top:0;padding-bottom:clamp(40px,5vw,64px)}
.hx-dark+.hx-countrynote,.hx-cta+.hx-countrynote{padding-top:clamp(40px,5vw,64px)}

/* langues : agent A : chrome multilingue. Libellés de menu sur une ligne (es « Neón personalizado » passait sur 2 lignes à 1440) ;
   mots longs du pied coupés proprement (de « Installationsanleitung » débordait sur la colonne voisine) */
.hx-nav a{white-space:nowrap}
.hx-footer__col a,.hx-footer__title{overflow-wrap:break-word}html:lang(de) .hx-footer__col a{hyphens:auto}
/* langues : agent A : menus les plus longs (es, pt, el) : le menu passe en burger dès 1240 px, sinon l'en-tête déborde entre 1081 et 1240 px */
@media (max-width:1240px){html:is(:lang(es),:lang(pt),:lang(el)) .hx-nav{display:none}html:is(:lang(es),:lang(pt),:lang(el)) .hx-burger{display:inline-flex}}
/* langues : agent A : le menu burger s'ouvre à toute largeur où le burger est visible (il ne s'ouvrait qu'en dessous de 900 px, or le burger apparaît dès 1080 px, 1240 px en es/pt/el) */
.hx-mobile.is-open{display:flex;flex-direction:column;gap:6px;padding:12px var(--pad) 24px;border-top:1px solid var(--line);background:#fff}
.hx-mobile a{padding:12px 0;font:500 1.05rem/1 var(--body)}
.hx-mobile .hx-btn{margin-top:12px;align-self:flex-start}
/* langues : agent F : titres des pages légales et éditoriales hors français : les mots composés (de « Geschäftsbedingungen », nl, sv, el) se coupaient sans tiret au milieu du mot ; titre légal un peu plus large et césure de la langue (rendu FR inchangé) */
html:not(:lang(fr)) .hx-pagehero--f .hx-h1{hyphens:auto;overflow-wrap:break-word}
html:not(:lang(fr)) .hx-pagehero--fl .hx-h1{max-width:22ch}
/* langues : agent D : carte tarifaire mise en avant sans pastille hors français (le live écrit « Plus demandé » / « populaire » en français dans toutes les langues) : pas de libellé « Populaire » par défaut */
.hx-cards--pricing .hx-card--featured:not([data-badge])::before{content:none}
/* langues : agent A : bandeau cookies borné à sa carte (de, nl, es, el débordaient à 390 px : la grille prenait la largeur mini des boutons) */
.hx-cc__in{grid-template-columns:minmax(0,1fr)}
.hx-cc__actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.hx-cc .hx-cc__btn{white-space:normal;text-align:center;line-height:1.2;min-width:0}
/* langues : agent F : encadré pays, paragraphes espacés */
.hx-countrynote .hx-note > * + *{margin-top:.6em}
@media (max-width:600px){.hx-cc .hx-cc__btn{padding-inline:10px;font-size:.95rem}}
/* langues : agent B : mots longs (de, gr…) : « Niederspannungstransformator » sortait de sa carte, « Durchschnittsbewertung » de sa colonne ; boutons longs du hero et du formulaire plus larges que l'écran à 390 px (nowrap) : retour à la ligne permis hors FR, un bouton par ligne s'ils ne tiennent pas côte à côte. FR inchangé. */
html:not([lang|="fr"]) :is(.hx-tile .hx-h4,.hx-stats__row span,.hx-contact__side .hx-h3){hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
@media (max-width:600px){html:not([lang|="fr"]) main .hx-actions .hx-btn{flex:1 1 auto}html:not([lang|="fr"]) main .hx-btn{white-space:normal;line-height:1.25;text-align:center;max-width:100%}}
/* langues : agent E : encart auteur des articles à 390 px : les deux boutons (de « Vollständiges Profil ansehen », el) passaient sur 3 lignes côte à côte ; empilés pleine largeur hors français (rendu FR inchangé) */
@media (max-width:600px){html:not([lang|="fr"]) .hx-author > div{width:100%}html:not([lang|="fr"]) .hx-author .hx-actions{flex-direction:column;align-items:stretch}html:not([lang|="fr"]) .hx-author .hx-actions .hx-btn{justify-content:center}}
/* langues : agent C : fiches produit hors français. Badge « Recommandé » du comparatif : le CSS du live l'écrit en français dans toutes les langues, retiré hors fr/be/ch/lu (classe hx-auto--nobadge) ; bouton de l'encart « Créez le vôtre » (de, gr : 3 à 4 lignes à 390 px) empilé pleine largeur (hx-perso--stack) ; bouton de la barre d'ajout collante sur une ligne. Rendu FR inchangé. */
.hx-auto--nobadge .hx-table thead th:nth-child(2)::before{content:none}
@media (max-width:600px){.hx-perso--stack .hx-actions{flex-direction:column;align-items:stretch}.hx-perso--stack .hx-actions .hx-btn{justify-content:center}.hx-perso--stack .hx-actions .hx-chip{align-self:flex-start}.hx-pstick .hx-pstick__in .hx-btn{white-space:nowrap}}
/* tableau d'article resté hors de son cadre .hx-table (balisage mal fermé sur le site) : défilement horizontal et habillage DA */
.hx-prose :not(.hx-table) > table{display:block;max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-card);border-collapse:separate;border-spacing:0;font-size:.9rem;background:#fff}
.hx-prose :not(.hx-table) > table th{background:var(--soft);color:var(--c-violet);font:600 .72rem/1.3 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:14px 16px;text-align:left;white-space:nowrap}
.hx-prose :not(.hx-table) > table td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:top}
/* capture du simulateur sur l'accueil, entre les étapes et le texte (03/10) */
.hx-simshot{display:block;max-width:1080px;margin:var(--sub) auto 0;border-radius:var(--r-card);overflow:hidden;border:1px solid var(--line);box-shadow:0 30px 80px rgba(19,21,23,.14);transition:transform .3s var(--ease,ease),box-shadow .3s}
.hx-simshot:hover{transform:translateY(-4px);box-shadow:0 40px 90px rgba(107,77,255,.22)}
.hx-simshot img{display:block;width:100%;height:auto}
.hx-simshot + .hx-how__foot{margin-top:var(--sub)}
@media (max-width:600px){.hx-simshot{border-radius:14px}}
/* badge du comparatif des fiches : traduit par langue comme sur le site corrigé le 03/10 */
.hx-auto--cmp:lang(en) .hx-table thead th:nth-child(2)::before{content:"Recommended"}
.hx-auto--cmp:lang(de) .hx-table thead th:nth-child(2)::before{content:"Empfohlen"}
.hx-auto--cmp:lang(es) .hx-table thead th:nth-child(2)::before{content:"Recomendado"}
.hx-auto--cmp:lang(it) .hx-table thead th:nth-child(2)::before{content:"Consigliato"}
.hx-auto--cmp:lang(nl) .hx-table thead th:nth-child(2)::before{content:"Aanbevolen"}
.hx-auto--cmp:lang(pt) .hx-table thead th:nth-child(2)::before{content:"Recomendado"}
.hx-auto--cmp:lang(sv) .hx-table thead th:nth-child(2)::before{content:"Rekommenderas"}
.hx-auto--cmp:lang(el) .hx-table thead th:nth-child(2)::before{content:"Προτείνεται"}
.hx-auto--cmp:lang(nb) .hx-table thead th:nth-child(2)::before,.hx-auto--cmp:lang(no) .hx-table thead th:nth-child(2)::before{content:"Anbefalt"}
.hx-simshot{max-width:960px} /* capture du simulateur bornée à 600 px de haut */

/* landings langues : chiffres « 27 ans / 45 ans / 11 ans » sur une ligne quand l'unité est longue (grec, anglais, allemand) */
@media (max-width:600px){.hx-lp:lang(el) .hx-lp-hours strong{font-size:1.05rem}}
@media (max-width:380px){.hx-lp:lang(en) .hx-lp-hours strong,.hx-lp:lang(de) .hx-lp-hours strong{font-size:1.1rem}}
/* boutique : tri à droite du compteur (02/10, même composant que les pages catégories), sous la ligne des filtres */
.hx-shop__filters+.hx-shop__bar{margin-top:16px}
@media (max-width:600px){.hx-shop__filters+.hx-shop__bar .hx-shop__sort{width:100%}}

/* 02/10 (retour de Guillaume) : bouton de la typographie choisie dans le simulateur, texte illisible (sombre sur fond encre) */
.hx-sim .sim-font-dropdown-label,.hx-sim .sim-font-dropdown-chevron{color:#fff}

/* 02/10 : contrastes relevés par le contrôle automatique après retrait de la couche de l ancien design (WCAG AA 4,5:1) */
.hx-review:nth-child(5n+2) .hx-avatar,.hx-review:nth-child(5n+3) .hx-avatar{color:var(--ink)}
.hx-field input::placeholder,.hx-field textarea::placeholder{color:#636975}
.hx-pick__btn:not(.has-value) .hx-pick__lab{color:#636975}
.hx-tldr .hx-kicker,.hx-contact__social .hx-kicker,.hx-soft .hx-kicker,[class*="hx-"][style*="t-violet"] a{color:#5536e0}
.hx-contact a[href$="guillaume-schlupp/"]{color:#5536e0}

/* 02/10 (retour de Guillaume) : cartes d articles posées sur une section grise (articles connexes) : fond blanc et filet pour les détacher */
.hx-soft .hx-post{background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(19,21,23,.04)}
.hx-soft .hx-post:hover{box-shadow:0 12px 28px rgba(19,21,23,.08)}

/* 02/10 (retour de Guillaume) : filet autour de toutes les cartes d articles (accueil, blog, articles connexes) */
.hx-post{border:1px solid var(--line)}

/* 02/10 (retour de Guillaume) : filet autour de toutes les cartes produit (accueil, boutique, catégories, produits associés) */
.hx-prod__link,.hx-relprod{border:1px solid var(--line);box-sizing:border-box}

/* 02/10 (retour de Guillaume) : la photo du colis est carrée ; partout où elle est posée (fiches produit, accueil, pages métier, landings)
   elle s affiche entière, jamais recadrée, pour que tous les accessoires restent visibles */
img[src*="colis-"]{aspect-ratio:1/1 !important;object-fit:contain !important;height:auto !important;width:100%}
/* paiement, parité avec la page actuelle (02/10 soir) : récapitulatif d'abord, formulaire, avis Trustpilot sous le récapitulatif
   (ordinateur) et après le formulaire (mobile) ; section de facturation dépliante */
.hx-checkout__grid--v2{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"sum form" "rev form";grid-template-rows:auto 1fr}
.hx-checkout__grid--v2 .hx-checkout__summary{grid-area:sum;position:static}
.hx-checkout__grid--v2 .hx-checkout__form{grid-area:form}
.hx-checkout__reviews{grid-area:rev;display:flex;flex-direction:column;gap:12px;align-self:start}
.hx-checkout__reviews .hx-review{padding:18px 20px;gap:10px;background:#fff;border:1.5px solid var(--line)}
.hx-checkout__reviews .hx-review p{font-size:.92rem;line-height:1.5}
.hx-checkout__reviews .hx-avatar{width:32px;height:32px;font-size:.7rem;flex:none}
.hx-checkout__reviews .hx-stars svg{width:14px;height:14px}
.hx-checkout .hx-opt{font-weight:400;color:var(--ink-3)}
.hx-checkout .hx-reassure{font-weight:400;font-size:.92rem}
.hx-checkout .hx-reassure li{align-items:flex-start}
.hx-checkout .hx-reassure .hx-ico{flex:none;margin-top:2px}
.hx-checkout .hx-reassure strong{font-weight:600}
.hx-checkout__items li>div:first-of-type{min-width:0}
.hx-checkout__amt{flex:none!important;align-items:flex-end;text-align:right}
.hx-checkout__amt small{font-size:.8rem;color:var(--ink-3)}
.hx-checkout__express{align-items:stretch}
.hx-checkout__express .hx-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;width:100%}
.hx-checkout__express .hx-actions .hx-btn{width:100%;min-width:0;padding-left:12px;padding-right:12px}
.hx-checkout__or{display:flex;align-items:center;gap:16px;margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}
.hx-checkout__or::before,.hx-checkout__or::after{content:"";flex:1;height:1px;background:var(--line)}
.hx-billing__toggle{margin-top:18px;font-weight:500}
.hx-billing{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.hx-billing[hidden]{display:none}
.hx-billing .hx-h4{margin:0 0 16px}
.hx-billing .hx-h4:focus{outline:0}
.hx-ctype{border:0;margin:0 0 28px;padding:0;min-width:0}
.hx-ctype legend{margin:0 0 12px;padding:0}
.hx-ctype__opts{display:flex;flex-wrap:wrap;gap:12px 28px}
.hx-ctype__opts .hx-optin{font-weight:500}
.hx-ctype .hx-form{margin-top:16px}
.hx-ctype [data-pro][hidden]{display:none}
.hx-checkout__form [data-pay]{width:100%}
@media (max-width:900px){.hx-checkout__grid--v2{grid-template-columns:minmax(0,1fr);grid-template-areas:"sum" "form" "rev";grid-template-rows:none}
.hx-checkout__grid--v2 .hx-checkout__summary{padding:20px;gap:14px}.hx-checkout__block{padding:20px 16px}}

/* 02/10 (retour de Guillaume) : toutes les cartes produit d une même rangée ont la même hauteur (accueil, boutique, catégories, produits associés) ;
   le prix reste aligné en bas de carte */
.hx-prod{display:flex}
.hx-prod[hidden]{display:none} /* 07/10 : les filtres de la boutique masquent les cartes par l'attribut hidden, que display:flex écrasait */
.hx-prod__link{display:flex;flex-direction:column;width:100%;height:100%}
.hx-prod__body{flex:1 1 auto}
.hx-prod__price{margin-top:auto}
.hx-relprods{align-items:stretch}.hx-relprod{height:100%}

/* ── 02/10 (demande de Guillaume) : en-têtes de page (hero) sur fond sombre, éléments adaptés ────────────────────────
   Concerne .hx-hero (accueil, pages à visuel) et .hx-pagehero (pages métier, blog, catégories, légales, remerciement).
   Exclus : le panier (page utilitaire) et les en-têtes d'articles (lecture). Les blocs blancs posés dans un hero
   (pastilles sur photo, étiquettes, champ de recherche) gardent leur texte encre. */
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)){background:var(--dark);color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) :is(.hx-h1,.hx-h2,.hx-h3,.hx-lead,.hx-p,p,li,.hx-hero__trust,.hx-author__role,.hx-form__note,.hx-checks,.hx-reassure,.hx-stats__row,.hx-stats__row strong,.hx-stats__row span,.hx-hero__stars){color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-kicker{color:#9fdcff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) a:not(.hx-btn){color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-btn--dark{background:#fff;color:var(--ink)}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-btn--outline{border-color:rgba(255,255,255,.8);color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-btn--outline:hover{background:#fff;color:var(--ink)}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-chip:not(.hx-chip--on-img):not(.hx-chip--float){background:rgba(255,255,255,.12);color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) :focus-visible{outline-color:#fff}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-hero__media{background:var(--dark-2)}
/* blocs clairs posés dans un hero : texte encre conservé */
:is(.hx-hero,.hx-pagehero) :is(.hx-badge,.hx-lp-tag,.hx-chip--on-img,.hx-chip--float,.hx-search),
:is(.hx-hero,.hx-pagehero) :is(.hx-badge,.hx-lp-tag,.hx-chip--on-img,.hx-chip--float,.hx-search) :is(span,strong,small,p,input,a:not(.hx-btn)){color:var(--ink)}
:is(.hx-hero,.hx-pagehero) .hx-search .hx-btn--dark{background:var(--ink);color:#fff}
/* fil d'Ariane placé juste avant un hero sombre : même fond, pour éviter une bande blanche entre l'en-tête et le hero */
.hx-crumbs:has(+ :is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart))){background:var(--dark);color:#fff;padding-bottom:2px}
.hx-crumbs:has(+ :is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart))) a{color:#fff}
/* la bande sombre a besoin d'air en bas, puis la section suivante reprend son espacement normal */
.hx-pagehero:not(.hx-pagehero--cart){padding-bottom:clamp(40px,5vw,72px)}
.hx-pagehero--joined + .hx-section:not(.hx-soft):not(.hx-dark){padding-top:clamp(40px,5vw,72px)}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) .hx-h1 :is(span,em,strong,b,i){color:#fff}

/* 02/10 (retour de Guillaume) : la section qui suit un hero sombre ne doit plus s y coller. Quand elles étaient toutes deux blanches,
   plusieurs sections démarraient sans marge haute (logos clients, sections « jointes ») ; elles reprennent un espacement franc. */
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) + :not(.hx-dark):not(.hx-hero):not(.hx-pagehero){padding-top:clamp(48px,6vw,88px) !important}
:is(.hx-hero,.hx-pagehero:not(.hx-pagehero--cart)) + .hx-soft{padding-top:clamp(48px,6vw,88px) !important}

/* 02/10 (demande de Guillaume) : avis de la page de paiement, même habillage que la section avis de l'accueil
   (fond rose pâle, cartes blanches sans filet gris, étoiles vertes, avatars colorés) */
.hx-checkout__reviews{background:var(--t-pink);padding:18px;border-radius:var(--r-card);gap:14px}
.hx-checkout__reviews .hx-review{padding:22px 22px 20px;gap:14px;background:var(--paper);border:1px solid rgba(255,61,138,.08);border-radius:var(--r-card)}
.hx-checkout__reviews .hx-review p{font-size:.98rem;line-height:1.55}
.hx-checkout__reviews .hx-avatar{width:40px;height:40px;font-size:.8rem}
.hx-checkout__reviews .hx-stars svg{width:16px;height:16px}
/* Sous-menu « Néon personnalisé » : Studio IA, Studio AR (03/10) */
.hx-nav__item{position:relative;display:flex;align-items:center}
.hx-nav__item>a::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);opacity:.6}
.hx-nav__sub{position:absolute;top:100%;left:-14px;z-index:60;display:grid;min-width:180px;padding:8px;border:1px solid var(--line);border-radius:var(--r-small);background:var(--paper);box-shadow:0 14px 34px rgba(19,21,23,.12);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}
.hx-nav__item:hover .hx-nav__sub,.hx-nav__item:focus-within .hx-nav__sub{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.hx-nav__sub a{padding:10px 12px;border-radius:8px;white-space:nowrap}
.hx-nav__sub a:hover,.hx-nav__sub a:focus-visible{background:var(--soft);color:var(--ink)}
.hx-mobile a.hx-mobile__sub{padding:8px 0 8px 16px;font-size:.95rem;color:var(--ink-2)}
@media (prefers-reduced-motion:reduce){.hx-nav__sub{transition:none}}
/* Pictos des studios dans le sous-menu et le menu mobile, aux couleurs des boutons de chaque studio (03/10) */
.hx-nav__sub a,.hx-mobile a.hx-mobile__sub{display:flex;align-items:center;gap:10px}
.hx-studio-ico{display:inline-grid;place-items:center;flex:none;width:28px;height:28px;border-radius:8px}
.hx-studio-ico svg{width:17px;height:17px}
.hx-studio-ico--ia{background:linear-gradient(135deg,#6B4DFF,#9B4DFF);color:#fff}
.hx-studio-ico--ar{background:#24D9C7;color:var(--ink)}
/* Section « Nos studios » (accueil et néon sur mesure, marchés français ; 03/10) : deux outils côte à côte, chacun dans sa couleur (violet IA, turquoise réalité augmentée) */
.hx-studios{position:relative;overflow:hidden}
.hx-studios::before,.hx-studios::after{content:"";position:absolute;z-index:0;width:560px;height:560px;border-radius:50%;filter:blur(90px);opacity:.22;pointer-events:none}
.hx-studios::before{left:-160px;top:22%;background:#24D9C7;opacity:.16}   /* réalité augmentée à gauche */
.hx-studios::after{right:-160px;top:30%;background:#6B4DFF}
.hx-studios .hx-wrap{position:relative;z-index:1}   /* halos DERRIÈRE les cartes : chaque carte garde sa seule couleur */
.hx-studios__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);text-align:left}
.hx-outil{--c:107,77,255;display:flex;flex-direction:column;border-radius:var(--r-card);background:var(--dark-2);border:1px solid rgba(var(--c),.35);overflow:hidden;
  box-shadow:0 0 0 1px rgba(var(--c),.06),0 24px 60px -28px rgba(var(--c),.55);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.hx-outil--ar{--c:36,217,199}
.hx-outil:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(var(--c),.18),0 30px 70px -26px rgba(var(--c),.7)}
.hx-outil__media{margin:0;position:relative;aspect-ratio:4/3;background:#0b0c0e;border-bottom:1px solid rgba(var(--c),.25)}
.hx-outil__media::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,#6B4DFF,#9B4DFF)}
.hx-outil--ar .hx-outil__media::after{background:#24D9C7}
.hx-outil__media img{width:100%;height:100%;object-fit:cover;display:block}
.hx-outil__corps{display:flex;flex-direction:column;gap:16px;padding:clamp(24px,3vw,36px);flex:1}
.hx-outil__nom{display:flex;align-items:center;gap:12px;margin:0;font:600 1rem/1.2 var(--display);color:var(--on-dark)}
.hx-outil__nom small{display:block;margin-top:3px;font:500 .8125rem/1.2 var(--body);color:rgb(var(--c));color:color-mix(in srgb,rgb(var(--c)) 70%,#fff)}
.hx-outil__ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#6B4DFF,#9B4DFF);color:#fff}
.hx-outil--ar .hx-outil__ico{background:#24D9C7;color:var(--ink)}
.hx-outil__ico svg{width:24px;height:24px}
.hx-outil .hx-h3{margin:4px 0 0;color:var(--on-dark)}
.hx-outil__texte{margin:0;color:var(--on-dark-2)}
.hx-outil__texte a{color:var(--on-dark);text-decoration:underline;text-decoration-color:rgba(var(--c),.8);text-underline-offset:3px}
.hx-outil__points{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.hx-outil__points li{display:flex;gap:10px;align-items:flex-start;color:var(--on-dark)}
.hx-outil__points svg{flex:none;width:20px;height:20px;margin-top:1px;padding:3px;border-radius:50%;background:rgba(var(--c),.18);color:color-mix(in srgb,rgb(var(--c)) 75%,#fff);stroke-width:2.2}
.hx-outil__actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:auto;padding-top:8px}   /* même disposition des deux côtés */
.hx-outil__cta{background:linear-gradient(90deg,#6B4DFF,#9B4DFF);color:#fff!important}
.hx-outil--ar .hx-outil__cta{background:#24D9C7;color:var(--ink)!important}
.hx-outil__cta:hover{opacity:.9}
.hx-outil__lien{font:500 .95rem/1.3 var(--body);color:var(--on-dark);text-decoration:underline;text-decoration-color:rgba(var(--c),.8);text-underline-offset:4px}
.hx-outil__lien:hover{color:color-mix(in srgb,rgb(var(--c)) 70%,#fff)}
.hx-studios__foot{display:grid;justify-items:center;gap:10px;margin-top:clamp(32px,4vw,48px)}
.hx-studios__devis{margin:0;color:var(--on-dark-2)}
.hx-studios__devis a{color:var(--on-dark);text-decoration:underline;text-underline-offset:4px}
@media (max-width:900px){.hx-studios__grid{grid-template-columns:1fr}.hx-outil__actions{align-items:stretch;text-align:center}.hx-outil__actions .hx-btn{justify-content:center}
  .hx-studios::before{left:-240px;top:12%}.hx-studios::after{right:-240px;top:auto;bottom:8%}}
@media (prefers-reduced-motion:reduce){.hx-outil{transition:none}.hx-outil:hover{transform:none}}
/* Variante claire de « Nos studios » (page néon personnalisé : entre la section sombre du colis et le bandeau des garanties) ;
   violet et turquoise assombris quand ils servent de couleur de texte, pour le contraste sur fond blanc */
.hx-studios--clair{background:linear-gradient(90deg,#eefbf9,#f5f2ff);color:var(--ink)}   /* teinté aux couleurs des deux studios : se détache d'une section blanche (supports) comme du bandeau lavande */
.hx-studios--clair::before,.hx-studios--clair::after{opacity:.1}
.hx-studios--clair .hx-outil--ia{--t:#5b3df0}
.hx-studios--clair .hx-outil--ar{--t:#0b7f74}
.hx-studios--clair .hx-outil{background:var(--paper);box-shadow:0 0 0 1px rgba(var(--c),.08),0 22px 50px -30px rgba(var(--c),.55)}
.hx-studios--clair .hx-outil:hover{box-shadow:0 0 0 1px rgba(var(--c),.2),0 28px 60px -26px rgba(var(--c),.6)}
.hx-studios--clair .hx-outil__nom,.hx-studios--clair .hx-outil .hx-h3,.hx-studios--clair .hx-outil__points li{color:var(--ink)}
.hx-studios--clair .hx-outil__texte,.hx-studios--clair .hx-studios__devis,.hx-studios--clair .hx-trustline{color:var(--ink-2)}
.hx-studios--clair .hx-outil__nom small,.hx-studios--clair .hx-outil__points svg{color:var(--t)}
.hx-studios--clair .hx-outil__points svg{background:rgba(var(--c),.14)}
.hx-studios--clair .hx-outil__lien,.hx-studios--clair .hx-outil__texte a,.hx-studios--clair .hx-studios__devis a{color:var(--ink)}
.hx-studios--clair .hx-outil__lien:hover{color:var(--t)}
/* Note Trustpilot sous le titre des fiches produit (03/10) */
.hx-product__trust{display:inline-flex;align-items:center;gap:8px;margin:-6px 0 14px;font:500 .9rem/1.3 var(--body);color:var(--ink-2);text-decoration:none}
.hx-product__trust .hx-stars{margin:0}
.hx-product__trust .hx-stars svg{width:15px;height:15px}
.hx-product__trust:hover span:last-child{text-decoration:underline;text-underline-offset:3px}
/* Simulateur sur mobile (03/10) : la zone du néon (height:80 % d'un cadre sans hauteur fixée) retombait à la hauteur du texte,
   et le simulateur réduisait le néon à 16 px (constaté aussi en ligne). Hauteur explicite, déduite de l'aperçu (45vh). */
@media (max-width:900px){.hx-sim .sim-neon-wrap{height:calc(45vh - 110px);min-height:170px}}
/* Accueil, capture du simulateur sur mobile : format téléphone, en hauteur (03/10) */
.hx-simshot picture{display:block}
@media (max-width:700px){.hx-simshot{max-width:300px;border-radius:28px;border:6px solid var(--ink);box-shadow:0 24px 60px rgba(19,21,23,.22)}}

/* 08/10/2026 (demande de Guillaume) : top produits de la home sans défilement automatique, flèches précédent / suivant ; logos juste sous le hero */
.hx-prod__slider{position:relative}
.hx-prod__track{scroll-behavior:smooth;scroll-padding-inline:var(--pad)}  /* l aimantation se cale sur la marge : rangée à 0 au départ, flèche gauche masquée */
.hx-prod__arrow{position:absolute;top:calc(50% - 26px);z-index:2;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 24px rgba(0,0,0,.14);cursor:pointer;transition:background .2s,color .2s,opacity .2s,transform .2s}
.hx-prod__arrow svg{width:22px;height:22px}
.hx-prod__arrow:hover{background:var(--ink);color:#fff;transform:scale(1.05)}
.hx-prod__arrow:focus-visible{outline:2px solid var(--c-violet);outline-offset:3px}
.hx-prod__arrow--prev{left:clamp(8px,2vw,28px)}
.hx-prod__arrow--next{right:clamp(8px,2vw,28px)}
.hx-prod__arrow[disabled]{opacity:0;pointer-events:none}
@media (max-width:600px){.hx-prod__arrow{width:42px;height:42px;top:calc(50% - 21px)}.hx-prod__arrow svg{width:18px;height:18px}}
.hx-hero + .hx-logos{padding-top:clamp(28px,3.4vw,48px)}


/* ── Pré-intégration : raccords entre la DA et les composants conservés du site (ajouté à hx.css par gen-da.py) ── */
body.hx-da{font-family:var(--body);color:var(--ink);background:#fff}
body.hx-da h1,body.hx-da h2,body.hx-da h3,body.hx-da h4{font-family:var(--display)}
/* bandeau de consentement réel (CookieConsent.astro, mode Consentement v2) habillé comme le bandeau de la maquette */
body.hx-da .hn-cc{color:var(--ink);font-family:var(--body)}
body.hx-da .hn-cc__in{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);box-shadow:0 24px 60px rgba(19,21,23,.18)}
body.hx-da .hn-cc__titre{font-family:var(--display);color:var(--ink);font-size:1.1rem}
body.hx-da .hn-cc__titre::before{background:var(--c-violet);box-shadow:0 0 12px var(--c-violet)}
body.hx-da .hn-cc__texte,body.hx-da .hn-cc__desc{color:var(--ink)}
body.hx-da .hn-cc__lien{color:var(--c-violet)!important}
body.hx-da .hn-cc__cat{color:var(--ink)}
body.hx-da .hn-cc__ligne{background:var(--soft);border:0;border-radius:14px}
body.hx-da .hn-cc__toujours{color:#00795b}
body.hx-da .hn-cc__btn{font-family:var(--body);border-radius:999px}
body.hx-da .hn-cc__btn--refus{background:#fff;color:var(--ink);border:1.5px solid var(--ink)}
body.hx-da .hn-cc__btn--refus:hover{background:var(--soft)}
body.hx-da .hn-cc__btn--ok{background:var(--ink);color:#fff;border:1.5px solid var(--ink)}
body.hx-da .hn-cc__btn--ok:hover{box-shadow:0 8px 24px rgba(19,21,23,.25)}
body.hx-da .hn-cc__perso{color:var(--ink);font-family:var(--body)}
body.hx-da .hn-cc__switch:checked{background:var(--c-violet)}

/* 02/10 (retour de Guillaume) : bouton « Gérer les cookies » du pied de page, aligné et dessiné comme les liens voisins */
.hx-footer .hn-cc-gerer{display:block;width:auto;padding:0;margin:0;border:0;background:none;text-align:left;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;opacity:.85;text-decoration:none;cursor:pointer;transition:opacity .2s}
.hx-footer .hn-cc-gerer:hover,.hx-footer .hn-cc-gerer:focus-visible{opacity:1;text-decoration:underline}
.hx-footer .hn-cc-gerer{font-size:.925rem;line-height:1.55}

/* Polices de la DA hébergées sur le site (Manrope et Inter variables, sous-ensembles latin, latin étendu et grec) : pas d'appel à Google Fonts */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url('/da/fonts/inter-greek.woff2') format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url('/da/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url('/da/fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500 700;font-display:swap;src:url('/da/fonts/manrope-greek.woff2') format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500 700;font-display:swap;src:url('/da/fonts/manrope-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500 700;font-display:swap;src:url('/da/fonts/manrope-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}


/* ── Formulaires DA : états d'envoi, d'erreur et de succès, pièces jointes (js/forms.js) ── */
.hx-form__msg{margin:0;padding:12px 16px;border-radius:var(--r-small);font:500 .92rem/1.45 var(--body)}
.hx-form__msg[hidden]{display:none}
.hx-form__msg.is-error{background:#fdecef;color:#a3122f;border:1px solid #f4b7c3}
.hx-form__msg.is-success{background:var(--t-mint);color:#00664c;border:1px solid #a9e5cf}
.hx-field input.is-invalid,.hx-field textarea.is-invalid,.hx-select select.is-invalid{border-color:#d1294b;box-shadow:0 0 0 4px rgba(209,41,75,.12)}
.hx-choice.is-invalid .hx-choice__opt{border-color:#d1294b}
.hx-choice.is-invalid legend{color:#a3122f}
.hx-form button[type=submit]:disabled{opacity:.6;cursor:progress}
.hx-upload{position:relative;transition:border-color .2s,background .2s}
.hx-upload.is-drag{border-color:var(--c-violet);background:var(--t-violet)}
.hx-upload__list{display:flex;flex-direction:column;gap:6px;margin:4px 0 0}
.hx-upload__list:empty{display:none}
.hx-upload__list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 14px;border:1px solid var(--line);border-radius:var(--r-small);background:#fff;font-size:.88rem;min-width:0}
.hx-upload__list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.hx-upload__list button{flex:none;width:32px;height:32px;border:0;border-radius:50%;background:var(--soft);color:var(--ink);cursor:pointer;font-size:.85rem}
.hx-upload__list button:hover{background:var(--line)}
.hx-dark .hx-form--card .hx-upload__list li{color:var(--ink)}

/* ── Formulaires DA : sélecteurs à aperçu des listes Typographie (32 entrées) et Couleur LED (15), js/forms.js ── */
.hx-select[hidden]{display:none}
.hx-pick{position:relative}
.hx-pick__btn{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 44px 8px 18px;border:1.5px solid var(--line);border-radius:14px;background:#fff;font:400 1rem/1.4 var(--body);color:#636975;text-align:left;cursor:pointer;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.hx-pick__btn.has-value{color:var(--ink)}
.hx-pick__btn:focus-visible,.hx-pick.is-open .hx-pick__btn{outline:0;border-color:var(--c-violet);box-shadow:0 0 0 4px rgba(107,77,255,.15)}
.hx-pick__btn .hx-ico{position:absolute;right:16px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--ink);pointer-events:none;transition:transform .25s var(--ease)}
.hx-pick.is-open .hx-pick__btn .hx-ico{transform:translateY(-50%) rotate(180deg)}
.hx-pick__lab{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hx-pick__btn.has-font .hx-pick__lab{font-size:1.3rem;line-height:1.2}
.hx-pick__sw{flex:none;width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(19,21,23,.18)}
.hx-pick__sw[hidden]{display:none}
.hx-pick__panel{position:absolute;z-index:40;top:calc(100% + 6px);left:0;right:0;max-height:min(380px,60vh);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:8px;border:1.5px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 44px rgba(19,21,23,.16);display:grid;gap:6px}
.hx-pick__panel[hidden]{display:none}
.hx-pick__opt{display:flex;align-items:center;gap:12px;min-width:0;min-height:46px;margin:0;padding:8px 12px;border:2px solid transparent;border-radius:var(--r-small);background:transparent;font:500 .95rem/1.3 var(--body);color:var(--ink);text-align:left;cursor:pointer}
.hx-pick__opt:hover{background:var(--soft)}
.hx-pick__opt:focus-visible{outline:0;border-color:var(--c-violet)}
.hx-pick__opt.is-on{background:var(--t-violet);border-color:var(--c-violet)}
.hx-pick__name{min-width:0}
/* couleurs : liste à pastilles, deux colonnes dès que la place le permet */
.hx-pick--color .hx-pick__panel{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
/* typographies : entrées larges en tête, puis tuiles sombres avec le texte du client écrit dans la police */
.hx-pick--typo .hx-pick__panel{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}
.hx-pick--typo .hx-pick__opt{flex-direction:column;justify-content:center;gap:2px;min-height:84px;padding:6px 0 8px;background:var(--ink);color:#fff;text-align:center}
.hx-pick--typo .hx-pick__opt:hover{background:#23262a}
.hx-pick--typo .hx-pick__opt.is-on{background:var(--ink);border-color:var(--c-violet);box-shadow:0 0 0 2px var(--t-violet)}
.hx-pick--typo .hx-pick__opt:focus-visible{border-color:#fff;box-shadow:0 0 0 2px var(--c-violet)}
.hx-pick__sample{display:block;max-width:100%;padding:4px 8px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.45rem;line-height:1.3;text-shadow:0 0 6px rgba(255,245,225,.9),0 0 18px rgba(255,214,140,.55)}
.hx-pick--typo .hx-pick__name{font:500 .78rem/1.2 var(--body);letter-spacing:.02em;color:rgba(255,255,255,.82)}
.hx-pick--typo .hx-pick__opt--wide{grid-column:1/-1;flex-direction:row;min-height:46px;padding:10px 14px;background:var(--soft);color:var(--ink)}
.hx-pick--typo .hx-pick__opt--wide:hover{background:var(--line)}
.hx-pick--typo .hx-pick__opt--wide.is-on{background:var(--t-violet)}
.hx-pick--typo .hx-pick__opt--wide .hx-pick__name{font:600 .9rem/1.3 var(--body);letter-spacing:0;color:var(--ink)}
.hx-pick--typo .hx-pick__opt--wide:focus-visible{border-color:var(--c-violet);box-shadow:none}

/* ── Boutique (03/10) : états réels du tunnel sur les pages DA (js/shop.js), ajouté à hx.css par gen-da.py ── */
/* lignes d'exemple de la maquette : jamais visibles sur le site, le panier réel les remplace */
body.hx-da [data-hx-demo]{display:none!important}
/* montants d'exemple masqués le temps que le panier réel soit rendu (script différé) */
body.hx-da:not(.hx-shop-ready) .hx-pagehero--cart [data-count],body.hx-da:not(.hx-shop-ready) .hx-cart .hx-totals dd,
body.hx-da:not(.hx-shop-ready) .hx-checkout [data-totals] dd,body.hx-da:not(.hx-shop-ready) .hx-checkout [data-pay]{visibility:hidden}
/* panier */
.hx-cart__ph{display:grid;place-items:center;width:120px;height:120px;border-radius:16px;background:var(--soft);color:var(--ink-3)}
.hx-cart__ph--s{width:64px;height:64px;border-radius:12px;flex:none}
.hx-cart__neon{font-size:.8rem;line-height:1.6;color:var(--ink-2)}
.hx-cart__neon b{font-weight:600;color:var(--c-violet)}
.hx-cart__edit{align-self:flex-start;min-height:36px;padding:8px 16px;margin-top:6px;font-size:.8rem}
.hx-cart__row{transition:opacity .3s var(--ease),transform .3s var(--ease)}
.hx-cart__row.is-updating{opacity:.5;pointer-events:none}
.hx-cart__row.is-removing{opacity:0;transform:translateX(16px);pointer-events:none}
.hx-qty button:disabled{opacity:.35;cursor:default}
@media (max-width:900px){.hx-cart__ph{width:88px;height:88px}}
/* fiche produit : ajout en cours, ajouté */
.hx-btn.is-loading{opacity:.6;pointer-events:none}
.hx-btn.is-success{background:var(--accent);border-color:var(--accent)}
.hx-toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));z-index:210;display:flex;align-items:center;gap:10px;max-width:min(92vw,440px);padding:12px 18px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font:500 .9rem/1.3 var(--body);transform:translate(-50%,16px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease),transform .25s var(--ease)}
.hx-toast.is-in{opacity:1;transform:translate(-50%,0)}
.hx-toast .hx-ico{width:18px;height:18px;color:var(--accent)}
.hx-toast.is-bad .hx-ico{display:none}
/* paiement : cases carte Stripe Elements, mêmes dimensions que les champs de la DA */
.hx-stripe.is-mounted{min-height:52px;padding:15px 18px;border:1.5px solid var(--line);border-radius:14px;background:#fff;transition:border-color .25s var(--ease),box-shadow .25s var(--ease);cursor:text}
.hx-stripe.is-focus{border-color:var(--c-violet);box-shadow:0 0 0 4px rgba(107,77,255,.15)}
.hx-stripe.is-error,.hx-field input.is-error,.hx-field textarea.is-error,.hx-select select.is-error{border-color:#d94444}
.hx-checkout__err{margin-top:-8px;text-align:center;color:#c62828;font-weight:500;font-size:.9rem}
.hx-checkout__status{font-size:.85rem;color:var(--ink-2)}
.hx-checkout__status.is-bad{color:#c62828}
.hx-checkout__items .hx-cart__neon{margin-top:2px}
.hx-coupon__fb{margin-top:8px;font-size:.85rem;color:#c62828}
.hx-coupon__fb.is-ok{color:var(--accent)}
.hx-coupon__list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.hx-coupon__item{display:flex;align-items:center;gap:10px;font-size:.9rem}
.hx-coupon__item span:nth-child(2){margin-left:auto;font-weight:600}
.hx-coupon__item button{width:28px;height:28px;border:0;border-radius:50%;background:var(--soft);cursor:pointer;font-size:1rem;line-height:1}
.hx-totals__disc dd{color:var(--accent)}
.hx-success__id{font:500 .8rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink-3);word-break:break-all}

/* 14/10/2026 (demande de Guillaume) : pas de bouton fixe « Demander un devis » dans le panier ni au paiement, toutes langues :
   le visiteur est en train d'acheter, le bouton le renvoyait vers le formulaire de devis. */
body:has([data-hx-shop="cart"]) .hx-sticky,body:has([data-hx-shop="checkout"]) .hx-sticky{display:none!important}


/* ── Landing pages « Mon logo en néon » en DA (landing/build-lp-da.py, pages hors Astro), ajouté à hx.css par gen-da.py ── */
/* barre collante mobile : masquée quand le formulaire est à l'écran (comportement de la landing en ligne) */
.hx-sticky.is-off{opacity:0;pointer-events:none;transform:translateY(24px)}
/* bouton « Gérer les cookies » inséré par le bandeau du site à côté du lien Cookies : même corps que les liens du pied */
.hx-lpfoot__legal{font-size:.875rem}

/* ── Espace client (Mon compte, 02/10) : compléments de la page compte en nouvelle DA, ajoutés à hx.css par gen-da.py.
   Les composants (hx-checkout__block, hx-form, hx-field, hx-btn, hx-chip, hx-reassure…) viennent de la feuille de la maquette ;
   ici, seulement ce que l'application js/account.js ajoute : onglets, cartes de commande, étapes de suivi, messages. ── */
.hx-account{padding:clamp(40px,6vw,88px) 0 var(--section)}
.hx-account .hx-section__head{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;margin-bottom:0}
.hx-account h1.hx-h2{max-width:none}
.hx-account .hx-lead{max-width:52ch}
.hx-account [hidden]{display:none!important}
.hx-account .hx-reassure{justify-content:center;color:var(--ink-2)}
.hx-account .hx-reassure li{display:inline-flex;align-items:center;gap:8px}
.hna-help{text-align:center;font-size:.95rem;color:var(--ink-2)}
.hna-help a,.hna-note a{text-decoration:underline;text-underline-offset:.15em;color:var(--ink)}
.hna-card > * + *{margin-top:16px}
.hna-card .hx-checkout__bh{margin-bottom:0}
.hna-text{color:var(--ink)}
.hna-muted{color:var(--ink-2);font-size:.95rem}
.hna-note{padding:14px 18px;border-radius:14px;background:var(--soft);font-size:.95rem;color:var(--ink)}
.hna-note--ok{background:var(--t-mint)}
.hna-note--warn{background:var(--t-amber)}
.hna-note--error{background:var(--t-pink)}
.hna-err{color:#b42318;font-size:.875rem;font-weight:500}
.hx-account .hx-field input[aria-invalid="true"],.hx-account .hx-select select[aria-invalid="true"]{border-color:#d94444}
.hx-account .hx-btn{border:2px solid var(--ink);cursor:pointer}
.hx-account .hx-btn--outline{background:#fff}
.hx-account .hx-btn:disabled{opacity:.55;cursor:default}
.hx-account .hna-btn{min-height:44px;padding:10px 22px;font-size:.9375rem}
/* tableau de bord */
.hna-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.hna-top .hna-muted{margin-top:6px;overflow-wrap:anywhere}
.hna-hello{letter-spacing:-.02em}
.hna-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px;margin-left:-4px;margin-right:-4px;scrollbar-width:none}
.hna-tabs::-webkit-scrollbar{display:none}
.hx-account .hna-tab{flex:none;gap:8px;min-height:44px;padding:0 18px;border:0;cursor:pointer;font-size:.9375rem}
.hx-account .hna-tab.is-on{background:var(--ink);color:#fff}
.hna-tab__n{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--r-pill);background:#fff;color:var(--ink);font-size:.75rem}
.hna-panel{display:flex;flex-direction:column;gap:18px}
.hna-panel:focus-visible{outline:2px solid var(--ink);outline-offset:6px;border-radius:var(--r-card)}
.hna-order__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.hna-chip{white-space:nowrap}
.hna-chip--pending{background:var(--t-amber);color:#6b4500}
.hna-chip--confirmed,.hna-chip--production,.hna-chip--shipped{background:var(--t-violet);color:#3a22b8}
.hna-chip--delivered,.hna-chip--paid{background:var(--t-mint);color:#0a5f43}
.hna-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 20px;margin:0}
.hna-meta dt{font-size:.8125rem;color:var(--ink-2)}
.hna-meta dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.hna-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-top:6px}
.hna-step{position:relative;display:flex;flex-direction:column;gap:2px;padding-top:24px;font-size:.875rem;color:var(--ink-2)}
.hna-step::before{content:"";position:absolute;left:0;right:0;top:6px;height:4px;border-radius:4px;background:var(--line)}
.hna-step__dot{position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--line)}
.hna-step.is-done{color:var(--ink)}
.hna-step.is-done::before{background:var(--c-violet)}
.hna-step.is-done .hna-step__dot{border-color:var(--c-violet);background:var(--c-violet)}
.hna-step.is-current .hna-step__dot{box-shadow:0 0 0 4px rgba(107,77,255,.18)}
.hna-step__label{font-weight:500}
.hna-step.is-current .hna-step__label{font-weight:700}
.hna-step__date{font-size:.8125rem;color:var(--ink-2)}
.hna-ship{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:18px;border-radius:16px;background:var(--soft)}
.hna-ship .hna-meta{flex:1 1 320px}
.hna-invoices{display:flex;flex-direction:column;gap:18px}
.hna-profile__title{padding-top:8px}
.hna-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:160px;color:var(--ink-2)}
.hna-spin{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--c-violet);animation:hna-spin .8s linear infinite}
@keyframes hna-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.hna-spin{animation-duration:2.4s}}
@media (max-width:600px){
  .hx-account .hx-checkout__block{padding:18px}
  .hna-steps{grid-template-columns:minmax(0,1fr);gap:0;padding-top:0}
  .hna-step{flex-direction:row;align-items:baseline;gap:8px;padding:0 0 14px 28px}
  .hna-step::before{left:6px;right:auto;top:0;bottom:0;width:4px;height:auto}
  .hna-step:last-child::before{bottom:auto;height:8px}
  .hna-step__dot{top:3px}
  .hna-step__date{margin-left:auto}
  .hx-account .hx-actions .hx-btn{flex:1 1 100%}
  .hx-account .hna-top .hx-btn{flex:0 0 auto}
}
.hna-view > * + *{margin-top:20px}
.hx-account [tabindex="-1"]:focus{outline:0}
/* articles de la commande */
.hna-items{padding:16px 18px;border-radius:16px;background:var(--soft)}
.hna-items__title{font:600 .8125rem/1 var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}
.hna-items ul{display:flex;flex-direction:column;gap:10px}
.hna-item{display:flex;gap:10px;align-items:baseline}
.hna-item__qty{flex:none;min-width:2.2em;font-weight:600;color:var(--ink-2)}
.hna-item__body{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}
.hna-item__opts{font-size:.875rem;color:var(--ink-2)}
.hna-quote{font-size:.9rem}
.hna-quote a,.hna-empty a:not(.hx-btn){text-decoration:underline;text-underline-offset:.15em;color:var(--ink)}

/* 07/10/2026 : bulle « Une question ? » (photo de Guillaume + logo WhatsApp), comme sur le portail client.
   Ancrée en bas à droite ; le script la remonte au-dessus des barres collantes visibles (devis, produit, blog, cookies). */
.hx-wa{position:fixed;right:20px;bottom:calc(20px + var(--hx-wa-lift,0px) + env(safe-area-inset-bottom));z-index:75;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:var(--body);transition:bottom .25s var(--ease)}
.hx-wa__btn{position:relative;width:60px;height:60px;padding:0;border:3px solid #fff;border-radius:999px;background:var(--ink);box-shadow:0 10px 28px rgba(19,21,23,.28);cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.hx-wa__btn:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(19,21,23,.32)}
.hx-wa__btn:focus-visible{outline:3px solid #25D366;outline-offset:3px}
.hx-wa__btn img{display:block;width:100%;height:100%;border-radius:999px;object-fit:cover}
.hx-wa__logo{position:absolute;right:-5px;bottom:-4px;display:grid;place-items:center;width:24px;height:24px;border:2px solid #fff;border-radius:999px;background:#25D366;color:#fff}
.hx-wa__logo svg{width:13px;height:13px}
.hx-wa__tip{position:absolute;right:72px;bottom:12px;padding:9px 14px;border-radius:var(--r-pill);background:#fff;color:var(--ink);font-size:.85rem;font-weight:600;white-space:nowrap;box-shadow:0 8px 24px rgba(19,21,23,.18);opacity:0;transform:translateX(8px);pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease)}
.hx-wa.is-tip .hx-wa__tip{opacity:1;transform:none;pointer-events:auto;cursor:pointer}
.hx-wa__card{width:min(300px,calc(100vw - 40px));padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 18px 44px rgba(19,21,23,.22)}
.hx-wa__card[hidden]{display:none}
.hx-wa__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.hx-wa__head b{font-size:.95rem;line-height:1.3}
.hx-wa__x{flex:none;padding:0 2px;border:0;background:none;color:var(--ink-3);font-size:1.3rem;line-height:1;cursor:pointer}
.hx-wa__card p{margin:6px 0 14px;color:var(--ink-2);font-size:.85rem;line-height:1.5}
.hx-wa__go{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:8px;padding:11px;border-radius:12px;font-size:.9rem;font-weight:700;text-decoration:none}
.hx-wa__go svg{width:18px;height:18px}
.hx-wa__go--wa{background:#25D366;color:#fff}
.hx-wa__go--wa:hover{background:#1ebe5b}
.hx-wa__go--mail{background:var(--soft);color:var(--ink)}
@media (max-width:767px){.hx-wa{right:14px}.hx-wa__btn{width:54px;height:54px}.hx-wa__tip{display:none}}
@media (prefers-reduced-motion:reduce){.hx-wa,.hx-wa__btn,.hx-wa__tip{transition:none}}
@media print{.hx-wa{display:none}}

/* 09/10/2026 : carte « Cette page est disponible en … » (js/langue.js), en haut à droite sous l'en-tête (top calculé par le script), hors du flux (pas de décalage de page). */
.hx-lg{position:fixed;top:88px;right:20px;z-index:72;display:flex;align-items:center;gap:12px;max-width:min(460px,calc(100vw - 40px));padding:12px 12px 12px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);font-family:var(--body);box-shadow:0 18px 44px rgba(19,21,23,.18);opacity:0;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .3s var(--ease)}
.hx-lg.is-in{opacity:1;transform:none}
.hx-lg__ico{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:var(--soft);color:var(--ink)}
.hx-lg__ico svg{width:18px;height:18px}
.hx-lg__txt{margin:0;font-size:.9rem;line-height:1.35}
.hx-lg__go{flex:none;padding:10px 16px;border-radius:var(--r-pill);background:var(--ink);color:#fff!important;font-size:.875rem;font-weight:700;white-space:nowrap;text-decoration:none}
.hx-lg__go:hover{background:var(--c-violet,#6b4dff)}
.hx-lg__go:focus-visible,.hx-lg__x:focus-visible{outline:3px solid var(--c-violet,#6b4dff);outline-offset:2px}
.hx-lg__x{flex:none;width:32px;height:32px;padding:0;border:0;border-radius:999px;background:none;color:var(--ink-3);font-size:1.3rem;line-height:1;cursor:pointer}
.hx-lg__x:hover{background:var(--soft);color:var(--ink)}
@media (max-width:767px){.hx-lg{left:12px;right:12px;max-width:none;flex-wrap:wrap}.hx-lg__txt{flex:1 1 calc(100% - 90px)}.hx-lg__go{flex:1 1 auto;text-align:center}}
@media (prefers-reduced-motion:reduce){.hx-lg{transition:none}}
@media print{.hx-lg{display:none}}

/* Proposition de refonte UX enseigne-neon (09/10/2026) : composants hxe-*, tokens de la DA uniquement */
html:has(.hxe-toc){scroll-padding-top:150px}
.hxe-sec{padding:clamp(64px,7vw,104px) 0}
.hxe-sec .hx-h2{font-size:clamp(1.8rem,1.25rem + 1.6vw,2.6rem);max-width:22ch}
.hxe-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:end;margin-bottom:clamp(32px,4vw,48px)}
.hxe-head .hx-lead{margin:0}
.hxe-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,80px);align-items:start}
.hxe-split--rev{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
.hxe-split__text>*+*{margin-top:18px}
.hxe-split__text .hx-h2{margin-top:10px}
.hxe-split__text .hx-actions{margin-top:28px}
.hxe-media{margin:0;border-radius:var(--r-card);overflow:hidden;background:var(--dark)}
.hxe-media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hxe-media figcaption,.hxe-media .hx-figcap{position:static;margin:0;padding:12px 16px;font-size:.82rem;color:var(--on-dark-2);background:var(--dark-2)}
.hxe-media--small img{aspect-ratio:16/10}
.hxe-steps{margin-top:clamp(40px,5vw,64px)}
/* sommaire collant */
.hxe-toc{position:sticky;top:72px;z-index:40;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.hxe-toc__in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-top:10px;padding-bottom:10px}
.hxe-toc__in::-webkit-scrollbar{display:none}
.hxe-toc a{flex:none;padding:8px 14px;border-radius:var(--r-pill);font-size:.85rem;font-weight:500;color:var(--ink-2);white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease)}
.hxe-toc a:hover{background:var(--soft);color:var(--ink)}
.hxe-toc a.is-on{background:var(--ink);color:#fff}
.hxe-toc .hxe-toc__cta{margin-left:auto;background:var(--accent);color:#fff;font-weight:600}
/* icônes */
.hxe-ico{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--soft);color:var(--ink)}
.hxe-ico svg{width:20px;height:20px}
.hx-dark .hxe-ico{background:rgba(255,255,255,.08);color:#fff}
/* prix */
.hxe-opts{display:grid;gap:12px;margin-top:16px}
.hxe-opts li{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}
.hxe-opts p{font-size:.95rem;line-height:1.55;color:var(--ink-2)}
.hxe-opts strong{color:var(--ink)}
.hxe-price{position:sticky;top:150px;display:grid;gap:16px}
.hxe-price__card{padding:clamp(20px,2.4vw,28px);border-radius:var(--r-card);background:var(--dark);color:#fff;box-shadow:0 24px 60px rgba(19,21,23,.18)}
.hxe-price__card .hx-btn{width:100%;justify-content:center;margin-top:18px;background:#fff;color:var(--ink)}
.hxe-ladder{border:0;background:none;margin:0}
.hxe-ladder table{width:100%;border-collapse:collapse}
.hxe-ladder thead th{color:var(--on-dark-2);background:none;border-bottom:1px solid var(--on-dark-line)}
.hxe-ladder{color:#fff}
.hxe-price__card .hxe-ladder thead th{background:none;color:var(--on-dark-2);border-bottom:1px solid var(--on-dark-line);padding:10px 8px}
.hxe-price__card .hxe-ladder tbody td{color:#fff;border-bottom:1px solid var(--on-dark-line);padding:12px 8px;font-size:.92rem;background:none;vertical-align:middle}
.hxe-price__card .hxe-ladder tbody td:first-child{color:#fff;white-space:nowrap}
.hxe-price__card .hxe-ladder tbody td:nth-child(2){color:var(--on-dark-2)}
.hxe-price__card .hxe-ladder tbody td:last-child{position:relative;font:600 1.05rem/1 var(--display);white-space:nowrap;text-align:right}
.hxe-price__card .hxe-ladder tbody tr:hover td{background:rgba(255,255,255,.04)}
.hxe-ladder tbody tr{background:linear-gradient(90deg,rgba(107,77,255,.22),rgba(25,184,255,.14)) no-repeat 0 100%/calc(var(--w,0)*100%) 3px}
.hxe-small{margin-top:14px;font-size:.84rem;line-height:1.55;color:var(--ink-3)}
.hxe-price__card .hxe-small{color:var(--on-dark-2)}
/* bandeau d'appel */
.hxe-band{padding:clamp(36px,4vw,52px) 0;background:var(--dark);background-image:radial-gradient(60% 120% at 85% 0%,rgba(107,77,255,.35),transparent 60%)}
.hxe-band__in{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.hxe-band__t{margin:8px 0 12px;font:600 clamp(1.4rem,1rem + 1.2vw,2rem)/1.15 var(--display);color:#fff;letter-spacing:-.02em;max-width:24ch}
.hxe-band__list{display:flex;flex-wrap:wrap;gap:8px 20px;color:var(--on-dark-2);font-size:.9rem}
.hxe-band__list li::before{content:"✓";color:var(--accent);margin-right:8px}
.hx-btn--light{background:#fff;color:var(--ink)}
/* cartes plus compactes */
.hxe-cards .hx-card__media img{aspect-ratio:16/10;object-fit:cover}
.hxe-cards .hx-card__body{padding:18px 20px 22px}
.hxe-badge{display:inline-grid;place-items:center;width:38px;height:38px;margin:-38px 0 12px;position:relative;border-radius:12px;color:#fff;box-shadow:0 8px 20px rgba(19,21,23,.2)}
.hxe-badge svg{width:19px;height:19px}
.hxe-badge--1{background:var(--accent)}.hxe-badge--2{background:var(--c-amber)}.hxe-badge--3{background:var(--c-cyan)}
.hxe-cards--exp+.hx-note{margin-top:24px}
/* taille */
.hxe-table{margin:8px 0 0}
.hxe-table tbody td:first-child{white-space:nowrap}
.hxe-A{display:inline-grid;place-items:end center;width:30px;height:34px;margin-right:8px;vertical-align:middle;font:600 var(--s)/1 var(--display);font-style:normal;color:var(--c-violet);text-shadow:0 0 12px rgba(107,77,255,.45)}
.hxe-tip{display:flex;gap:14px;align-items:flex-start;margin-top:18px;padding:18px;border-radius:16px;background:#f1edff}
.hxe-tip p{font-size:.95rem;line-height:1.6;color:var(--ink-2)}
.hx-dark .hxe-tip{background:rgba(255,255,255,.06)}
/* comparatif */
.hxe-vs{border-color:var(--on-dark-line);background:var(--dark-2)}
.hxe-vs table{width:100%}
.hx-dark .hxe-vs{color:#fff}
.hx-dark .hxe-vs thead th,.hx-dark .hxe-vs tbody td{background:none;color:var(--on-dark-2);border-color:var(--on-dark-line)}
.hx-dark .hxe-vs tbody td:first-child{color:#fff;font-weight:600}
.hx-dark .hxe-vs thead th:nth-child(2),.hx-dark .hxe-vs tbody td:nth-child(2){color:#fff;background:rgba(0,168,126,.14)}
.hx-dark .hxe-vs thead th:nth-child(2){color:#4fe0b8}
.hx-dark .hxe-vs tbody tr:hover td{background:rgba(255,255,255,.04)}
.hxe-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:clamp(32px,4vw,48px)}
.hxe-duo__card{padding:clamp(22px,2.6vw,32px);border:1px solid var(--on-dark-line);border-radius:var(--r-card);background:rgba(255,255,255,.03)}
.hxe-duo__card .hx-h3{font-size:1.35rem;margin-bottom:12px}
/* consommation */
.hxe-stats{margin-top:24px}
/* réglementation */
.hxe-sticky{position:sticky;top:150px}
.hxe-rules{display:grid;gap:14px;counter-reset:r}
.hxe-rules li{display:flex;gap:16px;padding:22px;border-radius:var(--r-card);background:#fff;border:1px solid var(--line)}
.hxe-rules .hx-h4{margin-bottom:8px}
.hxe-rules p{font-size:.95rem;line-height:1.65;color:var(--ink-2)}
.hxe-rules+.hx-note{margin-top:16px}
/* pose */
.hxe-three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hxe-three article{padding:24px;border:1px solid var(--line);border-radius:var(--r-card)}
.hxe-three .hxe-ico{margin-bottom:14px}
.hxe-three .hx-p{font-size:.95rem}
.hxe-works{margin-top:28px}
.hxe-engage .hx-h4--emoji{display:flex;align-items:center;gap:12px}
@media (max-width:980px){
  .hxe-head,.hxe-split,.hxe-split--rev,.hxe-duo,.hxe-three{grid-template-columns:1fr}
  .hxe-price,.hxe-sticky{position:static}
  .hxe-toc{top:64px}
}
@media (max-width:767px){.hxe-band__in .hx-btn{width:100%;justify-content:center}.hxe-ladder td:nth-child(2),.hxe-ladder th:nth-child(2){display:none}}

/* 12/10/2026 : accueil mobile (demande de Guillaume). Seules les pages d'accueil ont la section hx-products : les
   sélecteurs « .hx-products ~ » limitent ces règles aux 14 accueils. Tarifs en 2 x 2, réalisations 2 par ligne,
   blog en slider horizontal (mobile uniquement). */
@media (max-width:600px){
  .hx-products ~ .hx-pricing .hx-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hx-products ~ .hx-pricing .hx-tile{padding:24px 12px 16px;gap:8px}
  .hx-products ~ .hx-pricing .hx-tile::before{top:14px;width:26px;height:3px}
  .hx-products ~ .hx-pricing .hx-tile .hx-ico--box{width:38px;height:38px;padding:9px}
  .hx-products ~ .hx-pricing .hx-tile .hx-h4{margin-top:4px;font-size:1rem;line-height:1.25}
  .hx-products ~ .hx-pricing .hx-tile p{font-size:.82rem;line-height:1.4}
  .hx-products ~ .hx-works .hx-works__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hx-products ~ .hx-works .hx-work figcaption{padding:10px 12px 12px;gap:2px}
  .hx-products ~ .hx-works .hx-work figcaption .hx-kicker{font-size:.62rem}
  .hx-products ~ .hx-works .hx-work strong{font-size:.9rem;line-height:1.25}
  .hx-products ~ .hx-blog .hx-posts{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--pad));padding:0 var(--pad) 6px;scroll-padding-inline:var(--pad);-webkit-overflow-scrolling:touch}
  .hx-products ~ .hx-blog .hx-posts::-webkit-scrollbar{display:none}
  .hx-products ~ .hx-blog .hx-post{flex:0 0 84%;scroll-snap-align:start}
}

/* Accueil, version du 14/10/2026 (accueil_1014.py) */
.hx-how--accueil .hx-howstep{border-top:0;padding-top:0}
.hx-how--accueil .hx-howstep::before{content:"";display:block;order:1;align-self:stretch;width:100%;height:2px;margin:-2px 0 4px;background:var(--c-violet)}
.hx-how--accueil .hx-howstep__n{order:0}
.hx-how--accueil .hx-howstep>:not(.hx-howstep__n){order:2}
.hx-how--accueil .hx-howstep:nth-child(2)::before{background:var(--c-pink)}
.hx-how--accueil .hx-howstep:nth-child(3)::before{background:var(--c-cyan)}
.hx-how--accueil .hx-howstep:nth-child(4)::before{background:var(--c-amber)}
.hx-how--accueil .hx-simshot.hx-simshot--mac{position:relative;--c:255,61,138;border:1px solid rgba(var(--c),.45);box-shadow:0 0 0 1px rgba(var(--c),.08),0 24px 60px -24px rgba(var(--c),.55),0 30px 90px -40px rgba(107,77,255,.45);transition:transform .3s var(--ease,ease),box-shadow .3s var(--ease,ease);animation:hx-simglow 4.5s ease-in-out infinite}
.hx-how--accueil .hx-simshot.hx-simshot--mac::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,#6B4DFF,#FF3D8A,#19B8FF)}
.hx-how--accueil .hx-simshot.hx-simshot--mac:hover{transform:translateY(-4px);animation-play-state:paused;box-shadow:0 0 0 1px rgba(var(--c),.22),0 30px 70px -22px rgba(var(--c),.7),0 36px 100px -36px rgba(107,77,255,.6)}
@keyframes hx-simglow{50%{box-shadow:0 0 0 1px rgba(255,61,138,.14),0 28px 72px -22px rgba(255,61,138,.7),0 34px 100px -36px rgba(107,77,255,.6)}}
@media (prefers-reduced-motion:reduce){.hx-how--accueil .hx-simshot.hx-simshot--mac{animation:none}}
.hx-pricing--accueil .hx-tiles{padding-bottom:0;border-bottom:0}
.hx-blog--accueil{background:var(--t-cyan)}
.hx-blog--accueil .hx-post{background:#fff}
