/* ============================================================
   JET ATLAS — ht-team (« L'équipe » staff grid)
   Dark band so portraits pop; warm welcome head + a grid of cards
   (photo / initials placeholder + name + role + bio).
   ============================================================ */
.ht-team { background: var(--ht-team-bg, var(--ht-ink)); color: var(--ht-white); padding: clamp(80px,12vw,150px) 0; }
.ht-team__head { display: flex; flex-direction: column; gap: 16px; align-items: center; text-align: center; margin-bottom: clamp(48px,6vw,72px); }
.ht-team__head .ht-h2, .ht-team__head .ht-h2 em { color: var(--ht-white); }
.ht-team__lead { max-width: 60ch; color: rgba(255,255,255,0.72); font-size: clamp(15px,1.5vw,18px); line-height: 1.7; }

/* ============================================================
   Welcome-only band (no staff cards) — a warm, premium greeting.
   An atmospheric luxe backdrop (soft lime radial glow + subtle grain)
   sits behind a tight column: eyebrow · serif title · lead · sparkles,
   a row of lime-accented credibility tiles, then a warm lime CTA.
   ============================================================ */
.ht-team--welcome { position: relative; overflow: hidden; padding-block: clamp(72px,9vw,120px); }
/* soft layered lime glow */
.ht-team--welcome::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background:
    radial-gradient(58% 52% at 50% 8%, rgba(220,255,0,0.16), transparent 62%),
    radial-gradient(46% 46% at 88% 96%, rgba(220,255,0,0.09), transparent 60%),
    radial-gradient(40% 40% at 6% 88%, rgba(220,255,0,0.06), transparent 60%);
}
/* subtle self-contained grain (inline SVG data-URI — no external asset) */
.ht-team--welcome::after {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: 0.05; mix-blend-mode: screen;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.ht-team--welcome > * { position: relative; z-index: 1; }
.ht-team--welcome .ht-team__head { margin-bottom: 0; max-width: 720px; margin-inline: auto; }
.ht-team__sparkles { display: flex; align-items: center; gap: 20px; margin-top: 12px; color: var(--ht-team-accent, var(--ht-lime)); }
.ht-team__sparkles span { font-size: 13px; line-height: 1; opacity: 0.8; }
.ht-team__sparkles span:nth-child(2) { font-size: 20px; opacity: 1; }

/* Credibility tiles + CTA */
.ht-team__welcome-body { display: flex; flex-direction: column; align-items: center; }
.ht-team__credos {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(12px,1.5vw,18px);
  width: 100%; max-width: 940px; margin-top: clamp(38px,5vw,56px);
}
.ht-team__credo {
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px;
  padding: clamp(22px,2.6vw,30px) clamp(14px,1.6vw,20px);
  background: rgba(255,255,255,0.035); border: 1px solid rgba(255,255,255,0.11); border-radius: 18px;
  transition: transform .5s var(--ht-ease), border-color .5s var(--ht-ease), background .5s var(--ht-ease), box-shadow .5s var(--ht-ease);
}
.ht-team__credo:hover {
  transform: translateY(-5px); background: rgba(220,255,0,0.05);
  border-color: rgba(220,255,0,0.42); box-shadow: 0 22px 44px -26px rgba(220,255,0,0.55);
}
.ht-team__credo-ic {
  display: grid; place-items: center; min-height: 54px; width: 54px; height: 54px; border-radius: 15px;
  background: var(--ht-team-accent, var(--ht-lime)); color: var(--ht-ink); font-size: 21px;
  box-shadow: 0 12px 26px -14px rgba(220,255,0,0.7);
}
.ht-team__credo-fig {
  display: flex; align-items: center; justify-content: center; min-height: 54px;
  font-family: var(--ht-data); font-weight: 700; font-size: clamp(34px,4.4vw,50px); line-height: 1;
  letter-spacing: -0.01em; color: var(--ht-team-accent, var(--ht-lime));
}
.ht-team__credo-lbl {
  font-family: var(--ht-ui); font-size: 12px; font-weight: 600; letter-spacing: 0.5px; line-height: 1.4;
  text-transform: uppercase; color: rgba(255,255,255,0.84); max-width: 18ch;
}
.ht-team__cta { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-top: clamp(34px,4.5vw,48px); }
.ht-team__cta-note {
  font-family: var(--ht-ui); font-size: 11.5px; font-weight: 500; letter-spacing: 1.4px;
  text-transform: uppercase; color: rgba(255,255,255,0.5);
}
@media (max-width: 680px) {
  .ht-team__credos { grid-template-columns: repeat(2, 1fr); max-width: 420px; }
}

.ht-team__grid { display: grid; grid-template-columns: repeat(var(--ht-team-cols, 4), 1fr); gap: clamp(18px,2vw,26px); }
.ht-team__card { display: flex; flex-direction: column; }
.ht-team__photo { position: relative; aspect-ratio: 4/5; border-radius: 18px; overflow: hidden; background: #161616; border: 1px solid rgba(255,255,255,0.10); }
.ht-team__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ht-ease); }
.ht-team__card:hover .ht-team__photo img { transform: scale(1.05); }
.ht-team__ph { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--ht-serif); font-weight: 500; font-size: clamp(40px,5vw,64px); color: var(--ht-team-accent, var(--ht-lime)); background: radial-gradient(circle at 50% 32%, rgba(220,255,0,0.12), transparent 62%); letter-spacing: 1px; }
.ht-team__name { display: block; font-family: var(--ht-serif); font-weight: 500; font-size: clamp(20px,2vw,24px); color: var(--ht-white); margin-top: 16px; }
.ht-team__role { display: block; font-family: var(--ht-ui); font-size: 12px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: var(--ht-team-accent, var(--ht-lime)); margin-top: 5px; }
.ht-team__bio { color: rgba(255,255,255,0.62); font-size: 14.5px; line-height: 1.62; margin-top: 10px; }

/* Bulletproof contrast on the dark band — higher specificity than any inherited /
   kit cascade, and a heavier name so the white serif doesn't read faint. */
.ht-team .ht-team__head .ht-h2, .ht-team .ht-team__head .ht-h2 em { color: #fff; }
.ht-team .ht-team__lead { color: rgba(255,255,255,0.76); }
.ht-team .ht-team__name { color: #fff; font-weight: 600; }
.ht-team .ht-team__role { color: var(--ht-team-accent, var(--ht-lime)); }
.ht-team .ht-team__bio { color: rgba(255,255,255,0.72); }

@media (max-width: 980px) { .ht-team__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .ht-team__grid { grid-template-columns: 1fr; max-width: 360px; margin-inline: auto; } }
