/* ==========================================================================
   families/services.css
   Famiglia dei servizi: schede di prestazione, percorsi, inviti all'azione.
   Caricato da 38 pagine.
   ========================================================================== */

body.v2-editorial-service,
body.v2-editorial-service main {
  background: var(--v2-canvas);
  color: var(--v2-ink);
}

body.v2-editorial-service .hero.v2-service-cover {
  position: relative;
  width: auto;
  max-width: none;
  margin: 0;
  padding: var(--hero-pad-y) 1.5rem !important;
  background: var(--v2-cover-bg);
  color: #fff;
  text-align: center;
}

body.v2-editorial-service .hero.v2-service-cover::before {
  content: "";
  position: absolute;
  inset: -18rem -12rem auto auto;
  width: 36rem;
  height: 36rem;
  border-radius: 50%;
  background: var(--v2-cover-glow);
  pointer-events: none;
}

body.v2-editorial-service .hero.v2-service-cover>:first-child {
  position: relative;
  z-index: 1;
  max-width: var(--v2-max-wide);
  margin-inline: auto;
  padding-left: 0;
  padding-right: 0;
}

body.v2-editorial-service .hero.v2-service-cover :is(.hero-badge,.glb-hero-kicker) {
  display: inline-block;
  margin: 0 0 .8rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--v2-gold-soft);
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
  text-shadow: none;
  font-size: .75rem;
}

body.v2-editorial-service .hero.v2-service-cover h1 {
  margin: 0 auto .95rem;
  color: #fff;
  font-family: var(--v2-serif);
  font-weight: 600 !important;
  letter-spacing: -.026em;
  text-align: center;
  text-shadow: none;
}

body.v2-editorial-service .hero.v2-service-cover h1 .h1-line2 {
  display: block;
  color: var(--v2-gold-soft);
  font-size: .64em;
  line-height: 1.05;
  margin-top: .25rem;
}

body.v2-editorial-service .hero.v2-service-cover :is(p,.hero-sub) {
  margin: 0 auto 1.2rem;
  color: rgba(255,255,255,.86);
  font-size: clamp(1rem,1.45vw,1.15rem) !important;
  line-height: 1.68 !important;
  text-align: center;
  text-wrap: pretty;
  text-shadow: none;
}

body.v2-editorial-service .hero.v2-service-cover :is(.hero-cta,.glb-cta-row) {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .6rem !important;
  margin: 1.15rem auto 0 !important;
}

body.v2-editorial-service .hero.v2-service-cover a:is(.btn-w,.btn-o,.btn-secondary),
body.v2-editorial-service .hero.v2-service-cover a.hero-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: .68rem .95rem;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 11px;
  background: rgba(255,255,255,.07);
  color: #fff;
  text-decoration: none;
  font-size: .79rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
}

body.v2-editorial-service .hero.v2-service-cover a.btn-w,
body.v2-editorial-service .hero.v2-service-cover a.hero-cta:not(.secondary):first-of-type {
  background: linear-gradient(180deg,#faf7f0,#ede3d2);
  border-color: rgba(255,255,255,.8);
  color: #102235;
}

body.v2-editorial-service .hero.v2-service-cover .glb-hero-note {
  max-width: 790px !important;
  margin: 1rem auto 0 !important;
  color: rgba(255,255,255,.72);
  font-size: .76rem !important;
  line-height: 1.58 !important;
}

body.v2-editorial-service .hero.v2-service-cover .glb-hero-note a {
  color: #fff;
}

body.v2-editorial-service main :is(h2,h3) {
  color: var(--v2-heading);
  text-wrap: balance;
}

body.v2-editorial-service main h2 {
  font-family: var(--v2-serif);
  font-weight: 600;
  letter-spacing: -.015em;
}

body.v2-editorial-service main p {
  color: var(--v2-text);
  text-wrap: pretty;
}

body.v2-editorial-service main :is(.container,.wrap,.content-wrap,.servizi-wrap) {
  max-width: var(--v2-max-wide);
  margin-left: auto;
  margin-right: auto;
}

body.v2-editorial-service main :is(.section,.editorial-section) {
  border-color: var(--v2-border-soft);
}

body.v2-editorial-service main .section-alt {
  background: var(--v2-surface-muted);
}

body.v2-editorial-service :is(.svc-card,.prof-card,.amb-card,.percorso-card,.modello-card,.destinatario,.formato-card,.area-card,.step,.faq-item,.card,.info-item,.social-card,.scheda-pratica) {
  border-color: var(--v2-border) !important;
  border-radius: var(--v2-radius-lg);
  background: var(--v2-surface);
  box-shadow: var(--v2-shadow-card);
}

body.v2-editorial-service :is(.svc-card,.amb-card,.percorso-card,.modello-card,.destinatario,.formato-card,.area-card,.step,.faq-item) {
  overflow: hidden;
}

body.v2-editorial-service :is(.svc-card h3,.amb-card h3,.percorso-card h3,.modello-title,.formato-title,.area-title,.prof-card h3) {
  color: var(--v2-heading);
}

body.v2-editorial-service .faq-item p {
  text-align: left;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
}

body.v2-editorial-service main :is(.section-label,.percorso-kicker,.gold-line) {
  color: var(--v2-gold-text);
}

body.v2-editorial-service.page-servizi :is(.editorial-copy,.servizi-wrap>p),
body.v2-editorial-service.page-consulenza-pedagogica-forense .content-wrap>p,
body.v2-editorial-service.page-territoriale .section>.container>p,
body.v2-editorial-service.page-supervisione-pedagogica .section>.container>p,
body.v2-editorial-service.page-formazione .section>.container>p {
  text-align: left;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
}

body.v2-editorial-service :is(.section-sub,.editorial-copy) {
  text-wrap: pretty;
}

body.v2-editorial-service :is(.cta-band,.cta-box-section) {
  background: var(--v2-cover-bg);
  color: #fff;
  border-color: transparent;
}

body.v2-editorial-service :is(.cta-band,.cta-box-section) :is(h2,h3) {
  color: #fff;
}

body.v2-editorial-service :is(.cta-band,.cta-box-section) p {
  color: rgba(255,255,255,.88);
  text-align: center;
}

body.v2-editorial-service .contatti-band {
  background: var(--v2-surface-muted);
  color: var(--v2-ink);
}

body.v2-editorial-service .contatti-band :is(h2,h3) {
  color: var(--v2-heading);
}

body.v2-editorial-service .manuale-band {
  background: var(--v2-surface);
  border-block: 1px solid var(--v2-border);
}

body.v2-editorial-service.page-contatti main>.container {
  max-width: 1040px;
}

body.v2-editorial-service.page-contatti :is(.card,.info-item,.social-card) {
  border: 1px solid var(--v2-border);
  background: #fff;
}

body.v2-editorial-service.page-contatti .form-group :is(input,textarea,select) {
  border-color: #cbd7e3;
  background: #fff;
  color: var(--v2-ink);
}

body.v2-editorial-service.page-contatti .form-group :is(input,textarea,select):focus {
  outline: 3px solid rgba(36,79,124,.18) !important;
  border-color: var(--v2-blue-link) !important;
}

body.v2-editorial-service .legal-note {
  max-width: 760px !important;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
}

body.v2-editorial-service.page-servizi .ruolo {
  font-size: .78rem;
  line-height: 1.55;
}

body.v2-editorial-service :is(.svc-link,.scheda-pratica-link) {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding-block: .2rem;
  text-underline-offset: .16em;
}

body.v2-editorial-service .manuale-cover span:not(.cover-icon) {
  font-size: .75rem;
  line-height: 1.45;
}

body.v2-editorial-service :is(.cta-band,.cta-box-section) .cta-box>p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

body.v2-editorial-service :is(.cta-band,.cta-box-section) a.btn-o {
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.42);
  color: #fff;
}

body.v2-editorial-service .cta-box,
body.v2-editorial-service .cta-box :is(h2,h3){
  color: #fff;
}



body.v2-editorial-service .cta-box>p {
  color: rgba(255,255,255,.88);
  max-width: 760px !important;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  text-align-last: auto;
}


body.v2-editorial-service main .percorso-kicker {
  font-size: .75rem;
}

body.v2-editorial-service main a.btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.v2-editorial-service :is(.cta-band,.home-contact-card) p {
  max-width: 760px !important;
  margin-left: auto;
  margin-right: auto;
}

body.v2-editorial-service.page-formazione .link-list {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 340px) {
  body.v2-editorial-service .home-contact-card {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 680px) {
  body.v2-editorial-service .hero.v2-service-cover {
    padding: var(--hero-pad-y) 1rem !important;
  }
  body.v2-editorial-service :is(.cta-band,.cta-box-section) p {
    text-align: center;
  }
  body.v2-editorial-service :is(.svc-link,.scheda-pratica-link) {
    min-height: 32px;
  }
  body.v2-editorial-service .hero.v2-service-cover .glb-mobile-lead-long {
    text-align: center;
    text-align-last: center;
  }
}
