@charset "UTF-8";
/* Singola prestazione — Figma «Prestazioni 3 - prestazione singola» */
body.single-prestazioni main.single-prestazione {
  margin-top: var(--header-height, 90px);
  max-width: none;
  width: 100%;
  padding: 0;
}

.single-prestazione {
  background: #fff;
}

.single-prestazione__article {
  width: 100%;
  max-width: var(--container-width, 1400px);
  margin: 0 auto;
  padding: 48px 24px 80px;
  box-sizing: border-box;
}

.single-prestazione__content {
  max-width: 960px;
}

.single-prestazione__breadcrumb {
  margin: 0 0 40px;
  font-size: 1rem;
  line-height: 1.4;
  color: #666666;
}

.single-prestazione__breadcrumb a {
  color: #666666;
  text-decoration: none;
}

.single-prestazione__breadcrumb a:hover {
  color: var(--color-primary);
}

.single-prestazione__breadcrumb-sep {
  margin: 0 0.35em;
}

.single-prestazione__breadcrumb-current {
  color: var(--color-primary);
  font-weight: 500;
}

.single-prestazione__code {
  margin: 0 0 12px;
  color: var(--color-primary);
  font-size: clamp(1.25rem, 1.5vw, 1.75rem);
  line-height: 1.1;
  font-weight: 500;
}

.single-prestazione__title {
  margin: 0 0 40px;
  font-size: clamp(2rem, 3.5vw, 3.5rem);
  line-height: 1.05;
  font-weight: 500;
  color: #0f0f0f;
}

.single-prestazione__title-row .single-prestazione__title {
  margin: 0;
}

.single-prestazione__body h2,
.single-prestazione__body h3,
.single-prestazione__body h4,
.single-prestazione__content > h2,
.single-prestazione__content > h3,
.single-prestazione__content > h4 {
  color: var(--color-primary);
}

.single-prestazione__body h2,
.single-prestazione__content > h2 {
  margin: 36px 0 16px;
  font-size: clamp(1.35rem, 1.8vw, 1.75rem);
  line-height: 1.2;
  font-weight: 600;
}

/* Titoli di sezione delle schede prestazione: stessa resa che avevano quando
   erano <strong> dentro un paragrafo, ora che sono heading veri.
   line-height 1.5 come il paragrafo da cui ereditavano, e nessuna eccezione
   sul primo titolo: anche prima aveva il margine superiore pieno. */
.single-prestazione__body h3,
.single-prestazione__content > h3 {
  margin: var(--box-margin) 0 calc(var(--box-margin) / 4);
  font-size: var(--font-size-sd);
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
}

.single-prestazione__body h2:first-child,
.single-prestazione__content > h2:first-child {
  margin-top: 0;
}

.single-prestazione__body p,
.single-prestazione__body ul,
.single-prestazione__body ol,
.single-prestazione__content > p,
.single-prestazione__content > ul,
.single-prestazione__content > ol {
  margin: 0 0 16px;
  font-size: clamp(1rem, 1.1vw, 1.125rem);
  line-height: 1.5;
  color: #2b2b2b;
}

.single-prestazione__body ul,
.single-prestazione__body ol,
.single-prestazione__content > ul,
.single-prestazione__content > ol {
  padding-left: 1.25em;
}

.single-prestazione__body li + li,
.single-prestazione__content > li + li {
  margin-top: 0.35em;
}

@media (max-width: 781px) {
  .single-prestazione__article {
    padding: 24px 18px 64px;
  }
  .single-prestazione__breadcrumb {
    margin-bottom: 28px;
  }
  .single-prestazione__title {
    margin-bottom: 28px;
  }
}
