/* Linguaggio visivo condiviso per le intestazioni delle pagine interne. */
.inner-hero {
  min-height: 620px;
  display: flex;
  align-items: center;
  padding: 150px 0 75px;
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #1b1b19 !important;
}

.inner-hero.hero {
  height: auto;
  max-height: none;
}

.inner-hero::before {
  content: "";
  position: absolute;
  width: min(65vw, 900px);
  height: min(65vw, 900px);
  right: -8vw;
  top: -22vw;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 55%, #8a2e30 0 1%, #502121 29%, transparent 65%);
  opacity: .9;
}

.inner-hero::after {
  content: "";
  position: absolute;
  width: 46vw;
  height: 46vw;
  right: 6vw;
  top: 14vw;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  background: transparent !important;
}

.inner-hero > .container,
.inner-hero .services-hero-inner,
.inner-hero .operations-hero-content,
.inner-hero .work-hero-content {
  position: relative;
  z-index: 2;
}

.inner-hero .hero-rail,
.inner-hero .hero-index,
.inner-hero .hero-geometry,
.inner-hero .technical-lines {
  display: none;
}

.inner-hero .operations-hero-content,
.inner-hero .work-hero-content {
  height: auto;
  padding-top: 0;
}

.inner-hero h1 {
  max-width: 980px;
  margin: 22px 0 28px;
  font: 500 clamp(52px, 7.2vw, 108px)/.93 var(--serif);
  letter-spacing: -.06em;
}

.inner-hero h1 em { color: #e64b4f; font-weight: 500; }

.inner-hero .services-hero-note,
.inner-hero .operations-hero-content > p:last-child,
.inner-hero .work-hero-foot > p,
.inner-hero .container > p:last-child {
  margin: 0;
  color: #cbc7c0;
  font-size: 14px;
  line-height: 1.75;
}

.inner-hero .work-hero-foot { margin-top: 34px; }
.inner-hero .work-hero-foot .circle-link { display: none; }
.inner-hero .services-hero-grid { display: none; }

@media (max-width: 800px) {
  .inner-hero { min-height: 620px; padding: 135px 0 65px; }
  .inner-hero::before { width: 130vw; height: 130vw; right: -48vw; top: -18vw; }
  .inner-hero::after { width: 85vw; height: 85vw; right: -8vw; top: 40vw; }
  .inner-hero h1 { font-size: clamp(43px, 11.5vw, 62px); }
  .inner-hero .services-hero-inner { display: block; }
  .inner-hero .services-hero-note,
  .inner-hero .operations-hero-content > p:last-child,
  .inner-hero .work-hero-foot > p,
  .inner-hero .container > p:last-child { width: min(100%, 270px); font-size: 12px; }
}
