/* ==========================================================================
   Sezione 7 — "Il nostro approccio in 4 fasi" (Figma 1070:4733)
   Eyebrow + titolo, 4 step: pill numerata su gradiente verde, descrizione,
   tagline bold con testo in gradiente.
   ========================================================================== */

.approccio { background: var(--color-surface); }

.approccio__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
  padding-block: var(--space-section);
}

.approccio__head { display: flex; flex-direction: column; gap: 16px; }
.approccio__eyebrow {
  font-size: var(--fs-body);
  line-height: 1.2;
  color: #888;
  letter-spacing: 0.02em;
}
.approccio__title {
  font-size: var(--fs-h2); /* 48px */
  font-weight: var(--fw-light);
  line-height: var(--lh-h2);
  color: var(--color-text);
}

/* ---- Steps ---- */
.approccio__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-card);
}
.step { display: flex; flex-direction: column; gap: 16px; }

.step__pill {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 64px;
  padding: 8px 16px 8px 8px;
  border: 1px solid #fff;
  border-radius: var(--radius-pill);
  background: linear-gradient(90deg, #59e08b 0%, #04aa6c 100%);
  color: #fff;
}
.step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 37px;
  flex-shrink: 0;
  border-radius: 18px;
  background: var(--color-surface);
  font-size: var(--fs-p20);
  font-weight: var(--fw-bold);
  color: #00a86b;
}
.step__label {
  font-size: var(--fs-p20); /* 20px */
  line-height: 1.2;
  text-transform: uppercase;
}

.step__desc {
  font-size: var(--fs-body);
  line-height: 1.2;
  color: var(--color-text);
}

.step__tagline {
  font-size: var(--fs-p22);
  font-weight: var(--fw-bold);
  line-height: 1.2;
  background: linear-gradient(175.67deg, #5ee38d 0%, #00a86b 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1080px) {
  .approccio__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .approccio__inner { gap: 32px; }
  .approccio__steps { gap: 24px; }
  .step__desc { line-height: 1.45; }
  .step__tagline { line-height: 1.3; }
}

@media (max-width: 640px) {
  .approccio__steps { grid-template-columns: minmax(0, 1fr); }
}
