:root {
  --cogfer-red: #b20000;
  --cogfer-graphite: #191919;
  --cogfer-paper: #f4f1ec;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  color: var(--cogfer-graphite);
  background: var(--cogfer-paper) url("img/noise.png") repeat;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

img,
iframe {
  max-width: 100%;
}

img {
  height: auto;
}

a {
  color: inherit;
}

.cert-details-link {
  color: var(--cogfer-graphite);
}

:focus-visible {
  outline: 3px solid var(--cogfer-red);
  outline-offset: 4px;
}

.hero-steel {
  background-image:
    linear-gradient(90deg, rgba(25, 25, 25, 0.94) 0%, rgba(25, 25, 25, 0.78) 42%, rgba(25, 25, 25, 0.2) 100%),
    url("img/header-iron.jpg");
  background-position: center;
  background-size: cover;
}

.service-band {
  background-image:
    linear-gradient(90deg, rgba(25, 25, 25, 0.93), rgba(25, 25, 25, 0.66)),
    url("img/banner-servizi.jpg");
  background-position: center;
  background-size: cover;
}

.map-frame {
  width: 100%;
  min-height: 420px;
  border: 0;
  filter: grayscale(0.15) contrast(1.05);
}

@media (max-width: 640px) {
  .map-frame {
    min-height: 340px;
  }
}
