/* ═══════════════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════════════ */
#accueil {
  min-height:100vh;
  display:flex; align-items:flex-start;
  padding-top:calc(var(--nav-h) + 72px);
  scroll-margin-top:0;
  padding-bottom:3rem;
  position:relative; overflow:hidden;
  background:transparent;
}

.hero-inner {
  position:relative; z-index:2;
  display:grid; grid-template-columns:1fr 1fr;
  gap:4rem; align-items:center;
}

.hero-badge {
  display:inline-flex; align-items:center; gap:.55rem;
  background:var(--accent-dim); border:1px solid var(--border);
  padding:.35rem .9rem; border-radius:var(--r-pill);
  font-size:.68rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--accent); margin-bottom:1.8rem;
}

.hero-badge-dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--accent);
  animation:blink 2.2s ease-in-out infinite;
}

@keyframes blink {
  0%,100% { opacity:1; transform:scale(1); }
  50%      { opacity:.3; transform:scale(.6); }
}

.hero-name {
  font-family:'Inter',sans-serif;
  font-size:.8rem; font-weight:400;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--text-3); margin-bottom:.6rem;
}

.hero-title {
  font-family:'Oswald',sans-serif;
  font-size:clamp(3.4rem,7vw,6.2rem);
  font-weight:700; line-height:.95;
  letter-spacing:-.02em; color:var(--text);
  margin-bottom:1.4rem;
}
.hero-title .line-outline {
  -webkit-text-stroke:1.5px var(--accent);
  color:transparent;
}

.hero-role-line {
  font-size:1.05rem; color:var(--text-2); font-weight:400;
  letter-spacing:.02em; margin-bottom:2rem;
  display:flex; align-items:center; gap:.7rem;
}
.hero-role-line::before {
  content:''; display:block; width:32px; height:2px;
  background:var(--accent); border-radius:2px; flex-shrink:0;
}

.hero-techrow {
  display:flex; flex-wrap:wrap; gap:.5rem;
  margin-bottom:2.2rem;
}
.hero-tech-chip {
  display:inline-flex; align-items:center; gap:.38rem;
  padding:.38rem .85rem;
  background:rgba(26,26,28,.05); border:1px solid rgba(26,26,28,.12);
  border-radius:var(--r-pill);
  font-size:.69rem; font-weight:600; letter-spacing:.05em; text-transform:uppercase;
  color:var(--text-2);
  transition:background .22s, border-color .22s, color .22s, transform .25s var(--ease);
}
.hero-tech-chip:hover { background:var(--accent-dim); border-color:var(--accent); color:var(--accent); transform:translateY(-2px); }

.hero-desc {
  font-size:.98rem; color:var(--text-2);
  max-width:480px; line-height:1.82; margin-bottom:2.5rem;
}

.hero-cta { display:flex; gap:1rem; flex-wrap:wrap; }

.hero-right { display:flex; justify-content:center; }

.hero-scroll {
  position:absolute; bottom:2.5rem; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:.5rem;
  font-size:.6rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--text-3); z-index:2;
}

.scroll-chevron {
  width:14px; height:14px;
  border-right:1.5px solid var(--text-3);
  border-bottom:1.5px solid var(--text-3);
  transform:rotate(45deg);
  animation:chevron 1.8s ease-in-out infinite;
}

@keyframes chevron {
  0%,100% { transform:rotate(45deg) translateY(0); opacity:1; }
  50%      { transform:rotate(45deg) translateY(4px); opacity:.4; }
}
