.nt-hub-intro__eyebrow {
  font-family: var(--nt-font-ui);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--nt-text-faint);
  margin: 0 0 1rem;
}
.nt-hub-intro__lead {
  font-family: var(--nt-font-body);
  font-size: 18px;
  line-height: 1.75;
  color: var(--nt-text);
  margin: 0 0 1.5rem;
}
.nt-hub-intro__sources {
  font-family: var(--nt-font-ui);
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--nt-text-faint);
  margin: 0;
}

/* ---------------------------------------------------------------------------
   2. SECTION — unité de contenu avec eyebrow
   --------------------------------------------------------------------------- */
.nt-hub-section {
  margin-top: 4rem;
}
.nt-hub-section__eyebrow {
  font-family: var(--nt-font-ui);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--nt-text-faint);
  margin: 0 0 1.5rem;
  display: block;
}/* ---------------------------------------------------------------------------
   4. FAQ HUB — à plat, extractible IA
   --------------------------------------------------------------------------- */
.nt-hub-faq { margin-top: 0; }

.nt-hub-faq__item {
  border-bottom: 1px solid var(--nt-line);
}
.nt-hub-faq__item:first-of-type {
  border-top: 1px solid var(--nt-line);
}
.nt-hub-faq__item summary {
  list-style: none;
  cursor: pointer;
  padding: 1rem 0;
  font-family: var(--nt-font-body);
  font-size: 15px;
  font-weight: 500;
  color: var(--nt-text);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  line-height: 1.4;
}
.nt-hub-faq__item summary::-webkit-details-marker { display: none; }
/* marqueur = --nt-text-muted (24/07) : --nt-text-faint (2.42:1) quasi invisible au repos — grammaire d'interaction unique */
.nt-hub-faq__item summary::after {
  content: "+";
  font-size: 1.2rem;
  font-weight: 300;
  color: var(--nt-text-muted);
  flex: 0 0 auto;
  transition: transform var(--nt-transition), color var(--nt-transition);
}
.nt-hub-faq__item[open] summary::after {
  transform: rotate(45deg);
}
.nt-hub-faq__item summary:hover::after { color: var(--nt-text-strong); }
.nt-hub-faq__item summary:focus-visible { outline: 2px solid var(--nt-text-strong); outline-offset: 3px; }
.nt-hub-faq__a {
  padding: 0 0 1rem;
}
.nt-hub-faq__a p {
  font-family: var(--nt-font-body);
  font-size: 15px;
  line-height: 1.7;
  color: var(--nt-text-muted);
  margin: 0;
}

/* ---------------------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------------------- */
@media (max-width: 680px) {.nt-hub-intro__lead {
    font-size: 16px;
  }
}