/* Local, stylised location map. Italy outline and marker share one projection. */
.company-location {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
  padding-block: clamp(44px, 5vw, 80px);
  border-top: 1px solid var(--line);
}
.company-location-copy .eyebrow { margin: 0 0 16px; }
.company-location-copy h2 {
  margin: 0 0 28px;
  font-size: var(--type-section);
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: -.035em;
}
.company-location-copy address { font-style: normal; font-size: var(--type-body); line-height: 1.65; margin: 0 0 26px; }
.company-location-copy address strong { font-weight: 500; }
.company-location-figure { margin: 0; min-width: 0; }
.company-location-map { display: block; width: 100%; max-width: 520px; height: auto; margin-inline: auto; overflow: visible; }
.company-location-map .location-country { fill: currentColor; fill-opacity: .045; stroke: currentColor; stroke-opacity: .55; stroke-width: 1.2; stroke-linejoin: round; }
.company-location-map .location-leader { fill: none; stroke: currentColor; stroke-width: 1; stroke-opacity: .65; }
.company-location-map .location-marker-ring { fill: none; stroke: currentColor; stroke-width: 1; stroke-opacity: .4; }
.company-location-map .location-marker { fill: currentColor; }
.company-location-map text { fill: currentColor; font: 16px Inter, sans-serif; }
@media (max-width: 699px) {
  .company-location { grid-template-columns: 1fr; gap: 28px; }
  .company-location-copy h2 { margin-bottom: 24px; }
  .company-location-map { max-width: 420px; }
}

@media (max-width:599px) { .company-location-map text { font-size: 22px; } }
