/* ─── Tablet ─── */
@media (max-width: 1100px) {
  .hero { gap: 36px; padding: 24px 32px 90px; }
  .phone { width: 260px; height: 540px; }
  .h1 { font-size: clamp(40px, 7vw, 72px); }
}

@media (max-width: 1024px) {
  .mannequin-layout { grid-template-columns: 1fr 260px 1fr; gap: 30px; }
  .kpi-card { min-width: 160px; }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
  .features-header { grid-template-columns: 1fr; gap: 30px; }
}

/* ─── Mobile ─── */
@media (max-width: 760px) {
  .stage { padding-top: 60px; }
  .stage__halo { width: 320px; height: 520px; top: 60%; }

  /* Hero stacks: phone first, then left, then right */
  .hero {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 32px 20px 110px;
    min-height: calc(100vh - 60px);
    text-align: center;
  }
  .hero__left {
    order: 2; text-align: center;
    display: flex; flex-direction: column; align-items: center;
  }
  .hero__sub { margin-left: auto; margin-right: auto; }
  .phone-wrap { order: 1; transform: scale(0.85); transform-origin: center; }
  .phone-bracket { display: none; }
  .hero__right {
    order: 3; align-items: center; text-align: center;
  }
  .quotes .quote { text-align: left; max-width: 320px; }
  .h1 { font-size: clamp(40px, 11vw, 64px); }
  .cta { padding: 16px 24px; font-size: 13px; letter-spacing: 2.5px; }

  /* Other sections */
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .stat-item:nth-child(2) { border-right: none; }
  .mannequin-layout { grid-template-columns: 1fr; gap: 40px; }
  .kpis-col { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: center; }
  .kpis-col.right { align-items: center; }
  .kpis-col.right .kpi-card { align-self: auto; }
  .mannequin-body-wrap { order: -1; max-width: 250px; margin: 0 auto; }
  .fo-grid { grid-template-columns: 1fr; gap: 2px; }
  .testi-grid { grid-template-columns: 1fr; }
  .fonct-grid { grid-template-columns: 1fr; }
  .fonct-wide { grid-column: 1; }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .calc-layout { grid-template-columns: 1fr; }
  .calc-result { position: static; }
  .nakr-story { padding: 40px 28px; }
  .nakr-story::before { font-size: 100px; }
}

/* ─── Small phones ─── */
@media (max-width: 380px) {
  .h1 { font-size: 44px; }
  .phone-wrap { transform: scale(0.75); }

  .section-pad { padding: 70px 0; }
  .stats-grid { grid-template-columns: 1fr 1fr; }
  .stat-item { border-right: none; border-bottom: 1px solid var(--border); }
  .stat-item:last-child { border-bottom: none; }
  .team-grid { grid-template-columns: 1fr; }
  .calc-tabs { flex-direction: column; }
  .calc-tab { text-align: center; }
  .field-group { grid-template-columns: 1fr; }
  .result-grid { grid-template-columns: 1fr; }
  .calc-form { padding: 24px 20px; }
  .calc-result { padding: 24px 20px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; gap: 20px; text-align: center; }
  .fonct-card { padding: 28px 24px; }
  .essayer-title { letter-spacing: -1px; }
}
