.hero-overline .brand-slogan {
  max-width: none;
  color: var(--paper);
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.15;
  white-space: nowrap;
}

.manifesto-grid { align-items: center; }
.manifesto-territory { min-width: 0; }
.story-corsica-map {
  display: grid;
  grid-template-columns: minmax(0, max-content) minmax(0, auto);
  width: fit-content;
  max-width: 100%;
  margin: clamp(12px, 3vw, 32px) auto 0;
}
.story-corsica {
  display: block;
  width: clamp(124px, 16vw, 205px);
  max-width: 100%;
  height: auto;
}
.story-island {
  filter: drop-shadow(0 12px 14px #24351e24);
  stroke: #728761;
  stroke-width: 1.2px;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.story-map-label {
  position: relative;
  top: 62.77%;
  align-self: start;
  transform: translateY(-50%);
  padding-right: .65rem;
  text-align: right;
  font-size: clamp(.78rem, 1.15vw, .98rem);
  line-height: 1.28;
}
.story-map-label strong { display: block; font-weight: 650; }
.story-map-label span {
  display: block;
  margin-top: .38em;
  color: var(--muted);
  font-size: .72em;
  letter-spacing: .095em;
  text-transform: uppercase;
}
.story-map-leader, .story-map-pin { vector-effect: non-scaling-stroke; }
.story-map-leader { stroke-width: 1px; }
.story-map-pin { fill: #f2c84b; stroke: #3d4126; stroke-width: 1px; }
.story-map-halo { fill: #f2c84b; opacity: .38; transform-box: fill-box; transform-origin: center; }

@media (prefers-reduced-motion: no-preference) and (hover: hover) {
  .story-corsica-map:hover .story-map-halo { animation: story-pin-pulse 1.4s ease-out; }
  @keyframes story-pin-pulse {
    55% { transform: scale(1.75); opacity: .12; }
  }
}

.group-history { background: var(--paper); scroll-margin-top: 24px; }
.history-grid {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  align-items: start;
  gap: clamp(30px, 7vw, 104px);
}
.history-intro h2 { margin: .2em 0 .45em; font-size: clamp(2.55rem, 5vw, 5.3rem); line-height: 1.08; }
.history-intro h2 em { font-size: 1.17em; }
.history-intro > p:last-child, .history-list p { color: var(--muted); font-size: .94rem; line-height: 1.85; }
.history-intro > p:last-child { max-width: 43ch; }
.history-list { padding: 0; list-style: none; }
.history-list li {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding-block: clamp(18px, 3vw, 32px);
  border-top: 1px solid var(--line);
}
.history-list .row-index { align-self: start; padding-top: .2em; }
.history-list li:last-child { border-bottom: 1px solid var(--line); }
.history-list h3 {
  margin-bottom: .35em;
  font-family: Newsreader, Georgia, serif;
  font-size: clamp(1.63rem, 3vw, 2.45rem);
  font-weight: 400;
  line-height: 1.13;
}

@media (max-width: 767px) {
  .hero-overline .brand-slogan { font-size: .72rem; }
  .manifesto-grid { gap: 22px; }
  .story-corsica { width: clamp(112px, 33vw, 150px); }
  .history-grid { grid-template-columns: minmax(0, 1fr); }
  .history-list li { grid-template-columns: 1.75rem minmax(0, 1fr); }
}
