/* ══════════════════════════════════
   STACKED HERO PHOTO
══════════════════════════════════ */
.cs-hero__photo--stacked {
  overflow: visible;
  border-radius: 0;
}
.cs-stacked-wrap {
  position: relative;
  height: 214px;
  width: 100%;
}

/* ══════════════════════════════════
   APPROACH CARD OVERRIDE
══════════════════════════════════ */
.approach-section { margin-top: 0; }

/* ══════════════════════════════════
   BIO SECTION (esperienza + formazione)
══════════════════════════════════ */
.cs-bio {
  max-width: 1312px;
  margin: 0 auto 4.25rem;
  padding: 3.5rem 4rem 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
.cs-bio__col-title {
  font-family: 'Capriola', sans-serif;
  font-size: 1.75rem; line-height: 2.25rem;
  color: var(--orange);
  margin-bottom: 1rem;
}
.cs-bio__paragraphs {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.cs-bio__paragraphs p {
  font-weight: 500; font-size: 1.125rem;
  line-height: 1.4375rem; color: var(--gray);
}

/* ── Timeline ── */
.cs-timeline {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
  margin-top: 2em;
}
.cs-timeline::before {
  content: '';
  position: absolute;
  left: 1.3rem;     /* centre of icon circle */
  top: 0; bottom: 0;
  width: 1px;
  background: rgba(0,0,0,0.1);
}
.cs-timeline__item {
  display: flex;
  gap: 1.75rem;
  align-items: flex-start;
  position: relative;
}
.cs-timeline__icon {
  width: 2.625rem; height: 2.625rem;
  border-radius: 50%;
  background: var(--peach);
  border: 1px solid var(--border);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  position: relative; z-index: 1;
}
.cs-timeline__icon svg {
  width: 1.125rem; height: 1.125rem;
  fill: none; stroke: var(--orange);
  stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round;
}
.cs-timeline__content {
  display: flex; flex-direction: column; gap: 0.2rem;
  padding-top: 0.35rem; /* vertically centre with icon */
}
.cs-timeline__label {
  font-weight: 500; font-size: 0.875rem;
  color: var(--gray-lt);
}
.cs-timeline__name {
  font-family: 'Capriola', sans-serif;
  font-size: 1.125rem; color: var(--black);
}
.cs-timeline__desc {
  font-weight: 500; font-size: 1.125rem;
  line-height: 1.4375rem; color: var(--gray);
}
@media (max-width: 767px) {
  .cs-bio {
    grid-template-columns: 1fr;
    padding: 2rem 1rem;
    gap: 3.5rem;
  }
  .cs-bio__col:last-child {
    order: -1;
  }
  .photos{
    height: 300px;
    display: flex;
    align-items: end;
    justify-content: center;

  }
}
