/* ICLO — componenti riutilizzabili
   Ogni blocco è autonomo: può essere spostato in qualsiasi pagina senza dipendenze di contesto. */

/* ---------- Icona (SVG monocromatico colorabile) ---------- */
.icon {
  display: block;
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.icon--calendar {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22calendario%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_75%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_12%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_11%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_28%22%20class%3D%22st0%22%20d%3D%22M94.2%2C120c-10.3%2C0-18.6-8.1-18.8-18.4v-.4c0-10.3%2C8.1-18.6%2C18.4-18.8h.4c10.3%2C0%2C18.6%2C8.1%2C18.8%2C18.4v.4c0%2C10.3-8.1%2C18.6-18.4%2C18.8h-.4M23%2C150c-4%2C0-7.8-1.5-10.6-4.4-2.9-2.8-4.5-6.6-4.4-10.6V30c0-4%2C1.5-7.8%2C4.4-10.6%2C2.8-2.9%2C6.6-4.5%2C10.6-4.4h7.5V0h15v15h60V0h15v15h7.5c4%2C0%2C7.8%2C1.5%2C10.6%2C4.4%2C2.9%2C2.8%2C4.5%2C6.6%2C4.4%2C10.6v105c0%2C8.3-6.7%2C15-15%2C15H23ZM23%2C135h105V60H23v75ZM23%2C45h105v-15H23v15ZM23%2C45h0Z%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22calendario%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_75%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_12%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_11%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_28%22%20class%3D%22st0%22%20d%3D%22M94.2%2C120c-10.3%2C0-18.6-8.1-18.8-18.4v-.4c0-10.3%2C8.1-18.6%2C18.4-18.8h.4c10.3%2C0%2C18.6%2C8.1%2C18.8%2C18.4v.4c0%2C10.3-8.1%2C18.6-18.4%2C18.8h-.4M23%2C150c-4%2C0-7.8-1.5-10.6-4.4-2.9-2.8-4.5-6.6-4.4-10.6V30c0-4%2C1.5-7.8%2C4.4-10.6%2C2.8-2.9%2C6.6-4.5%2C10.6-4.4h7.5V0h15v15h60V0h15v15h7.5c4%2C0%2C7.8%2C1.5%2C10.6%2C4.4%2C2.9%2C2.8%2C4.5%2C6.6%2C4.4%2C10.6v105c0%2C8.3-6.7%2C15-15%2C15H23ZM23%2C135h105V60H23v75ZM23%2C45h105v-15H23v15ZM23%2C45h0Z%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--video {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22Video%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22play_circle_24dp_1F1F1F_FILL0_wght400_GRAD200_opsz24%22%20class%3D%22st0%22%20d%3D%22M55.4%2C110.2l54.8-35.3-54.8-35.3v70.5ZM75%2C148.9c-9.9%2C0-19.7-1.9-28.8-5.8-8.8-3.7-16.7-9.1-23.5-15.8-6.7-6.7-12.1-14.7-15.8-23.5-3.9-9.1-5.9-18.9-5.8-28.8%2C0-9.9%2C1.9-19.8%2C5.8-28.9%2C3.7-8.8%2C9.1-16.8%2C15.8-23.5%2C6.7-6.7%2C14.7-12.1%2C23.5-15.8%2C9.1-3.8%2C18.9-5.8%2C28.8-5.7%2C9.9%2C0%2C19.8%2C1.9%2C28.9%2C5.7%2C8.8%2C3.7%2C16.8%2C9%2C23.6%2C15.8%2C6.7%2C6.8%2C12.1%2C14.8%2C15.8%2C23.6%2C3.8%2C9.2%2C5.8%2C19%2C5.7%2C28.9%2C0%2C9.9-1.9%2C19.7-5.7%2C28.8-3.7%2C8.8-9%2C16.7-15.7%2C23.4-6.8%2C6.7-14.8%2C12.1-23.5%2C15.8-9.1%2C3.9-19%2C5.9-28.9%2C5.8h0ZM75%2C130.8c15.6%2C0%2C28.8-5.4%2C39.6-16.2%2C10.8-10.8%2C16.2-24%2C16.2-39.6%2C0-15.6-5.4-28.8-16.2-39.6-10.8-10.8-24-16.2-39.6-16.2-15.6%2C0-28.8%2C5.4-39.6%2C16.2-10.8%2C10.8-16.2%2C24-16.2%2C39.6%2C0%2C15.6%2C5.4%2C28.8%2C16.2%2C39.6%2C10.8%2C10.8%2C24%2C16.2%2C39.6%2C16.2h0Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22Video%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22play_circle_24dp_1F1F1F_FILL0_wght400_GRAD200_opsz24%22%20class%3D%22st0%22%20d%3D%22M55.4%2C110.2l54.8-35.3-54.8-35.3v70.5ZM75%2C148.9c-9.9%2C0-19.7-1.9-28.8-5.8-8.8-3.7-16.7-9.1-23.5-15.8-6.7-6.7-12.1-14.7-15.8-23.5-3.9-9.1-5.9-18.9-5.8-28.8%2C0-9.9%2C1.9-19.8%2C5.8-28.9%2C3.7-8.8%2C9.1-16.8%2C15.8-23.5%2C6.7-6.7%2C14.7-12.1%2C23.5-15.8%2C9.1-3.8%2C18.9-5.8%2C28.8-5.7%2C9.9%2C0%2C19.8%2C1.9%2C28.9%2C5.7%2C8.8%2C3.7%2C16.8%2C9%2C23.6%2C15.8%2C6.7%2C6.8%2C12.1%2C14.8%2C15.8%2C23.6%2C3.8%2C9.2%2C5.8%2C19%2C5.7%2C28.9%2C0%2C9.9-1.9%2C19.7-5.7%2C28.8-3.7%2C8.8-9%2C16.7-15.7%2C23.4-6.8%2C6.7-14.8%2C12.1-23.5%2C15.8-9.1%2C3.9-19%2C5.9-28.9%2C5.8h0ZM75%2C130.8c15.6%2C0%2C28.8-5.4%2C39.6-16.2%2C10.8-10.8%2C16.2-24%2C16.2-39.6%2C0-15.6-5.4-28.8-16.2-39.6-10.8-10.8-24-16.2-39.6-16.2-15.6%2C0-28.8%2C5.4-39.6%2C16.2-10.8%2C10.8-16.2%2C24-16.2%2C39.6%2C0%2C15.6%2C5.4%2C28.8%2C16.2%2C39.6%2C10.8%2C10.8%2C24%2C16.2%2C39.6%2C16.2h0Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--arrow {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22freccia%22%20transform%3D%22rotate(180%2075%2075)%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_82%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_5%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_4%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_26%22%20class%3D%22st0%22%20d%3D%22M75%2C105l10.5-10.5-12-12h31.5v-15h-31.5l12-12-10.5-10.5-30%2C30%2C30%2C30ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-18-7.6-32.3-21.9-39.8-39.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2C13.5%2C27.8%2C27.8%2C13.5%2C45.7%2C5.9%2C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.3%2C5.9%2C18%2C7.6%2C32.3%2C21.9%2C39.8%2C39.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.3%2C0%2C10.1-1.9%2C20-5.9%2C29.2-7.6%2C18-21.9%2C32.3-39.8%2C39.8-9.2%2C4-19.2%2C6-29.3%2C5.9M75%2C135c16.7%2C0%2C30.9-5.8%2C42.6-17.4%2C11.6-11.6%2C17.4-25.8%2C17.4-42.6%2C0-16.7-5.8-30.9-17.4-42.6-11.6-11.6-25.8-17.4-42.6-17.4-16.7%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22freccia%22%20transform%3D%22rotate(180%2075%2075)%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_82%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_5%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_4%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_26%22%20class%3D%22st0%22%20d%3D%22M75%2C105l10.5-10.5-12-12h31.5v-15h-31.5l12-12-10.5-10.5-30%2C30%2C30%2C30ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-18-7.6-32.3-21.9-39.8-39.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2C13.5%2C27.8%2C27.8%2C13.5%2C45.7%2C5.9%2C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.3%2C5.9%2C18%2C7.6%2C32.3%2C21.9%2C39.8%2C39.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.3%2C0%2C10.1-1.9%2C20-5.9%2C29.2-7.6%2C18-21.9%2C32.3-39.8%2C39.8-9.2%2C4-19.2%2C6-29.3%2C5.9M75%2C135c16.7%2C0%2C30.9-5.8%2C42.6-17.4%2C11.6-11.6%2C17.4-25.8%2C17.4-42.6%2C0-16.7-5.8-30.9-17.4-42.6-11.6-11.6-25.8-17.4-42.6-17.4-16.7%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

/* variante verso sinistra: usa l'asset originale, non una rotazione */
.icon--flip {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22freccia%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_82%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_5%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_4%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_26%22%20class%3D%22st0%22%20d%3D%22M75%2C105l10.5-10.5-12-12h31.5v-15h-31.5l12-12-10.5-10.5-30%2C30%2C30%2C30ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-18-7.6-32.3-21.9-39.8-39.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2C13.5%2C27.8%2C27.8%2C13.5%2C45.7%2C5.9%2C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.3%2C5.9%2C18%2C7.6%2C32.3%2C21.9%2C39.8%2C39.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.3%2C0%2C10.1-1.9%2C20-5.9%2C29.2-7.6%2C18-21.9%2C32.3-39.8%2C39.8-9.2%2C4-19.2%2C6-29.3%2C5.9M75%2C135c16.7%2C0%2C30.9-5.8%2C42.6-17.4%2C11.6-11.6%2C17.4-25.8%2C17.4-42.6%2C0-16.7-5.8-30.9-17.4-42.6-11.6-11.6-25.8-17.4-42.6-17.4-16.7%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22freccia%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_82%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_5%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_4%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_26%22%20class%3D%22st0%22%20d%3D%22M75%2C105l10.5-10.5-12-12h31.5v-15h-31.5l12-12-10.5-10.5-30%2C30%2C30%2C30ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-18-7.6-32.3-21.9-39.8-39.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2C13.5%2C27.8%2C27.8%2C13.5%2C45.7%2C5.9%2C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.3%2C5.9%2C18%2C7.6%2C32.3%2C21.9%2C39.8%2C39.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.3%2C0%2C10.1-1.9%2C20-5.9%2C29.2-7.6%2C18-21.9%2C32.3-39.8%2C39.8-9.2%2C4-19.2%2C6-29.3%2C5.9M75%2C135c16.7%2C0%2C30.9-5.8%2C42.6-17.4%2C11.6-11.6%2C17.4-25.8%2C17.4-42.6%2C0-16.7-5.8-30.9-17.4-42.6-11.6-11.6-25.8-17.4-42.6-17.4-16.7%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--enrolment {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22iscrizioni%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22timer_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M53.9%2C14.3V0h42.9v14.3h-42.9ZM68.1%2C92.9h14.3v-42.9h-14.3v42.9ZM50.4%2C144.9c-7.6-3.3-14.6-8-20.4-13.8-5.9-5.9-10.6-12.8-13.8-20.4-3.4-7.9-5.1-16.3-5.1-24.9%2C0-8.6%2C1.7-17.1%2C5.1-24.9%2C3.3-7.6%2C8-14.6%2C13.8-20.4%2C5.9-5.9%2C12.8-10.6%2C20.4-13.8%2C7.9-3.4%2C16.3-5.1%2C24.9-5.1%2C7.2%2C0%2C14.4%2C1.2%2C21.3%2C3.6%2C6.9%2C2.4%2C13.3%2C5.9%2C19.1%2C10.4l10-10%2C10%2C10-10%2C10c4.4%2C5.8%2C7.9%2C12.2%2C10.4%2C19.1%2C2.4%2C6.8%2C3.6%2C14%2C3.6%2C21.2%2C0%2C8.6-1.7%2C17.1-5.1%2C24.9-3.3%2C7.6-8%2C14.6-13.8%2C20.4-5.9%2C5.9-12.8%2C10.6-20.4%2C13.8-7.9%2C3.4-16.3%2C5.1-24.9%2C5.1-8.6%2C0-17.1-1.7-24.9-5.1ZM110.6%2C121.1c9.6-9.3%2C14.9-22.1%2C14.6-35.4.2-13.3-5.1-26.1-14.6-35.4-9.3-9.6-22.1-14.9-35.4-14.6-13.3-.2-26.1%2C5.1-35.4%2C14.6-9.6%2C9.3-14.9%2C22.1-14.6%2C35.4-.2%2C13.3%2C5.1%2C26.1%2C14.6%2C35.4%2C9.3%2C9.6%2C22.1%2C14.9%2C35.4%2C14.6%2C13.3.2%2C26.1-5.1%2C35.4-14.6Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22iscrizioni%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22timer_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M53.9%2C14.3V0h42.9v14.3h-42.9ZM68.1%2C92.9h14.3v-42.9h-14.3v42.9ZM50.4%2C144.9c-7.6-3.3-14.6-8-20.4-13.8-5.9-5.9-10.6-12.8-13.8-20.4-3.4-7.9-5.1-16.3-5.1-24.9%2C0-8.6%2C1.7-17.1%2C5.1-24.9%2C3.3-7.6%2C8-14.6%2C13.8-20.4%2C5.9-5.9%2C12.8-10.6%2C20.4-13.8%2C7.9-3.4%2C16.3-5.1%2C24.9-5.1%2C7.2%2C0%2C14.4%2C1.2%2C21.3%2C3.6%2C6.9%2C2.4%2C13.3%2C5.9%2C19.1%2C10.4l10-10%2C10%2C10-10%2C10c4.4%2C5.8%2C7.9%2C12.2%2C10.4%2C19.1%2C2.4%2C6.8%2C3.6%2C14%2C3.6%2C21.2%2C0%2C8.6-1.7%2C17.1-5.1%2C24.9-3.3%2C7.6-8%2C14.6-13.8%2C20.4-5.9%2C5.9-12.8%2C10.6-20.4%2C13.8-7.9%2C3.4-16.3%2C5.1-24.9%2C5.1-8.6%2C0-17.1-1.7-24.9-5.1ZM110.6%2C121.1c9.6-9.3%2C14.9-22.1%2C14.6-35.4.2-13.3-5.1-26.1-14.6-35.4-9.3-9.6-22.1-14.9-35.4-14.6-13.3-.2-26.1%2C5.1-35.4%2C14.6-9.6%2C9.3-14.9%2C22.1-14.6%2C35.4-.2%2C13.3%2C5.1%2C26.1%2C14.6%2C35.4%2C9.3%2C9.6%2C22.1%2C14.9%2C35.4%2C14.6%2C13.3.2%2C26.1-5.1%2C35.4-14.6Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--language {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22lingua%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22language_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M45.9%2C144.1c-8.9-3.8-17-9.3-23.9-16.1-6.8-6.9-12.3-15-16.1-23.9C2%2C94.9%2C0%2C84.9%2C0%2C74.9c0-10%2C1.9-19.9%2C5.9-29.1%2C3.8-8.9%2C9.3-17%2C16.1-23.8%2C6.9-6.8%2C15-12.3%2C23.9-16.1C55.1%2C2%2C65.1%2C0%2C75.1%2C0c10%2C0%2C19.9%2C1.9%2C29.1%2C5.9%2C8.9%2C3.8%2C17%2C9.3%2C23.8%2C16.1%2C6.8%2C6.8%2C12.3%2C14.9%2C16.1%2C23.8%2C4%2C9.2%2C6%2C19.1%2C5.9%2C29.1%2C0%2C10-2%2C19.9-5.9%2C29.2-3.8%2C8.9-9.3%2C17-16.1%2C23.9-6.8%2C6.8-14.9%2C12.3-23.8%2C16.1-9.2%2C4-19.1%2C6-29.1%2C5.9-10%2C0-19.9-2-29.2-5.9ZM75%2C134.6c3.2-4.4%2C6-9.1%2C8.4-14.1%2C2.4-5%2C4.4-10.2%2C5.8-15.6h-28.5c1.4%2C5.4%2C3.4%2C10.6%2C5.8%2C15.6%2C2.4%2C4.9%2C5.2%2C9.6%2C8.4%2C14.1ZM55.5%2C131.6c-2.3-4.1-4.2-8.4-5.9-12.8-1.7-4.5-3.1-9.1-4.2-13.8h-22.1c3.6%2C6.2%2C8.2%2C11.7%2C13.6%2C16.3%2C5.5%2C4.6%2C11.8%2C8.1%2C18.7%2C10.3ZM94.5%2C131.6c6.8-2.2%2C13.2-5.7%2C18.7-10.3%2C5.4-4.6%2C10-10.1%2C13.6-16.3h-22.1c-1.1%2C4.7-2.5%2C9.3-4.2%2C13.8-1.7%2C4.4-3.6%2C8.7-5.9%2C12.8ZM16.9%2C90h25.5c-.4-2.5-.7-5-.8-7.4s-.3-5-.3-7.6c0-2.6%2C0-5.2.3-7.6s.5-4.9.8-7.4h-25.5c-.6%2C2.4-1.1%2C4.9-1.4%2C7.4-.3%2C2.5-.5%2C5.1-.5%2C7.6%2C0%2C2.5.2%2C5.1.5%2C7.6.3%2C2.5.8%2C5%2C1.4%2C7.4ZM57.4%2C90h35.2c.4-2.5.7-5%2C.8-7.4s.3-5%2C.3-7.6c0-2.6%2C0-5.2-.3-7.6s-.5-4.9-.8-7.4h-35.2c-.4%2C2.5-.7%2C5-.8%2C7.4s-.3%2C5-.3%2C7.6c0%2C2.6%2C0%2C5.2.3%2C7.6s.5%2C4.9.8%2C7.4ZM107.6%2C90h25.5c.6-2.4%2C1.1-4.9%2C1.4-7.4.3-2.5.5-5.1.5-7.6%2C0-2.5-.2-5.1-.5-7.6-.3-2.5-.8-5-1.4-7.4h-25.5c.4%2C2.5.7%2C5%2C.8%2C7.4s.3%2C5%2C.3%2C7.6c0%2C2.6%2C0%2C5.2-.3%2C7.6s-.5%2C4.9-.8%2C7.4ZM104.6%2C45h22.1c-3.6-6.2-8.2-11.7-13.6-16.3-5.5-4.6-11.8-8.1-18.7-10.3%2C2.3%2C4.1%2C4.2%2C8.4%2C5.9%2C12.8%2C1.7%2C4.5%2C3.1%2C9.1%2C4.2%2C13.8ZM60.8%2C45h28.5c-1.4-5.4-3.4-10.6-5.8-15.6-2.4-4.9-5.2-9.6-8.4-14.1-3.2%2C4.4-6%2C9.1-8.4%2C14.1-2.4%2C5-4.4%2C10.2-5.8%2C15.6ZM23.2%2C45h22.1c1.1-4.7%2C2.5-9.3%2C4.2-13.8%2C1.7-4.4%2C3.6-8.7%2C5.9-12.8-6.8%2C2.2-13.2%2C5.7-18.7%2C10.3-5.4%2C4.6-10%2C10.1-13.6%2C16.3Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22lingua%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22language_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M45.9%2C144.1c-8.9-3.8-17-9.3-23.9-16.1-6.8-6.9-12.3-15-16.1-23.9C2%2C94.9%2C0%2C84.9%2C0%2C74.9c0-10%2C1.9-19.9%2C5.9-29.1%2C3.8-8.9%2C9.3-17%2C16.1-23.8%2C6.9-6.8%2C15-12.3%2C23.9-16.1C55.1%2C2%2C65.1%2C0%2C75.1%2C0c10%2C0%2C19.9%2C1.9%2C29.1%2C5.9%2C8.9%2C3.8%2C17%2C9.3%2C23.8%2C16.1%2C6.8%2C6.8%2C12.3%2C14.9%2C16.1%2C23.8%2C4%2C9.2%2C6%2C19.1%2C5.9%2C29.1%2C0%2C10-2%2C19.9-5.9%2C29.2-3.8%2C8.9-9.3%2C17-16.1%2C23.9-6.8%2C6.8-14.9%2C12.3-23.8%2C16.1-9.2%2C4-19.1%2C6-29.1%2C5.9-10%2C0-19.9-2-29.2-5.9ZM75%2C134.6c3.2-4.4%2C6-9.1%2C8.4-14.1%2C2.4-5%2C4.4-10.2%2C5.8-15.6h-28.5c1.4%2C5.4%2C3.4%2C10.6%2C5.8%2C15.6%2C2.4%2C4.9%2C5.2%2C9.6%2C8.4%2C14.1ZM55.5%2C131.6c-2.3-4.1-4.2-8.4-5.9-12.8-1.7-4.5-3.1-9.1-4.2-13.8h-22.1c3.6%2C6.2%2C8.2%2C11.7%2C13.6%2C16.3%2C5.5%2C4.6%2C11.8%2C8.1%2C18.7%2C10.3ZM94.5%2C131.6c6.8-2.2%2C13.2-5.7%2C18.7-10.3%2C5.4-4.6%2C10-10.1%2C13.6-16.3h-22.1c-1.1%2C4.7-2.5%2C9.3-4.2%2C13.8-1.7%2C4.4-3.6%2C8.7-5.9%2C12.8ZM16.9%2C90h25.5c-.4-2.5-.7-5-.8-7.4s-.3-5-.3-7.6c0-2.6%2C0-5.2.3-7.6s.5-4.9.8-7.4h-25.5c-.6%2C2.4-1.1%2C4.9-1.4%2C7.4-.3%2C2.5-.5%2C5.1-.5%2C7.6%2C0%2C2.5.2%2C5.1.5%2C7.6.3%2C2.5.8%2C5%2C1.4%2C7.4ZM57.4%2C90h35.2c.4-2.5.7-5%2C.8-7.4s.3-5%2C.3-7.6c0-2.6%2C0-5.2-.3-7.6s-.5-4.9-.8-7.4h-35.2c-.4%2C2.5-.7%2C5-.8%2C7.4s-.3%2C5-.3%2C7.6c0%2C2.6%2C0%2C5.2.3%2C7.6s.5%2C4.9.8%2C7.4ZM107.6%2C90h25.5c.6-2.4%2C1.1-4.9%2C1.4-7.4.3-2.5.5-5.1.5-7.6%2C0-2.5-.2-5.1-.5-7.6-.3-2.5-.8-5-1.4-7.4h-25.5c.4%2C2.5.7%2C5%2C.8%2C7.4s.3%2C5%2C.3%2C7.6c0%2C2.6%2C0%2C5.2-.3%2C7.6s-.5%2C4.9-.8%2C7.4ZM104.6%2C45h22.1c-3.6-6.2-8.2-11.7-13.6-16.3-5.5-4.6-11.8-8.1-18.7-10.3%2C2.3%2C4.1%2C4.2%2C8.4%2C5.9%2C12.8%2C1.7%2C4.5%2C3.1%2C9.1%2C4.2%2C13.8ZM60.8%2C45h28.5c-1.4-5.4-3.4-10.6-5.8-15.6-2.4-4.9-5.2-9.6-8.4-14.1-3.2%2C4.4-6%2C9.1-8.4%2C14.1-2.4%2C5-4.4%2C10.2-5.8%2C15.6ZM23.2%2C45h22.1c1.1-4.7%2C2.5-9.3%2C4.2-13.8%2C1.7-4.4%2C3.6-8.7%2C5.9-12.8-6.8%2C2.2-13.2%2C5.7-18.7%2C10.3-5.4%2C4.6-10%2C10.1-13.6%2C16.3Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--referent {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22referente%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22person_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M48.5%2C64c-7.2-6.9-11.2-16.5-11-26.5-.1-10%2C3.8-19.6%2C11-26.5C55.4%2C3.8%2C65-.1%2C75%2C0c10-.1%2C19.6%2C3.8%2C26.5%2C11%2C7.2%2C6.9%2C11.2%2C16.5%2C11%2C26.5.1%2C10-3.8%2C19.6-11%2C26.5-6.9%2C7.2-16.5%2C11.2-26.5%2C11-10%2C.1-19.6-3.8-26.5-11ZM0%2C150v-26.2c0-5.2%2C1.4-10.2%2C4.1-14.6%2C2.6-4.3%2C6.4-7.9%2C10.9-10.2%2C9.4-4.7%2C19.3-8.4%2C29.5-10.9%2C10-2.4%2C20.2-3.6%2C30.5-3.6%2C10.3%2C0%2C20.5%2C1.2%2C30.5%2C3.6%2C10.2%2C2.5%2C20.1%2C6.2%2C29.5%2C10.9%2C4.5%2C2.3%2C8.3%2C5.9%2C10.9%2C10.2%2C2.7%2C4.4%2C4.1%2C9.5%2C4.1%2C14.6v26.2H0ZM18.8%2C131.3h112.5v-7.5c0-1.7-.4-3.3-1.3-4.7-.8-1.4-2-2.5-3.4-3.3-8.1-4.1-16.7-7.3-25.5-9.5-8.5-2.1-17.2-3.2-26-3.2-8.8%2C0-17.5%2C1.1-26%2C3.2-8.8%2C2.2-17.4%2C5.4-25.5%2C9.5-1.4.8-2.6%2C1.9-3.4%2C3.3-.9%2C1.4-1.3%2C3-1.3%2C4.7v7.5ZM88.2%2C50.7c3.6-3.5%2C5.6-8.3%2C5.5-13.2%2C0-5-1.9-9.8-5.5-13.2-3.5-3.6-8.3-5.6-13.2-5.5-5%2C0-9.8%2C1.9-13.2%2C5.5-3.6%2C3.5-5.6%2C8.3-5.5%2C13.2%2C0%2C5%2C1.9%2C9.8%2C5.5%2C13.2%2C3.5%2C3.6%2C8.3%2C5.6%2C13.2%2C5.5%2C5%2C0%2C9.8-1.9%2C13.2-5.5Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22referente%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22person_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M48.5%2C64c-7.2-6.9-11.2-16.5-11-26.5-.1-10%2C3.8-19.6%2C11-26.5C55.4%2C3.8%2C65-.1%2C75%2C0c10-.1%2C19.6%2C3.8%2C26.5%2C11%2C7.2%2C6.9%2C11.2%2C16.5%2C11%2C26.5.1%2C10-3.8%2C19.6-11%2C26.5-6.9%2C7.2-16.5%2C11.2-26.5%2C11-10%2C.1-19.6-3.8-26.5-11ZM0%2C150v-26.2c0-5.2%2C1.4-10.2%2C4.1-14.6%2C2.6-4.3%2C6.4-7.9%2C10.9-10.2%2C9.4-4.7%2C19.3-8.4%2C29.5-10.9%2C10-2.4%2C20.2-3.6%2C30.5-3.6%2C10.3%2C0%2C20.5%2C1.2%2C30.5%2C3.6%2C10.2%2C2.5%2C20.1%2C6.2%2C29.5%2C10.9%2C4.5%2C2.3%2C8.3%2C5.9%2C10.9%2C10.2%2C2.7%2C4.4%2C4.1%2C9.5%2C4.1%2C14.6v26.2H0ZM18.8%2C131.3h112.5v-7.5c0-1.7-.4-3.3-1.3-4.7-.8-1.4-2-2.5-3.4-3.3-8.1-4.1-16.7-7.3-25.5-9.5-8.5-2.1-17.2-3.2-26-3.2-8.8%2C0-17.5%2C1.1-26%2C3.2-8.8%2C2.2-17.4%2C5.4-25.5%2C9.5-1.4.8-2.6%2C1.9-3.4%2C3.3-.9%2C1.4-1.3%2C3-1.3%2C4.7v7.5ZM88.2%2C50.7c3.6-3.5%2C5.6-8.3%2C5.5-13.2%2C0-5-1.9-9.8-5.5-13.2-3.5-3.6-8.3-5.6-13.2-5.5-5%2C0-9.8%2C1.9-13.2%2C5.5-3.6%2C3.5-5.6%2C8.3-5.5%2C13.2%2C0%2C5%2C1.9%2C9.8%2C5.5%2C13.2%2C3.5%2C3.6%2C8.3%2C5.6%2C13.2%2C5.5%2C5%2C0%2C9.8-1.9%2C13.2-5.5Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--instagram {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202c2.72%200%203.06.01%204.12.06%201.07.05%201.8.22%202.43.46.66.26%201.22.6%201.77%201.16.56.55.9%201.11%201.16%201.77.24.63.41%201.36.46%202.43.05%201.07.06%201.4.06%204.12s-.01%203.06-.06%204.12c-.05%201.07-.22%201.8-.46%202.43-.26.66-.6%201.22-1.16%201.77-.55.56-1.11.9-1.77%201.16-.63.24-1.36.41-2.43.46-1.07.05-1.4.06-4.12.06s-3.06-.01-4.12-.06c-1.07-.05-1.8-.22-2.43-.46a4.9%204.9%200%200%201-1.77-1.16%204.9%204.9%200%200%201-1.16-1.77c-.24-.63-.41-1.36-.46-2.43C2.01%2015.06%202%2014.72%202%2012s.01-3.06.06-4.12c.05-1.07.22-1.8.46-2.43.26-.66.6-1.22%201.16-1.77.55-.56%201.11-.9%201.77-1.16.63-.24%201.36-.41%202.43-.46C8.94%202.01%209.28%202%2012%202Zm0%201.8c-2.67%200-2.99.01-4.04.06-.98.04-1.5.2-1.86.34-.47.18-.8.4-1.15.75-.35.35-.57.68-.75%201.15-.14.36-.3.88-.34%201.86-.05%201.05-.06%201.37-.06%204.04s.01%202.99.06%204.04c.4.98.2%201.5.34%201.86.18.47.4.8.75%201.15.35.35.68.57%201.15.75.36.14.88.3%201.86.34%201.05.05%201.37.06%204.04.06s2.99-.01%204.04-.06c.98-.04%201.5-.2%201.86-.34.47-.18.8-.4%201.15-.75.35-.35.57-.68.75-1.15.14-.36.3-.88.34-1.86.05-1.05.06-1.37.06-4.04s-.01-2.99-.06-4.04c-.04-.98-.2-1.5-.34-1.86a3.1%203.1%200%200%200-.75-1.15%203.1%203.1%200%200%200-1.15-.75c-.36-.14-.88-.3-1.86-.34-1.05-.05-1.37-.06-4.04-.06Zm0%203.06a5.14%205.14%200%201%201%200%2010.28%205.14%205.14%200%200%201%200-10.28Zm0%201.8a3.34%203.34%200%201%200%200%206.68%203.34%203.34%200%200%200%200-6.68Zm5.34-3.2a1.2%201.2%200%201%201%200%202.4%201.2%201.2%200%200%201%200-2.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202c2.72%200%203.06.01%204.12.06%201.07.05%201.8.22%202.43.46.66.26%201.22.6%201.77%201.16.56.55.9%201.11%201.16%201.77.24.63.41%201.36.46%202.43.05%201.07.06%201.4.06%204.12s-.01%203.06-.06%204.12c-.05%201.07-.22%201.8-.46%202.43-.26.66-.6%201.22-1.16%201.77-.55.56-1.11.9-1.77%201.16-.63.24-1.36.41-2.43.46-1.07.05-1.4.06-4.12.06s-3.06-.01-4.12-.06c-1.07-.05-1.8-.22-2.43-.46a4.9%204.9%200%200%201-1.77-1.16%204.9%204.9%200%200%201-1.16-1.77c-.24-.63-.41-1.36-.46-2.43C2.01%2015.06%202%2014.72%202%2012s.01-3.06.06-4.12c.05-1.07.22-1.8.46-2.43.26-.66.6-1.22%201.16-1.77.55-.56%201.11-.9%201.77-1.16.63-.24%201.36-.41%202.43-.46C8.94%202.01%209.28%202%2012%202Zm0%201.8c-2.67%200-2.99.01-4.04.06-.98.04-1.5.2-1.86.34-.47.18-.8.4-1.15.75-.35.35-.57.68-.75%201.15-.14.36-.3.88-.34%201.86-.05%201.05-.06%201.37-.06%204.04s.01%202.99.06%204.04c.4.98.2%201.5.34%201.86.18.47.4.8.75%201.15.35.35.68.57%201.15.75.36.14.88.3%201.86.34%201.05.05%201.37.06%204.04.06s2.99-.01%204.04-.06c.98-.04%201.5-.2%201.86-.34.47-.18.8-.4%201.15-.75.35-.35.57-.68.75-1.15.14-.36.3-.88.34-1.86.05-1.05.06-1.37.06-4.04s-.01-2.99-.06-4.04c-.04-.98-.2-1.5-.34-1.86a3.1%203.1%200%200%200-.75-1.15%203.1%203.1%200%200%200-1.15-.75c-.36-.14-.88-.3-1.86-.34-1.05-.05-1.37-.06-4.04-.06Zm0%203.06a5.14%205.14%200%201%201%200%2010.28%205.14%205.14%200%200%201%200-10.28Zm0%201.8a3.34%203.34%200%201%200%200%206.68%203.34%203.34%200%200%200%200-6.68Zm5.34-3.2a1.2%201.2%200%201%201%200%202.4%201.2%201.2%200%200%201%200-2.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--linkedin {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M4.98%203.5a2.5%202.5%200%201%201%200%205%202.5%202.5%200%200%201%200-5ZM3%209.5h4v11H3v-11Zm6.5%200h3.83v1.5h.05c.53-.95%201.83-1.95%203.77-1.95%204.03%200%204.78%202.5%204.78%205.75v5.7h-4v-5.05c0-1.2-.02-2.75-1.75-2.75-1.75%200-2.02%201.31-2.02%202.66v5.14h-4v-11Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M4.98%203.5a2.5%202.5%200%201%201%200%205%202.5%202.5%200%200%201%200-5ZM3%209.5h4v11H3v-11Zm6.5%200h3.83v1.5h.05c.53-.95%201.83-1.95%203.77-1.95%204.03%200%204.78%202.5%204.78%205.75v5.7h-4v-5.05c0-1.2-.02-2.75-1.75-2.75-1.75%200-2.02%201.31-2.02%202.66v5.14h-4v-11Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--hands-on {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M8.5%202a1.25%201.25%200%200%201%201.25%201.25v7.1h1V1.75a1.25%201.25%200%200%201%202.5%200v8.6h1V3.4a1.25%201.25%200%200%201%202.5%200v7.95l1.02-1.53a1.3%201.3%200%200%201%202.2%201.38l-3.3%205.42A7%207%200%200%201%2010.7%2020h-.45a6.5%206.5%200%200%201-5.6-3.2L2.3%2012.9a1.3%201.3%200%200%201%202.05-1.57l1.4%201.6h.5V3.25A1.25%201.25%200%200%201%208.5%202Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M6%2021.2h12V23H6z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M8.5%202a1.25%201.25%200%200%201%201.25%201.25v7.1h1V1.75a1.25%201.25%200%200%201%202.5%200v8.6h1V3.4a1.25%201.25%200%200%201%202.5%200v7.95l1.02-1.53a1.3%201.3%200%200%201%202.2%201.38l-3.3%205.42A7%207%200%200%201%2010.7%2020h-.45a6.5%206.5%200%200%201-5.6-3.2L2.3%2012.9a1.3%201.3%200%200%201%202.05-1.57l1.4%201.6h.5V3.25A1.25%201.25%200%200%201%208.5%202Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M6%2021.2h12V23H6z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--faculty {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M9%203a3.5%203.5%200%201%201%200%207%203.5%203.5%200%200%201%200-7Zm8%201.2a2.9%202.9%200%201%201%200%205.8%202.9%202.9%200%200%201%200-5.8ZM9%2011.6c3.2%200%206%201.6%206%203.6v3.6H3v-3.6c0-2%202.8-3.6%206-3.6Zm8%20.6c2.6%200%204.6%201.3%204.6%202.9v3.7h-4.9v-3.6c0-1.1-.5-2.1-1.4-2.9.5-.07%201.05-.1%201.7-.1Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M9%203a3.5%203.5%200%201%201%200%207%203.5%203.5%200%200%201%200-7Zm8%201.2a2.9%202.9%200%201%201%200%205.8%202.9%202.9%200%200%201%200-5.8ZM9%2011.6c3.2%200%206%201.6%206%203.6v3.6H3v-3.6c0-2%202.8-3.6%206-3.6Zm8%20.6c2.6%200%204.6%201.3%204.6%202.9v3.7h-4.9v-3.6c0-1.1-.5-2.1-1.4-2.9.5-.07%201.05-.1%201.7-.1Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--programs {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202%2022.5%207.4%2012%2012.8%201.5%207.4%2012%202Zm7.9%208.1%202.6%201.35L12%2016.9%201.5%2011.45l2.6-1.35L12%2014.1l7.9-4ZM19.9%2015l2.6%201.35L12%2021.8%201.5%2016.35%204.1%2015%2012%2019l7.9-4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202%2022.5%207.4%2012%2012.8%201.5%207.4%2012%202Zm7.9%208.1%202.6%201.35L12%2016.9%201.5%2011.45l2.6-1.35L12%2014.1l7.9-4ZM19.9%2015l2.6%201.35L12%2021.8%201.5%2016.35%204.1%2015%2012%2019l7.9-4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--dialogue {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203h13a2%202%200%200%201%202%202v7a2%202%200%200%201-2%202H8.6L4%2017.6V14H3a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%207h1a2%202%200%200%201%202%202v7a2%202%200%200%201-2%202h-1v3.4L16.2%2018H10a2%202%200%200%201-1.9-1.4H16a4%204%200%200%200%204-4V7Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203h13a2%202%200%200%201%202%202v7a2%202%200%200%201-2%202H8.6L4%2017.6V14H3a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%207h1a2%202%200%200%201%202%202v7a2%202%200%200%201-2%202h-1v3.4L16.2%2018H10a2%202%200%200%201-1.9-1.4H16a4%204%200%200%200%204-4V7Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--registration {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M6%202h8l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2Zm7.5%201.8V8h4.2l-4.2-4.2ZM8%2012h8v1.8H8V12Zm0%203.6h8v1.8H8v-1.8ZM8%208.4h3.5v1.8H8V8.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M6%202h8l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2Zm7.5%201.8V8h4.2l-4.2-4.2ZM8%2012h8v1.8H8V12Zm0%203.6h8v1.8H8v-1.8ZM8%208.4h3.5v1.8H8V8.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--speaker {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202a3.2%203.2%200%200%201%203.2%203.2v6a3.2%203.2%200%201%201-6.4%200v-6A3.2%203.2%200%200%201%2012%202ZM5.4%2010.4h1.9a4.7%204.7%200%200%200%209.4%200h1.9a6.6%206.6%200%200%201-5.65%206.5V20h3.35v1.9H7.7V20h3.35v-3.1A6.6%206.6%200%200%201%205.4%2010.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202a3.2%203.2%200%200%201%203.2%203.2v6a3.2%203.2%200%201%201-6.4%200v-6A3.2%203.2%200%200%201%2012%202ZM5.4%2010.4h1.9a4.7%204.7%200%200%200%209.4%200h1.9a6.6%206.6%200%200%201-5.65%206.5V20h3.35v1.9H7.7V20h3.35v-3.1A6.6%206.6%200%200%201%205.4%2010.4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--certificate {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%201.6a6.4%206.4%200%200%201%203.4%2011.82V22l-3.4-2.1L8.6%2022v-8.58A6.4%206.4%200%200%201%2012%201.6Zm0%201.9a4.5%204.5%200%201%200%200%209%204.5%204.5%200%200%200%200-9Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%201.6a6.4%206.4%200%200%201%203.4%2011.82V22l-3.4-2.1L8.6%2022v-8.58A6.4%206.4%200%200%201%2012%201.6Zm0%201.9a4.5%204.5%200%201%200%200%209%204.5%204.5%200%200%200%200-9Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--planning {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203h8v6H3V3Zm10%200h8v6h-8V3ZM3%2011h8v10H3V11Zm10%204h8v6h-8v-6Zm0-4h8v2h-8v-2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203h8v6H3V3Zm10%200h8v6h-8V3ZM3%2011h8v10H3V11Zm10%204h8v6h-8v-6Zm0-4h8v2h-8v-2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--transfer {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M2%2012.5h3.2V9.9a1%201%200%200%201%201-1h5.1a3.6%203.6%200%200%201%203.6%203.6h4.5a2.6%202.6%200%200%201%202.6%202.6v2.4H20a2.4%202.4%200%200%201-4.8%200H8.8a2.4%202.4%200%200%201-4.8%200H2v-5Zm4.6%205.4a1%201%200%201%200%200%20.1Zm11.2%200a1%201%200%201%200%200%20.1ZM6.9%2010.7v1.8h5.2a1.9%201.9%200%200%200-1.9-1.8H6.9Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%205.4h9.1v1.7H2z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M2%2012.5h3.2V9.9a1%201%200%200%201%201-1h5.1a3.6%203.6%200%200%201%203.6%203.6h4.5a2.6%202.6%200%200%201%202.6%202.6v2.4H20a2.4%202.4%200%200%201-4.8%200H8.8a2.4%202.4%200%200%201-4.8%200H2v-5Zm4.6%205.4a1%201%200%201%200%200%20.1Zm11.2%200a1%201%200%201%200%200%20.1ZM6.9%2010.7v1.8h5.2a1.9%201.9%200%200%200-1.9-1.8H6.9Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%205.4h9.1v1.7H2z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--catering {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%207.2h13v6.1a5.4%205.4%200%200%201-5.4%205.4H8.4A5.4%205.4%200%200%201%203%2013.3V7.2Zm14.8%200h1.3a3.1%203.1%200%200%201%200%206.2h-1.3V11.5h1.3a1.2%201.2%200%200%200%200-2.4h-1.3V7.2ZM2.4%2020.1h17.2V22H2.4v-1.9ZM6.6%202h1.8v3.4H6.6V2Zm4%200h1.8v3.4h-1.8V2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%207.2h13v6.1a5.4%205.4%200%200%201-5.4%205.4H8.4A5.4%205.4%200%200%201%203%2013.3V7.2Zm14.8%200h1.3a3.1%203.1%200%200%201%200%206.2h-1.3V11.5h1.3a1.2%201.2%200%200%200%200-2.4h-1.3V7.2ZM2.4%2020.1h17.2V22H2.4v-1.9ZM6.6%202h1.8v3.4H6.6V2Zm4%200h1.8v3.4h-1.8V2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--documents {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M8%201.9h6.4l4.6%204.6v11.2a2%202%200%200%201-2%202H8a2%202%200%200%201-2-2V3.9a2%202%200%200%201%202-2Zm6%201.9v3.4h3.4L14%203.8ZM9.6%2010.2h6.8V12H9.6v-1.8Zm0%203.5h6.8v1.8H9.6v-1.8ZM4%205.2v14.4a2.6%202.6%200%200%200%202.6%202.6h9.7v-1.9H6.6a.7.7%200%200%201-.7-.7V5.2H4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M8%201.9h6.4l4.6%204.6v11.2a2%202%200%200%201-2%202H8a2%202%200%200%201-2-2V3.9a2%202%200%200%201%202-2Zm6%201.9v3.4h3.4L14%203.8ZM9.6%2010.2h6.8V12H9.6v-1.8Zm0%203.5h6.8v1.8H9.6v-1.8ZM4%205.2v14.4a2.6%202.6%200%200%200%202.6%202.6h9.7v-1.9H6.6a.7.7%200%200%201-.7-.7V5.2H4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--av {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203.6h18a1.6%201.6%200%200%201%201.6%201.6v10.2a1.6%201.6%200%200%201-1.6%201.6h-7.1v2.1h3.6V21H6.5v-1.9h3.6V17H3a1.6%201.6%200%200%201-1.6-1.6V5.2A1.6%201.6%200%200%201%203%203.6Zm7%202.9v7.4l6.2-3.7L10%206.5Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%203.6h18a1.6%201.6%200%200%201%201.6%201.6v10.2a1.6%201.6%200%200%201-1.6%201.6h-7.1v2.1h3.6V21H6.5v-1.9h3.6V17H3a1.6%201.6%200%200%201-1.6-1.6V5.2A1.6%201.6%200%200%201%203%203.6Zm7%202.9v7.4l6.2-3.7L10%206.5Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--camera {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M2.6%205.6h11.5a2%202%200%200%201%202%202v2.55l5-2.9a.8.8%200%200%201%201.2.7v8.1a.8.8%200%200%201-1.2.7l-5-2.9v2.55a2%202%200%200%201-2%202H2.6a2%202%200%200%201-2-2V7.6a2%202%200%200%201%202-2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M2.6%205.6h11.5a2%202%200%200%201%202%202v2.55l5-2.9a.8.8%200%200%201%201.2.7v8.1a.8.8%200%200%201-1.2.7l-5-2.9v2.55a2%202%200%200%201-2%202H2.6a2%202%200%200%201-2-2V7.6a2%202%200%200%201%202-2Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--oversight {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202a8.6%208.6%200%200%201%208.6%208.6v5.1a3.5%203.5%200%200%201-3.5%203.5h-1.6a2%202%200%200%201-2%202h-1.4v-1.9h1.4v-7.2h1.6a3.5%203.5%200%200%201%203.5%203.5v-5A6.6%206.6%200%200%200%205.4%2010.6v5a3.5%203.5%200%200%201%203.5-3.5h1.6v7.2H8.9a3.5%203.5%200%200%201-3.5-3.5v-5.2A8.6%208.6%200%200%201%2012%202Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202a8.6%208.6%200%200%201%208.6%208.6v5.1a3.5%203.5%200%200%201-3.5%203.5h-1.6a2%202%200%200%201-2%202h-1.4v-1.9h1.4v-7.2h1.6a3.5%203.5%200%200%201%203.5%203.5v-5A6.6%206.6%200%200%200%205.4%2010.6v5a3.5%203.5%200%200%201%203.5-3.5h1.6v7.2H8.9a3.5%203.5%200%200%201-3.5-3.5v-5.2A8.6%208.6%200%200%201%2012%202Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%201.8%2023%2021H1L12%201.8Zm-.95%206.6v6.4h1.9V8.4h-1.9Zm0%207.9v2h1.9v-2h-1.9Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%201.8%2023%2021H1L12%201.8Zm-.95%206.6v6.4h1.9V8.4h-1.9Zm0%207.9v2h1.9v-2h-1.9Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}

.icon--pin {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22pin%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_78%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_77%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_76%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_39%22%20class%3D%22st0%22%20d%3D%22M75.5%2C108.6c12.4-10%2C21.7-19.6%2C28-28.9%2C6.3-9.2%2C9.5-17.9%2C9.5-26.1%2C0-11.2-3.5-20.5-10.5-27.8-7-7.3-16-10.9-27-10.9-11%2C0-20%2C3.6-27%2C10.9-7%2C7.2-10.5%2C16.5-10.5%2C27.8%2C0%2C8.1%2C3.2%2C16.8%2C9.5%2C26.1%2C6.3%2C9.2%2C15.7%2C18.9%2C28%2C28.9M75.5%2C127.5c-17.6-13-30.8-25.6-39.5-37.9-8.7-12.3-13-24.3-13-36%2C0-15.6%2C4.9-28.5%2C14.6-38.5S60%2C0%2C75.5%2C0c15.5%2C0%2C28.1%2C5%2C37.9%2C15.1%2C9.8%2C10.1%2C14.6%2C22.9%2C14.6%2C38.5%2C0%2C11.7-4.3%2C23.7-13%2C36-8.7%2C12.3-21.8%2C24.9-39.5%2C37.9M75.5%2C67.5c4%2C0%2C7.8-1.5%2C10.6-4.4%2C2.9-2.8%2C4.5-6.6%2C4.4-10.6%2C0-4-1.5-7.8-4.4-10.6-2.8-2.9-6.6-4.5-10.6-4.4-4%2C0-7.8%2C1.5-10.6%2C4.4-2.9%2C2.8-4.5%2C6.6-4.4%2C10.6%2C0%2C4%2C1.5%2C7.8%2C4.4%2C10.6%2C2.8%2C2.9%2C6.6%2C4.5%2C10.6%2C4.4M23%2C135h105v15H23v-15Z%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22pin%22%3E%0A%20%20%20%20%3Cg%20id%3D%22Raggruppa_78%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_77%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22Raggruppa_76%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22Tracciato_39%22%20class%3D%22st0%22%20d%3D%22M75.5%2C108.6c12.4-10%2C21.7-19.6%2C28-28.9%2C6.3-9.2%2C9.5-17.9%2C9.5-26.1%2C0-11.2-3.5-20.5-10.5-27.8-7-7.3-16-10.9-27-10.9-11%2C0-20%2C3.6-27%2C10.9-7%2C7.2-10.5%2C16.5-10.5%2C27.8%2C0%2C8.1%2C3.2%2C16.8%2C9.5%2C26.1%2C6.3%2C9.2%2C15.7%2C18.9%2C28%2C28.9M75.5%2C127.5c-17.6-13-30.8-25.6-39.5-37.9-8.7-12.3-13-24.3-13-36%2C0-15.6%2C4.9-28.5%2C14.6-38.5S60%2C0%2C75.5%2C0c15.5%2C0%2C28.1%2C5%2C37.9%2C15.1%2C9.8%2C10.1%2C14.6%2C22.9%2C14.6%2C38.5%2C0%2C11.7-4.3%2C23.7-13%2C36-8.7%2C12.3-21.8%2C24.9-39.5%2C37.9M75.5%2C67.5c4%2C0%2C7.8-1.5%2C10.6-4.4%2C2.9-2.8%2C4.5-6.6%2C4.4-10.6%2C0-4-1.5-7.8-4.4-10.6-2.8-2.9-6.6-4.5-10.6-4.4-4%2C0-7.8%2C1.5-10.6%2C4.4-2.9%2C2.8-4.5%2C6.6-4.4%2C10.6%2C0%2C4%2C1.5%2C7.8%2C4.4%2C10.6%2C2.8%2C2.9%2C6.6%2C4.5%2C10.6%2C4.4M23%2C135h105v15H23v-15Z%22%3E%3C%2Fpath%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--contact {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22referente%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22person_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M48.5%2C64c-7.2-6.9-11.2-16.5-11-26.5-.1-10%2C3.8-19.6%2C11-26.5C55.4%2C3.8%2C65-.1%2C75%2C0c10-.1%2C19.6%2C3.8%2C26.5%2C11%2C7.2%2C6.9%2C11.2%2C16.5%2C11%2C26.5.1%2C10-3.8%2C19.6-11%2C26.5-6.9%2C7.2-16.5%2C11.2-26.5%2C11-10%2C.1-19.6-3.8-26.5-11ZM0%2C150v-26.2c0-5.2%2C1.4-10.2%2C4.1-14.6%2C2.6-4.3%2C6.4-7.9%2C10.9-10.2%2C9.4-4.7%2C19.3-8.4%2C29.5-10.9%2C10-2.4%2C20.2-3.6%2C30.5-3.6%2C10.3%2C0%2C20.5%2C1.2%2C30.5%2C3.6%2C10.2%2C2.5%2C20.1%2C6.2%2C29.5%2C10.9%2C4.5%2C2.3%2C8.3%2C5.9%2C10.9%2C10.2%2C2.7%2C4.4%2C4.1%2C9.5%2C4.1%2C14.6v26.2H0ZM18.8%2C131.3h112.5v-7.5c0-1.7-.4-3.3-1.3-4.7-.8-1.4-2-2.5-3.4-3.3-8.1-4.1-16.7-7.3-25.5-9.5-8.5-2.1-17.2-3.2-26-3.2-8.8%2C0-17.5%2C1.1-26%2C3.2-8.8%2C2.2-17.4%2C5.4-25.5%2C9.5-1.4.8-2.6%2C1.9-3.4%2C3.3-.9%2C1.4-1.3%2C3-1.3%2C4.7v7.5ZM88.2%2C50.7c3.6-3.5%2C5.6-8.3%2C5.5-13.2%2C0-5-1.9-9.8-5.5-13.2-3.5-3.6-8.3-5.6-13.2-5.5-5%2C0-9.8%2C1.9-13.2%2C5.5-3.6%2C3.5-5.6%2C8.3-5.5%2C13.2%2C0%2C5%2C1.9%2C9.8%2C5.5%2C13.2%2C3.5%2C3.6%2C8.3%2C5.6%2C13.2%2C5.5%2C5%2C0%2C9.8-1.9%2C13.2-5.5Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22referente%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22person_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M48.5%2C64c-7.2-6.9-11.2-16.5-11-26.5-.1-10%2C3.8-19.6%2C11-26.5C55.4%2C3.8%2C65-.1%2C75%2C0c10-.1%2C19.6%2C3.8%2C26.5%2C11%2C7.2%2C6.9%2C11.2%2C16.5%2C11%2C26.5.1%2C10-3.8%2C19.6-11%2C26.5-6.9%2C7.2-16.5%2C11.2-26.5%2C11-10%2C.1-19.6-3.8-26.5-11ZM0%2C150v-26.2c0-5.2%2C1.4-10.2%2C4.1-14.6%2C2.6-4.3%2C6.4-7.9%2C10.9-10.2%2C9.4-4.7%2C19.3-8.4%2C29.5-10.9%2C10-2.4%2C20.2-3.6%2C30.5-3.6%2C10.3%2C0%2C20.5%2C1.2%2C30.5%2C3.6%2C10.2%2C2.5%2C20.1%2C6.2%2C29.5%2C10.9%2C4.5%2C2.3%2C8.3%2C5.9%2C10.9%2C10.2%2C2.7%2C4.4%2C4.1%2C9.5%2C4.1%2C14.6v26.2H0ZM18.8%2C131.3h112.5v-7.5c0-1.7-.4-3.3-1.3-4.7-.8-1.4-2-2.5-3.4-3.3-8.1-4.1-16.7-7.3-25.5-9.5-8.5-2.1-17.2-3.2-26-3.2-8.8%2C0-17.5%2C1.1-26%2C3.2-8.8%2C2.2-17.4%2C5.4-25.5%2C9.5-1.4.8-2.6%2C1.9-3.4%2C3.3-.9%2C1.4-1.3%2C3-1.3%2C4.7v7.5ZM88.2%2C50.7c3.6-3.5%2C5.6-8.3%2C5.5-13.2%2C0-5-1.9-9.8-5.5-13.2-3.5-3.6-8.3-5.6-13.2-5.5-5%2C0-9.8%2C1.9-13.2%2C5.5-3.6%2C3.5-5.6%2C8.3-5.5%2C13.2%2C0%2C5%2C1.9%2C9.8%2C5.5%2C13.2%2C3.5%2C3.6%2C8.3%2C5.6%2C13.2%2C5.5%2C5%2C0%2C9.8-1.9%2C13.2-5.5Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--star {
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22star%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22stars_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M45%2C120l30-22.9%2C30%2C22.9-11.2-37.1%2C30-21.4h-36.8l-12-39-12%2C39H26.2l30%2C21.4-11.2%2C37.1ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-8.9-3.8-17-9.2-23.8-16-6.8-6.8-12.3-14.9-16-23.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2%2C3.8-8.9%2C9.2-17%2C16-23.8%2C6.8-6.8%2C14.9-12.3%2C23.8-16C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.2%2C5.9%2C8.9%2C3.8%2C17%2C9.2%2C23.8%2C16%2C6.8%2C6.8%2C12.3%2C14.9%2C16%2C23.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.2%2C0%2C10.1-1.9%2C20-5.9%2C29.2-3.8%2C8.9-9.2%2C17-16%2C23.8-6.8%2C6.8-14.9%2C12.3-23.8%2C16-9.2%2C4-19.2%2C6-29.2%2C5.9ZM75%2C135c16.8%2C0%2C30.9-5.8%2C42.6-17.4s17.4-25.8%2C17.4-42.6c0-16.8-5.8-30.9-17.4-42.6s-25.8-17.4-42.6-17.4c-16.8%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Csvg%20id%3D%22Livello_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20150%20150%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22star%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22stars_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24%22%20class%3D%22st0%22%20d%3D%22M45%2C120l30-22.9%2C30%2C22.9-11.2-37.1%2C30-21.4h-36.8l-12-39-12%2C39H26.2l30%2C21.4-11.2%2C37.1ZM75%2C150c-10.1%2C0-20-1.9-29.2-5.9-8.9-3.8-17-9.2-23.8-16-6.8-6.8-12.3-14.9-16-23.8C1.9%2C95%2C0%2C85.1%2C0%2C75c0-10.1%2C1.9-20%2C5.9-29.2%2C3.8-8.9%2C9.2-17%2C16-23.8%2C6.8-6.8%2C14.9-12.3%2C23.8-16C55%2C1.9%2C64.9%2C0%2C75%2C0c10.1%2C0%2C20%2C1.9%2C29.2%2C5.9%2C8.9%2C3.8%2C17%2C9.2%2C23.8%2C16%2C6.8%2C6.8%2C12.3%2C14.9%2C16%2C23.8%2C4%2C9.2%2C6%2C19.2%2C5.9%2C29.2%2C0%2C10.1-1.9%2C20-5.9%2C29.2-3.8%2C8.9-9.2%2C17-16%2C23.8-6.8%2C6.8-14.9%2C12.3-23.8%2C16-9.2%2C4-19.2%2C6-29.2%2C5.9ZM75%2C135c16.8%2C0%2C30.9-5.8%2C42.6-17.4s17.4-25.8%2C17.4-42.6c0-16.8-5.8-30.9-17.4-42.6s-25.8-17.4-42.6-17.4c-16.8%2C0-30.9%2C5.8-42.6%2C17.4-11.6%2C11.6-17.4%2C25.8-17.4%2C42.6%2C0%2C16.8%2C5.8%2C30.9%2C17.4%2C42.6%2C11.6%2C11.6%2C25.8%2C17.4%2C42.6%2C17.4Z%22%3E%3C%2Fpath%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

.icon--lg {
  width: 2.375rem;
  height: 2.375rem;
}



/* ---------- Button ---------- */
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2xs);
  min-height: 3.125rem;
  padding: 0 var(--space-m);
  font-size: 0.813rem;
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  border: 1px solid transparent;
  transition: background-color var(--transition), color var(--transition),
    border-color var(--transition);
}

.button--primary {
  background-color: var(--color-blue);
  color: var(--color-white);
}

.button--primary:hover,
.button--primary:focus-visible {
  background-color: var(--color-orange);
  color: var(--color-blue);
}

.button--accent {
  background-color: var(--color-orange);
  color: var(--color-blue);
}

.button--accent:hover,
.button--accent:focus-visible {
  background-color: var(--color-white);
  color: var(--color-blue);
}

.button--ghost {
  border-color: var(--color-border-on-dark);
  color: var(--color-white);
}

.button--ghost:hover,
.button--ghost:focus-visible {
  border-color: var(--color-orange);
  color: var(--color-orange);
}

.button[disabled],
.button.is-disabled {
  opacity: 0.45;
  pointer-events: none;
}

/* Badge circolare pieno con freccia (hero) */
.icon-link__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: var(--radius-pill);
  background-color: var(--color-blue);
  will-change: transform;
  transition: background-color var(--transition), transform 0.5s cubic-bezier(0.19, 1, 0.22, 1),
    opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}

/* hover: il cerchio cresce leggermente e si alleggerisce */
@media (hover: hover) {

  .icon-link:hover .icon-link__badge,
  .icon-link:focus-visible .icon-link__badge {
    transform: scale(1.1);
  }
}

@media (prefers-reduced-motion: reduce) {

  .icon-link:hover .icon-link__badge,
  .icon-link:focus-visible .icon-link__badge {
    transform: none;
  }
}

.icon-link__badge .icon {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--color-orange);
}

.icon-link__badge--light {
  width: 3.5rem;
  height: 3.5rem;
  margin-left: -1.0625rem;
  background-color: rgba(255, 255, 255, 0.55);
  border: 0;
}

.icon-link__badge--light .icon {
  width: 1.375rem;
  height: 1.375rem;
}

@media (max-width: 991px) {

  .icon-link__badge--light,
  .icon-link__badge--plain {
    margin-left: 0 !important;
  }
}

.icon-link:hover .icon-link__badge--light,
.icon-link:focus-visible .icon-link__badge--light {
  background-color: var(--color-blue);
}

.icon-link:hover .icon-link__badge--light .icon,
.icon-link:focus-visible .icon-link__badge--light .icon {
  color: var(--color-orange);
}

.icon-link:hover .icon-link__badge,
.icon-link:focus-visible .icon-link__badge {
  background-color: var(--color-orange);
}

.icon-link:hover .icon-link__badge .icon,
.icon-link:focus-visible .icon-link__badge .icon {
  color: var(--color-blue);
}

/* Link / Button con icona circolare (pattern ICLO) */
.icon-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  color: var(--color-blue);
  font-size: 0.813rem;
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-wide);
  text-transform: uppercase;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font-family: inherit;
  text-decoration: none;
}

/* fondi bianchi: nessun cerchio a riposo, alone lavanda all'hover
   (stessa impronta di 56px, così l'allineamento resta identico) */
.icon-link__badge--plain {
  width: 3.5rem;
  height: 3.5rem;
  margin-left: -1.0625rem;
  background-color: rgba(1, 6, 112, 0.06);
  border: 0;
}

.icon-link:hover .icon-link__badge--plain,
.icon-link:focus-visible .icon-link__badge--plain {
  background-color: var(--color-blue);
}

.icon-link:hover .icon-link__badge--plain .icon,
.icon-link:focus-visible .icon-link__badge--plain .icon {
  color: var(--color-orange);
}

.icon-link--spaced {
  gap: var(--space-s);
  font-size: 0.938rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.22em;
}

.icon-link__icon {
  color: var(--color-blue);
  transition: transform var(--transition), color var(--transition);
}

.icon-link:hover .icon-link__icon,
.icon-link:focus-visible .icon-link__icon {
  color: var(--color-orange);
  transform: translateX(-0.1875rem);
}

.icon-link--accent .icon-link__icon {
  color: var(--color-orange);
}

.icon-link--on-dark,
.icon-link--on-dark .icon-link__icon {
  color: var(--color-white);
}

.icon-link--on-dark .icon-link__badge {
  background-color: var(--color-orange);
  box-shadow: none;
}

.icon-link--on-dark .icon-link__badge .icon {
  color: var(--color-blue);
}

.icon-link--on-dark:hover,
.icon-link--on-dark:hover .icon-link__icon {
  color: var(--color-white);
}

.icon-link--on-dark:hover .icon-link__badge {
  background-color: var(--color-white);
}

.icon-link--on-dark:hover .icon-link__badge .icon {
  color: var(--color-blue);
}

.icon-link--compact {
  font-weight: var(--fw-medium);
  letter-spacing: var(--ls-eyebrow);
}

/* ---------- Breadcrumb ---------- */
.breadcrumb {
  padding-block: var(--space-s);
  border-bottom: 1px solid var(--color-border-light);
  background-color: var(--color-white);
}

.breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2xs);
  font-size: 0.75rem;
  letter-spacing: 0.04em;
}

.breadcrumb__item {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
  color: var(--color-text-soft);
}

.breadcrumb__item+.breadcrumb__item::before {
  content: "/";
  color: var(--color-border);
}

.breadcrumb__link {
  color: var(--color-text-soft);
}

.breadcrumb__item[aria-current="page"] {
  color: var(--color-blue);
  font-weight: var(--fw-medium);
}

/* ---------- Sfondo fisso condiviso (hero + key data) ---------- */
.fixed-bg {
  position: relative;
  background-color: var(--color-blue);
}

/* clip a schermo fisso, ritagliata sul gruppo dallo script */
.fixed-bg__media {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.fixed-bg__media video,
.fixed-bg__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* velo unico e continuo su hero + key data: nessuno stacco fra le due sezioni */
.fixed-bg__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg,
      rgba(1, 6, 112, 0.5) 0%,
      rgba(1, 6, 112, 0.2) 45%,
      rgba(1, 6, 112, 0.62) 100%);
}

.fixed-bg>section {
  position: relative;
  z-index: 1;
}

.hero.hero--on-fixed-bg {
  background-color: transparent;
}

/* la banda key data non ha fondo proprio: usa il velo del gruppo */
.stats--on-fixed-bg {
  background-color: transparent;
  color: var(--color-white);
}

/* ---------- Hero ---------- */
.hero {
  position: relative;
  display: flex;
  align-items: center;
  min-height: min(85vh, 46rem);
  padding-block: calc(var(--header-height) + var(--space-2xl)) var(--space-2xl);
  overflow: hidden;
  background-color: var(--color-blue);
  color: var(--color-white);
}

.hero__media {
  position: absolute;
  inset: 0;
}

.hero__media>img,
.hero__media>video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg,
      rgba(1, 6, 112, 0.5) 0%,
      rgba(1, 6, 112, 0.12) 45%,
      rgba(1, 6, 112, 0.6) 100%);
}

.hero__inner {
  position: relative;
  width: 100%;
}

/* guida verticale arancio del layout ICLO */
.hero--guide .hero__body {
  position: relative;
}

@media (min-width: 992px) {
  .hero--guide .hero__body::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: calc(var(--space-3xl) * -1);
    left: calc(var(--gutter) * -1);
    width: 1px;
    background-color: rgba(247, 171, 100, 0.6);
  }
}

.hero__title {
  max-width: 18ch;
}

/* claim su una riga, interamente leggibile nella colonna */
/* claim: parte a filo del logo, scorre a sinistra col parallasse
   fino a rivelare esattamente la fine della frase */
.hero__titleTrack {
  /* full-bleed su entrambi i lati: il claim parte a filo logo e può respirare fino ai bordi */
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: max(var(--gutter), calc((100vw - var(--container-max, 1440px)) / 2 + var(--gutter)));
  overflow: hidden;
  padding-top: 0.1em;
  padding-bottom: 0.35em;
  margin-bottom: -0.35em;
}

.hero__titleTrack .hero__title {
  max-width: none;
  display: flex;
  white-space: nowrap;
  width: max-content;
  font-size: clamp(3rem, 13vw, 8.25rem);
  line-height: 1.15;
  padding-bottom: 0.15em;
  animation: hero-marquee 30s linear infinite;
  letter-spacing: -0.035em;
  will-change: transform;
}

@media (min-width: 992px) {

  /* blocco hero 300px più in basso */
  .hero--on-fixed-bg .hero__inner {
    padding-top: 300px;
  }
}

.hero__body {
  display: grid;
  gap: var(--space-xl);
  margin-top: var(--space-xl);
}

@media (max-width: 991px) {
  .hero {
    align-items: flex-end;
    padding-bottom: 6vh;
    padding-bottom: 6svh;
    min-height: 100vh;
    min-height: 100svh;
  }

  .hero__body {
    margin-top: var(--space-xl);
  }

  .fixed-bg__media::after {
    background: none;
  }
}

.hero__lead {
  max-width: var(--hero-measure, 58rem);
  font-size: clamp(1.25rem, 0.9rem + 1.3vw, 1.75rem);
  font-weight: var(--fw-bold);
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.hero__note {
  max-width: var(--hero-measure, 46rem);
  margin-top: var(--space-l);
  font-size: var(--fs-body-lg);
  font-weight: var(--fw-regular);
  line-height: 1.75;
  color: #ffffff;
}

.hero__note strong {
  color: #ffffff;
}

.hero--compact {
  min-height: 0;
  padding-block: calc(var(--header-height) + var(--space-2xl)) var(--space-2xl);
}

.hero--compact .hero__title {
  max-width: 24ch;
}

@media (min-width: 992px) {
  .hero {
    min-height: 100vh;
  }

  .hero--compact {
    min-height: 0;
  }

  .hero__title {
    max-width: none;
    white-space: nowrap;
  }

  .hero__title--static {
    white-space: normal;
    max-width: 22ch;
  }

  .hero__body {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--space-3xl);
    margin-top: var(--space-3xl);
  }
}

/* ---------- Blocco numeri / statistiche ---------- */
.stats__grid {
  display: grid;
  gap: var(--space-xl);
  grid-template-columns: minmax(0, 1fr);
}

.stat {
  position: relative;
  container-type: inline-size;
  transform: translate3d(0, var(--stat-shift, 0px), 0);
}

.stat__media {
  position: relative;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.08);
}

.stat__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(1, 6, 112, 0.5);
  transition: background-color 500ms ease;
}

.stat:hover .stat__media::after {
  background-color: rgba(1, 6, 112, 0.28);
}

.stat__media img {
  transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
}

.stat:hover .stat__media img {
  transform: scale(1.05);
}

.stat__media picture {
  position: absolute;
  inset: 0;
}

.stat__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* il numero scavalca il bordo inferiore della foto, come da progetto */
.stat__value-mask {
  position: relative;
  z-index: 1;
  display: block;
  overflow: hidden;
  font-size: var(--fs-stat);
  line-height: 0.82;
  margin-top: -0.42em;
  padding-top: 0.08em;
}

.stat__value {
  display: block;
  white-space: nowrap;
  font-size: inherit;
  font-weight: var(--fw-bold);
  line-height: 0.82;
  letter-spacing: -0.03em;
  color: var(--color-orange);
}

.stat__label {
  display: block;
  margin-top: var(--space-xs);
  font-size: var(--fs-h2);
  line-height: 1.2;
  font-weight: var(--fw-bold);
  letter-spacing: -0.01em;
}

@media (min-width: 768px) {
  .stats__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-l);
  }
}

@media (min-width: 992px) {
  .page-home .stats__grid {
    gap: var(--space-xl);
    padding-left: var(--space-xl);
    grid-template-columns: 1.12fr 0.92fr 1.06fr;
    margin-top: -200px;
    padding-bottom: 20rem;
  }

  .stat__media {
    aspect-ratio: 16 / 10;
  }

  .page-home .stats__grid {
    align-items: end;
  }

  .page-home .stat:nth-child(2) {
    margin-bottom: -16rem;
  }

  .page-home .stat:nth-child(3) {
    margin-bottom: -7rem;
  }
}

/* ---------- Eyebrow di sezione ---------- */
.eyebrow {
  margin: 0 0 var(--space-s);
  font-size: calc(var(--fs-eyebrow) + 2px);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-orange);
}

/* ---------- Elenco caratteristiche ---------- */
.feature-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  margin-top: var(--space-xl);
  padding-top: var(--space-xl);
  border-top: 1px solid rgba(1, 6, 112, 0.35);
}

.feature-list__item {
  color: var(--color-blue);
  font-size: 0.75rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  line-height: 1.4;
}

.feature-list--on-dark {
  border-top-color: var(--color-border-on-dark);
}

.feature-list--on-dark .feature-list__item {
  color: var(--color-orange);
}

/* ---------- Sedi (mappa + due foto sovrapposte) ---------- */
.locations__stack {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.locations__stack>li {
  position: relative;
  min-height: 15rem;
}

.locations__figure {
  position: absolute;
  inset: 0;
  margin: 0;
  overflow: hidden;
}

/* l'immagine deborda: la parallasse non deve mai scoprire i bordi */
.locations__figure>picture,
.locations__figure>img {
  position: absolute;
  top: -8%;
  left: 0;
  width: 100%;
  height: 116%;
}

.locations__figure>picture>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.locations__figure>picture,
.locations__figure>img {
  position: absolute;
  top: -10%;
  left: 0;
  right: 0;
  bottom: auto;
  height: 120%;
}

.locations__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.locations__scrim {
  position: absolute;
  inset: 0;
  background-color: rgba(1, 6, 112, 0.24);
  background-image: linear-gradient(to top, rgba(1, 6, 112, 0.72) 0%, rgba(1, 6, 112, 0.4) 45%, rgba(1, 6, 112, 0) 100%);
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: 100% 65%;
  transition: background-size 1100ms cubic-bezier(0.22, 1, 0.36, 1), background-color 1100ms cubic-bezier(0.22, 1, 0.36, 1);
}

.locations__figure:hover .locations__scrim {
  background-color: rgba(1, 6, 112, 0.34);
  background-size: 100% 210%;
}

@media (max-width: 991px) {
  .locations__figure.is-centered .locations__scrim {
    background-color: rgba(1, 6, 112, 0.34);
    background-size: 100% 210%;
  }
}

.locations__figure img {
  transition: transform 1200ms cubic-bezier(0.16, 1, 0.3, 1);
}

.locations__figure:hover img {
  transform: scale(1.04);
}

.locations__caption {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  gap: var(--space-xs);
  padding: var(--space-l);
  color: var(--color-white);
  text-align: left;
}

.locations__name {
  margin: 0;
  font-size: calc(var(--fs-h3) + 4px);
  font-weight: var(--fw-bold);
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--color-white);
}

.locations__name em {
  display: block;
  margin-top: 0.35em;
  font-style: normal;
  font-size: var(--fs-body);
  font-weight: var(--fw-medium);
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--color-orange);
}

.locations__text {
  max-width: 62ch;
  margin: 0;
  font-size: calc(var(--fs-body) + 2px);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.88);
  text-wrap: pretty;
}

.locations__video {
  margin-top: var(--space-2xs);
  font-size: 0.813rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.locations__video--panel {
  margin-top: var(--space-m);
  color: var(--color-blue);
  font-size: 0.813rem;
}

.locations__video--panel:hover,
.locations__video--panel:focus-visible {
  color: var(--color-orange);
}

.locations__heading {
  position: relative;
  font-size: var(--fs-display);
  font-weight: var(--fw-bold);
  letter-spacing: -0.03em;
  color: var(--color-blue);
}

.locations__heading em {
  font-style: normal;
  color: var(--color-orange);
}

.locations__map {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.split__panel--map {
  background-color: #e4e5ee;
  overflow: hidden;
}

@media (min-width: 768px) {
  .locations__stack>li {
    min-height: 19rem;
  }

  .locations__caption {
    padding: var(--space-xl) var(--space-2xl);
    gap: var(--space-s);
  }
}

/* ---------- Card corso ---------- */
.course-card {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: var(--space-2xs);
  min-height: 13.5rem;
  padding-left: var(--space-m);
  color: var(--color-blue);
  position: relative;
  isolation: isolate;
}

/* linea disciplina: più alta del contenuto della card */
.course-card::after {
  content: "";
  position: absolute;
  left: 0;
  top: -20px;
  bottom: -20px;
  width: 2px;
  z-index: 1;
  background: var(--course-color, var(--color-blue));
  pointer-events: none;
}

/* fondino al 5% del colore disciplina, si apre dalla linea verso destra */
.course-card::before {
  content: "";
  position: absolute;
  inset: -20px 0 -20px 0;
  z-index: -1;
  background: color-mix(in srgb, var(--course-color, var(--color-blue)) 5%, transparent);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  pointer-events: none;
}

.course-card:hover::before,
.course-card:focus-within::before {
  transform: scaleX(1);
}

@media (prefers-reduced-motion: reduce) {
  .course-card::before {
    transition: none;
  }
}

.course-card__icon {
  color: var(--color-blue);
  margin-bottom: var(--space-2xs);
}

.course-card__date {
  font-size: var(--fs-body);
  font-weight: var(--fw-medium);
}

.course-card__city {
  font-size: var(--fs-body);
  font-weight: var(--fw-regular);
  color: var(--color-text-soft);
}

.course-card__title {
  margin-top: var(--space-2xs);
  font-size: var(--fs-body);
  font-weight: var(--fw-bold);
  line-height: 1.4;
}

.course-card__title a {
  color: inherit;
  text-decoration: none;
}

.course-card__tags {
  display: flex;
  flex-direction: column;
  gap: 0;
  line-height: 1.25;
  margin-top: auto;
  padding-top: var(--space-m);
}

.tag {
  font-size: 1.094rem;
  font-weight: var(--fw-bold);
  line-height: 1.25;
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--course-color, var(--color-blue));
}

.course-card--dentistry {
  --course-color: var(--color-dentistry);
}

.course-card--maxillo {
  --course-color: var(--color-maxillo);
}

.course-card--osteopatia {
  --course-color: var(--color-osteopatia);
}

.course-card--physiotherapy {
  --course-color: var(--color-physiotherapy);
}

.course-card--neurosurgery {
  --course-color: var(--color-neurosurgery);
}

.course-card--general-surgery {
  --course-color: var(--color-general-surgery);
}

.course-card--spinale {
  --course-color: var(--color-spinale);
}

.course-card--plastic-surgery {
  --course-color: var(--color-plastic-surgery);
}

.course-card--otolaryngology {
  --course-color: var(--color-otolaryngology);
}

.course-card--orthopedics {
  --course-color: var(--color-orthopedics);
}

/* ---------- Slider ---------- */
.slider__viewport {
  overflow: hidden;
  /* spazio verticale per la linea/fondino che sporgono dalle card */
  padding-block: 20px;
  margin-block: -20px;
  cursor: grab;
  touch-action: pan-y;
}

.slider__viewport--bleed {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
}

.slider__viewport.is-dragging {
  cursor: grabbing;
  user-select: none;
}

.slider__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  align-items: stretch;
  gap: var(--space-l);
  transition: transform var(--transition);
}

.slider__track>li {
  display: flex;
}

.slider__controls {
  display: flex;
  gap: var(--space-2xs);
}

.slider__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  color: rgba(1, 6, 112, 0.45);
  transition: color var(--transition), transform var(--transition);
}

/* stessa interazione delle CTA: il cerchio scala su curva lunga, senza spostamenti */
.slider__button .icon {
  width: 1.375rem;
  height: 1.375rem;
  will-change: transform;
  transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.slider__button:hover:not([disabled]) {
  color: var(--color-blue);
}

@media (hover: hover) {

  .slider__button:hover:not([disabled]) .icon,
  .slider__button:focus-visible:not([disabled]) .icon {
    transform: scale(1.1);
  }
}

@media (prefers-reduced-motion: reduce) {

  .slider__button:hover:not([disabled]) .icon,
  .slider__button:focus-visible:not([disabled]) .icon {
    transform: none;
  }
}

.slider__button[disabled] {
  opacity: 0.35;
  cursor: default;
}

@media (min-width: 576px) {
  .slider__track {
    grid-auto-columns: calc((100% - var(--space-l)) / 2);
  }
}

@media (min-width: 992px) {
  .slider__track {
    grid-auto-columns: calc((100% - 2 * var(--space-l)) / 3);
  }
}

@media (min-width: 1200px) {
  .slider__track--courses {
    grid-auto-columns: calc((100% - 4 * var(--space-l)) / 5);
  }
}

/* ---------- Logo wall ---------- */
.logo-wall {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-l);
  align-items: center;
}

.logo-wall__item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 4.5rem;
}

.logo-wall__item img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  object-fit: contain;
  mix-blend-mode: multiply;
  filter: grayscale(1);
  opacity: 0.75;
  transition: filter var(--transition), opacity var(--transition);
}

.logo-wall__item img:hover {
  filter: grayscale(0);
  opacity: 1;
}

.logo-wall__placeholder {
  width: 100%;
  height: 100%;
  border: 1px dashed var(--color-border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.688rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-grey);
}

@media (min-width: 768px) {
  .logo-wall {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .logo-wall {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .logo-wall--societa {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--space-xl) var(--space-l);
  }
}

/* ---------- Accordion ---------- */
.accordion__item {
  border-bottom: 1px solid var(--color-border-light);
}

.accordion__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-m);
  width: 100%;
  padding-block: var(--space-m);
  text-align: left;
  font-size: var(--fs-body-lg);
  font-weight: var(--fw-bold);
  color: var(--color-blue);
}

.accordion__marker {
  flex: 0 0 auto;
  color: var(--color-orange);
  font-weight: var(--fw-bold);
}

.accordion__panel {
  padding-bottom: var(--space-m);
  max-width: 70ch;
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  color: var(--color-text-muted);
}

.accordion__panel[hidden] {
  display: none;
}

/* ---------- Blocco CTA ---------- */
.cta-block {
  display: grid;
  gap: var(--space-l);
  padding: var(--space-xl) var(--space-l);
  background-color: var(--color-surface-lavender);
}

.cta-block--outline {
  background-color: transparent;
  border: 1px solid var(--color-border-on-dark);
}

.cta-block__text {
  max-width: 52ch;
  margin-top: var(--space-2xs);
  font-size: var(--fs-body-lg);
  font-weight: var(--fw-regular);
  color: var(--color-text-muted);
}

.section--dark .cta-block__text {
  color: var(--color-text-on-dark);
}

@media (min-width: 992px) {
  .cta-block {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    align-items: center;
    padding: var(--space-2xl);
  }

  .cta-block__actions {
    justify-self: end;
  }
}

/* ---------- Blocco documenti ---------- */
.doc-list__item+.doc-list__item {
  border-top: 1px solid var(--color-border-light);
}

.doc-list__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-m);
  padding-block: var(--space-s);
  font-weight: var(--fw-medium);
}

.doc-list__meta {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-grey);
}

/* ---------- Gallery ---------- */
.gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-2xs);
}

.gallery__item {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 768px) {
  .gallery {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* ---------- Form ---------- */
.form__grid {
  display: grid;
  gap: var(--space-l);
  grid-template-columns: minmax(0, 1fr);
}

.form__field {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}

.form__field--full {
  grid-column: 1 / -1;
}

.form__label {
  font-size: 0.6875rem;
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-text-soft);
}

.form__input,
.form__select {
  width: 100%;
  min-width: 0;
  height: 2.75rem;
  padding: 0;
  background-color: transparent;
  border: 0;
  border-bottom: 1px solid var(--color-border);
  color: var(--color-blue);
  font-size: var(--fs-body);
  transition: border-color var(--transition);
}

.form__textarea {
  width: 100%;
  min-width: 0;
  min-height: 8rem;
  padding: var(--space-s);
  background-color: var(--color-white);
  border: 1px solid var(--color-border);
  color: var(--color-blue);
  font-size: var(--fs-body);
  resize: vertical;
  transition: border-color var(--transition);
}

.form__input:hover,
.form__select:hover,
.form__textarea:hover {
  border-color: var(--color-grey);
}

.form__input:focus,
.form__select:focus,
.form__textarea:focus {
  outline: none;
  border-color: var(--color-blue);
}

.form__input[disabled],
.form__textarea[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
}

.form__field.is-error .form__input,
.form__field.is-error .form__textarea {
  border-color: var(--color-dentistry);
}

.form__error {
  font-size: 0.75rem;
  color: var(--color-dentistry);
}

.form__field:not(.is-error) .form__error {
  display: none;
}

.form__consent {
  margin-top: var(--space-m);
  display: flex;
  align-items: flex-start;
  gap: var(--space-2xs);
  font-size: var(--fs-small);
  font-weight: var(--fw-regular);
  color: var(--color-text-muted);
}

.form__checkbox {
  flex: 0 0 auto;
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.1875rem;
  accent-color: var(--color-blue);
}

.form__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--space-l);
}

.form__feedback {
  margin-top: var(--space-m);
  padding: var(--space-s) var(--space-m);
  font-size: var(--fs-small);
  border-left: 2px solid var(--color-orange);
  background-color: var(--color-white);
}

.form__feedback[hidden] {
  display: none;
}

.form__feedback.is-success {
  border-left-color: var(--color-physiotherapy);
}

.form__feedback.is-error {
  border-left-color: var(--color-dentistry);
}

@media (min-width: 576px) {
  .form__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-l) var(--space-xl);
  }
}

/* ---------- Statement (frase-manifesto a piena larghezza) ---------- */
.statement {
  max-width: 46ch;
  font-size: clamp(1.75rem, 1rem + 3.2vw, 4rem);
  font-weight: var(--fw-bold);
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.statement--wide {
  max-width: 34ch;
}

.statement__lead {
  max-width: 60ch;
  margin-top: var(--space-l);
  font-size: 1.188rem;
  font-weight: var(--fw-regular);
  line-height: var(--lh-body);
  color: var(--color-text-muted);
}

.section--dark .statement__lead {
  color: var(--color-text-on-dark);
}

/* ---------- Items list (elenco numerato con riga interattiva) ---------- */
.items-list {
  border-top: 1px solid var(--color-border-light);
}

.items-list__item {
  border-bottom: 1px solid var(--color-border-light);
}

.items-list__link {
  position: relative;
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: var(--space-s) var(--space-m);
  align-items: center;
  padding: var(--space-m) var(--space-s);
  color: var(--color-blue);
  isolation: isolate;
}

.items-list__link::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: var(--color-blue);
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform var(--transition);
}

.items-list__link:hover,
.items-list__link:focus-visible {
  color: var(--color-white);
}

.items-list__link:hover::before,
.items-list__link:focus-visible::before {
  transform: scaleY(1);
}

.items-list__index {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid currentColor;
  border-radius: var(--radius-pill);
  font-size: 0.688rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.02em;
}

.items-list__title {
  display: block;
  font-size: var(--fs-h3);
  font-weight: var(--fw-bold);
  line-height: 1.14;
  letter-spacing: -0.02em;
}

.items-list__more {
  display: flex;
  width: max-content;
  align-items: center;
  gap: var(--space-2xs);
  margin-top: var(--space-2xs);
  font-size: var(--fs-eyebrow);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-orange);
}

.items-list__more .icon {
  width: 0.875rem;
  height: 0.875rem;
}

.items-list__icon {
  display: none;
  color: currentColor;
  opacity: 0.55;
}

@media (min-width: 992px) {
  .items-list__link {
    grid-template-columns: 6rem minmax(0, 1fr) 5rem;
    gap: var(--space-l);
    padding: var(--space-l) var(--space-m);
  }

  .items-list__icon {
    display: block;
    width: 3rem;
    height: 3rem;
    justify-self: end;
  }
}

.hero__titleItem {
  padding-right: 0.4em;
  display: inline-block;
  padding-bottom: 0.15em;
}

@keyframes hero-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero__titleTrack .hero__title {
    animation: none;
  }
}


/* Key data: comparsa progressiva coordinata con gli altri effetti della home */
@media (prefers-reduced-motion: no-preference) {
  .stats[data-stats-anim] .stat {
    --stat-delay: 0ms;
  }

  .stats[data-stats-anim] .stat:nth-child(2) {
    --stat-delay: 300ms;
  }

  .stats[data-stats-anim] .stat:nth-child(3) {
    --stat-delay: 600ms;
  }

  .stats[data-stats-anim] .stat__media img {
    clip-path: inset(100% 0 0 0);
    transform: scale(1.14);
    transition:
      clip-path 1.15s cubic-bezier(0.19, 1, 0.22, 1) var(--stat-delay),
      transform 1.4s cubic-bezier(0.19, 1, 0.22, 1) var(--stat-delay);
  }

  .stats[data-stats-anim] .stat__value {
    transform: translate3d(0, 105%, 0);
    transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: calc(var(--stat-delay) + 220ms);
  }

  .stats[data-stats-anim] .stat__label {
    opacity: 0;
    transform: translate3d(0, 28px, 0);
    transition:
      opacity 0.75s cubic-bezier(0.19, 1, 0.22, 1),
      transform 0.9s cubic-bezier(0.19, 1, 0.22, 1);
  }

  .stats[data-stats-anim].is-in .stat__value {
    transform: none;
  }

  .stats[data-stats-anim].is-in .stat__media img {
    clip-path: inset(0 0 0 0);
    transform: scale(1);
  }

  .stats[data-stats-anim].is-in .stat__label {
    opacity: 1;
    transform: none;
  }
}


/* ---------- Chi siamo: numeri senza foto ---------- */
.stats--plain .stats__grid {
  margin-top: var(--space-2xl);
}

.stats--plain .stat__value-mask {
  margin-top: 0;
  font-size: calc(var(--fs-stat) * 0.67);
}

/* ---------- Elenco attività della segreteria ---------- */
.task-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
  list-style: none;
  margin: 0;
  padding: 0;
}

.task-list__item {
  padding-top: var(--space-m);
  border-top: 1px solid var(--color-border);
}

.task-list__icon {
  width: 2rem;
  height: 2rem;
  margin-bottom: var(--space-s);
  color: var(--color-orange);
}

.task-list__title {
  margin: 0;
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  color: var(--color-blue);
}

.task-list__text {
  max-width: 56ch;
  margin-top: var(--space-2xs);
  color: var(--color-text-soft);
}

/* ---------- Card supporto tecnico ---------- */
.tech-grid {
  display: grid;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  list-style: none;
  margin: var(--space-xl) 0 0;
  padding: 0;
}

.tech-card {
  display: flex;
  align-items: flex-end;
  min-height: 9rem;
  padding: var(--space-m);
  border: none;
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  line-height: 1.2;
  color: var(--color-white);
  text-wrap: pretty;
  position: relative;
  transition: color 0.5s ease;
}

.tech-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid var(--color-orange);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.tech-card:hover::after {
  opacity: 1;
}

.tech-card__icon {
  position: absolute;
  top: var(--space-m);
  left: var(--space-m);
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--color-orange);
  opacity: 0;
  transition: opacity var(--transition);
}

.tech-card__img {
  position: absolute;
  top: var(--space-m);
  left: var(--space-m);
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}

.tech-card:hover .tech-card__icon {
  opacity: 1;
}

.tech-card:nth-child(odd) {
  background-color: rgba(255, 255, 255, 0.07);
}

.tech-card:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.02);
}

.tech-card:hover {
  color: var(--color-orange);
}

/* ---------- Numeri compatti ---------- */
.metric-list {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: var(--space-l);
  list-style: none;
  margin: 0;
  padding: 0;
}

.metric {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: subgrid;
  align-items: center;
  column-gap: var(--space-xl);
  padding-bottom: var(--space-m);
  border-bottom: 1px solid var(--color-border);
}

.metric--heading {
  border-bottom: none;
  padding-bottom: 0;
}

.metric__value {
  font-size: clamp(2.75rem, 1.5rem + 4vw, 4.5rem);
  font-weight: var(--fw-bold);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--color-orange);
  font-variant-numeric: tabular-nums;
}

.metric__label {
  max-width: 34ch;
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  color: var(--color-blue);
  text-wrap: pretty;
}

@media (min-width: 768px) {
  .tech-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .tech-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


/* ---------- Gallery a nastro continuo ---------- */
.gallery-section {
  padding-top: 0 !important;
  padding-block-start: 0 !important;
  padding-bottom: 0;
}

.gallery-section .gallery-strip {
  margin-top: 0;
}

.gallery-section .section__head {
  margin-bottom: 0 !important;
}

.gallery-section {
  padding-top: 0 !important;
}

.gallery-section .container {
  padding-block: 0 var(--space-2xs);
}

.gallery-strip {
  overflow: hidden;
  cursor: grab;
  margin-top: 0;
}

.gallery-strip.is-dragging {
  cursor: grabbing;
}

.gallery-strip__track {
  display: flex;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  will-change: transform;
}

.gallery-strip__item {
  position: relative;
  flex: 0 0 auto;
  width: min(78vw, 34rem);
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background-color: var(--color-surface-grey);
}

.gallery-strip__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-user-drag: none;
  user-select: none;
  transition: transform 1200ms cubic-bezier(0.16, 1, 0.3, 1);
}

.gallery-strip__item:hover img {
  transform: scale(1.05);
}

.gallery-section .section__head {
  align-items: center;
}


/* ---------- Lightbox ---------- */
body.has-lightbox {
  overflow: hidden;
}

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-m);
  padding: var(--space-l);
  background-color: rgba(1, 6, 112, 0.94);
}

.lightbox[hidden] {
  display: none;
}

.lightbox__figure {
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  margin: 0;
  max-width: min(90vw, 1400px);
}

.lightbox__img {
  max-width: 100%;
  max-height: 78vh;
  object-fit: contain;
}

.lightbox__caption {
  display: none;
}

@media (max-width: 991px) {
  .lightbox {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr auto;
    align-items: center;
    justify-items: center;
    padding: var(--space-l) 0;
    gap: var(--space-m);
  }

  .lightbox__figure {
    grid-column: 1 / -1;
    grid-row: 1;
    max-width: 100%;
    width: 100%;
  }

  .lightbox__img {
    max-width: 100%;
    max-height: 75vh;
    width: 100%;
    object-fit: contain;
  }

  .lightbox__caption {
    display: none;
  }

  .lightbox__nav--prev {
    grid-row: 2;
    grid-column: 1;
    justify-self: end;
    position: static;
  }

  .lightbox__nav--next {
    grid-row: 2;
    grid-column: 2;
    justify-self: start;
    position: static;
  }
}

.lightbox__nav,
.lightbox__close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 3.5rem;
  height: 3.5rem;
  border: 1px solid var(--color-border-on-dark);
  border-radius: var(--radius-pill);
  background-color: transparent;
  color: var(--color-orange);
  cursor: pointer;
  transition: background-color var(--transition), border-color var(--transition);
}

.lightbox__nav:hover,
.lightbox__close:hover {
  background-color: var(--color-orange);
  border-color: var(--color-orange);
  color: var(--color-blue);
}

.lightbox__nav .icon {
  width: 1.375rem;
  height: 1.375rem;
}

.lightbox__close {
  position: absolute;
  top: var(--space-l);
  right: var(--space-l);
}

.lightbox__close::before,
.lightbox__close::after {
  content: "";
  position: absolute;
  width: 1.25rem;
  height: 2px;
  background-color: currentColor;
}

.lightbox__close::before {
  transform: rotate(45deg);
}

.lightbox__close::after {
  transform: rotate(-45deg);
}

.gallery-strip__item img {
  cursor: zoom-in;
}


/* ---------- Task list a griglia (servizi) ---------- */
@media (min-width: 768px) {
  .task-list--grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-l);
    margin-top: var(--space-2xl);
  }
}


.task-list__action {
  margin-top: var(--space-m);
}

@media (min-width: 992px) {
  .task-list--grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}


/* ---------- Comparsa progressiva ---------- */
@media (prefers-reduced-motion: no-preference) {
  .reveal {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
    transition: opacity 800ms cubic-bezier(0.16, 1, 0.3, 1), transform 800ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--reveal-delay, 0ms);
    will-change: opacity, transform;
  }

  .reveal.is-revealed {
    opacity: 1;
    transform: none;
  }
}


/* ---------- Griglia corsi (pagina formazione) ---------- */
.course-grid {
  display: grid;
  gap: var(--space-l);
  grid-template-columns: minmax(0, 1fr);
  list-style: none;
  margin: var(--space-2xl) 0 0;
  padding: 0;
}

.course-card__meta {
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  color: var(--color-text-muted);
}

/* ---------- Recapiti in colonna ---------- */
.contact-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  list-style: none;
  margin: var(--space-xl) 0 0;
  padding: 0;
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  color: var(--color-blue);
}

/* ---------- Gruppo di scelte del form ---------- */
.form__fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

.form__choices {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2xs) var(--space-m);
  margin-top: var(--space-2xs);
}

.form__choice {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3xs);
  font-size: var(--fs-small);
  color: var(--color-blue);
}

@media (min-width: 768px) {
  .course-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


/* ---------- Recapiti per sede ---------- */
.contact-blocks {
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  list-style: none;
  margin: var(--space-xl) 0 0;
  padding: 0;
}

.contact-blocks>li {
  padding-top: var(--space-s);
  border-top: 1px solid var(--color-border);
}

.contact-blocks__label {
  font-size: calc(var(--fs-eyebrow) + 2px);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-orange);
}

.contact-blocks__note {
  margin-top: var(--space-3xs);
  font-size: calc(var(--fs-small) + 2px);
  color: var(--color-text-soft);
}

.contact-blocks__value {
  margin-top: var(--space-2xs);
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  color: var(--color-blue);
}

.split__media--map {
  background-color: #e4e5ee;
}

.split__media--map img {
  object-fit: cover;
}

.contact-list--on-dark {
  color: var(--color-white);
}

/* ---------- Team ---------- */
.team-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-l);
  list-style: none;
  margin: var(--space-2xl) 0 0;
  padding: 0;
}

.team-card {
  padding-top: 0;
  border-top: 0;
}

.team-card__media {
  position: relative;
  width: calc(100% - 40px);
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 50%;
  margin-bottom: var(--space-m);
  background-color: var(--color-surface-grey);
}

.team-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
}

.team-card:hover .team-card__media img {
  transform: scale(1.06);
}

.team-card__name {
  margin: 0;
  font-size: var(--fs-h4);
  font-weight: var(--fw-bold);
  color: var(--color-blue);
}

.team-card__role {
  margin-top: var(--space-3xs);
  font-size: var(--fs-eyebrow);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-orange);
}

.team-card__text {
  max-width: 40ch;
  margin-top: var(--space-s);
  color: var(--color-text-soft);
}

@media (min-width: 576px) {
  .team-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-xl) var(--space-l);
  }
}

@media (min-width: 992px) {
  .team-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}


/* ---------- Form su fondo blu ---------- */
.section--dark .form__input,
.section--dark .form__select,
.section--dark .form__textarea {
  background-color: transparent;
  border-color: var(--color-border-on-dark);
  color: var(--color-white);
}

.section--dark .form__textarea {
  border: 1px solid var(--color-border-on-dark);
}

.section--dark .form__input::placeholder,
.section--dark .form__textarea::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.section--dark .form__input:hover,
.section--dark .form__select:hover,
.section--dark .form__textarea:hover,
.section--dark .form__input:focus,
.section--dark .form__select:focus,
.section--dark .form__textarea:focus {
  border-color: var(--color-orange);
}

/* select: freccia disegnata, altrimenti su fondo scuro sparisce */
.section--dark select.form__input,
.section--dark .form__select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 2rem;
  background-image: linear-gradient(45deg, transparent 50%, var(--color-orange) 50%),
    linear-gradient(135deg, var(--color-orange) 50%, transparent 50%);
  background-position: calc(100% - 12px) calc(50% - 2px), calc(100% - 7px) calc(50% - 2px);
  background-size: 5px 5px;
  background-repeat: no-repeat;
}

.section--dark select.form__input option {
  color: var(--color-blue);
}

.section--dark .form__checkbox {
  accent-color: var(--color-orange);
}

.section--dark .form__consent,
.section--dark .form__consent label {
  color: var(--color-text-on-dark);
}

.section--dark .form__choice {
  color: var(--color-text-on-dark);
}

.section--dark .form__choice input {
  accent-color: var(--color-orange);
}

.section--dark .form__actions .icon-link {
  color: var(--color-white);
}

.section--dark .form__actions .icon-link__badge--plain {
  background-color: rgba(255, 255, 255, 0.12);
}

.section--dark .form__actions .icon-link:hover .icon-link__badge--plain {
  background-color: var(--color-orange);
}

.section--dark .form__actions .icon-link:hover .icon-link__badge--plain .icon {
  color: var(--color-blue);
}

.form .form__actions {
  justify-content: flex-end;
}


.map-embed {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}


/* ---------- Team per reparto ---------- */
.team-group {
  margin-top: var(--space-2xl);
}

.team-group__title {
  margin: 0 0 var(--space-l);
  padding-bottom: var(--space-2xs);
  border-bottom: 1px solid var(--color-border);
  font-size: calc(var(--fs-eyebrow) + 2px);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-orange);
}

.team-group .team-grid {
  margin-top: 0;
}

.team-group-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
}

@media (min-width: 768px) {
  .team-group-row {
    grid-template-columns: 1fr 1fr;
    column-gap: var(--space-2xl);
    align-items: start;
    container-type: inline-size;
  }
  .team-group-row .team-grid {
    grid-template-columns: 1fr;
  }
  .team-group-row .team-card__media {
    width: min(calc((100cqw - 2 * var(--space-l)) / 3 - 40px), calc(100% - 40px));
  }
}

@media (min-width: 992px) {
  .team-group-row .team-card__media {
    width: min(calc((100cqw - 4 * var(--space-l)) / 5 - 40px), calc(100% - 40px));
  }
}

.team-grid__break {
  display: none;
}

@media (min-width: 992px) {
  .team-grid__break {
    display: block;
    grid-column: 2 / -1;
    min-height: 0;
  }
}

.team-card__monogram {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
  color: var(--color-blue);
  background-color: #e4e5ee;
}

.team-card__contacts {
  display: flex;
  flex-direction: column;
  gap: var(--space-3xs);
  list-style: none;
  margin: var(--space-2xs) 0 0;
  padding: 0;
  font-size: calc(var(--fs-small) + 2px);
  font-weight: var(--fw-medium);
  color: var(--color-text-soft);
  overflow-wrap: anywhere;
}

.team-card__contacts a {
  color: inherit;
  text-decoration: none;
}

.team-card__contacts a:hover {
  color: var(--color-orange);
}


/* ---------- Sezione Operazioni (testo + immagine laterale) ---------- */
.operazioni-grid {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 800px;
}

.operazioni-grid__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-3xl) var(--gutter);
  padding-left: max(var(--gutter), calc((100vw - var(--container-max)) / 2 + var(--gutter)));
}

.container--inner {
  width: 100%;
}

.operazioni-grid__media {
  position: relative;
  overflow: hidden;
  min-height: 360px;
}

.operazioni-grid__media img {
  position: absolute;
  top: -8%;
  left: 0;
  width: 100%;
  height: 116%;
  object-fit: cover;
}

@media (min-width: 768px) {
  .task-list--grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .operazioni-grid {
    grid-template-columns: 1fr 0.72fr;
  }

  .operazioni-grid__content {
    padding-right: var(--space-3xl);
  }
}


/* Task list compatta (senza icona, su 2 colonne, testo ridotto) */
.task-list--compact {
  display: grid;
  gap: var(--space-m) var(--space-l);
  grid-template-columns: 1fr;
}

.task-list--compact .task-list__item {
  padding-top: var(--space-s);
  border-top: 1px solid var(--color-border-light);
}

.task-list--compact .task-list__title {
  font-size: var(--fs-body);
  margin: 0;
}

.task-list--compact .task-list__text {
  font-size: calc(var(--fs-small) + 2px);
  margin-top: 0.25rem;
}

@media (min-width: 768px) {
  .task-list--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* ---------- Breadcrumb hero ---------- */
.hero__breadcrumb {
  margin-bottom: var(--space-l);
}

.hero__breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0.6rem;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
}

.hero__breadcrumb li:not(:last-child)::after {
  content: "/";
  margin-left: 0.6rem;
  opacity: 0.35;
}

.hero__breadcrumb a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  transition: color var(--transition);
}

.hero__breadcrumb a:hover {
  color: var(--color-orange);
}

.hero__breadcrumb [aria-current="page"] {
  color: var(--color-orange);
}

/* ---------- Mega menu: card anteprime sottomenu ---------- */
@media (max-width: 767px) {
  .mega-menu-panel {
    display: none;
  }
}

@media (min-width: 768px) {
  .site-subnav--hidden {
    display: none !important;
  }

  .mega-menu-panel {
    position: absolute;
    top: var(--header-height, 4rem);
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    pointer-events: none;
    transition: opacity 320ms ease, transform 320ms ease, visibility 320ms;
  }

  .nav-veil.is-active.has-mega-open .mega-menu-panel {
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
  }

  .mega-menu-panel__inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    width: 100%;
    max-width: calc(var(--container-max, 90rem) - 2 * var(--gutter, 2rem));
  }

  .mega-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    position: relative;
    transition: transform 280ms ease;
  }

  .mega-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: var(--color-orange);
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform 400ms cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 1;
  }

  .mega-card:hover::before {
    transform: scaleY(1);
  }

  .mega-card:hover {
    transform: translateY(-3px);
  }

  .mega-card__img-wrap {
    aspect-ratio: 16/9;
    overflow: hidden;
  }

  .mega-card__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 500ms ease;
  }

  .mega-card:hover .mega-card__img-wrap img {
    transform: scale(1.04);
  }

  .mega-card__body {
    padding: 1.25rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1;
  }

  .mega-card__num {
    font-size: 0.7rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--color-orange);
    margin: 0;
  }

  .mega-card__title {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.92);
    margin: 0;
    line-height: 1.3;
  }

  .mega-card__desc {
    font-size: 0.813rem;
    color: rgba(255, 255, 255, 0.55);
    margin: 0;
    line-height: 1.55;
    flex: 1;
  }

  .mega-card__arrow {
    color: var(--color-orange);
    font-size: 1rem;
    margin-top: 0.5rem;
    display: flex;
    justify-content: flex-end;
  }

  /* Sub-panel per voce di menu */
  .mega-panel {
    display: none;
    justify-content: center;
    padding: 3rem var(--gutter, 2rem) 4rem;
    box-sizing: border-box;
    width: 100%;
  }

  .mega-panel--single {
    justify-content: flex-start;
  }

  .mega-panel.is-active {
    display: flex;
  }

  /* Swap immagine hover sulle mega-card */
  .mega-card__img-wrap {
    position: relative;
  }

  .mega-card__img--base,
  .mega-card__img--hover {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 450ms ease, transform 500ms ease;
  }

  .mega-card__img--hover {
    opacity: 0;
  }

  .mega-card:hover .mega-card__img--hover {
    opacity: 1;
  }

  .mega-card:hover .mega-card__img--base {
    opacity: 0;
  }

  .mega-menu-panel__inner--single {
    grid-template-columns: 1fr;
    width: 22rem;
    max-width: 22rem;
  }

}

/* ---------- Video Modal Overlay (Shortcode [iclo_video_button]) ---------- */
body.has-video-modal-open {
  overflow: hidden !important;
}

.iclo-video-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 320ms ease, visibility 320ms ease;
}

.iclo-video-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.iclo-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(1, 6, 112, 0.92);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  cursor: pointer;
}

.iclo-video-modal__container {
  position: relative;
  width: 100%;
  max-width: 960px;
  z-index: 2;
  transform: scale(0.94) translateY(12px);
  transition: transform 340ms cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.iclo-video-modal.is-open .iclo-video-modal__container {
  transform: scale(1) translateY(0);
}

.iclo-video-modal__close {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: transparent;
  border: none;
  color: rgba(255, 255, 255, 0.85);
  font-family: 'Cera Pro', sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  cursor: pointer;
  padding: 0.5rem 0;
  margin-bottom: 0.75rem;
  transition: color 0.22s ease;
}

.iclo-video-modal__close-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.35);
  color: #ffffff;
  transition: border-color 0.22s ease, background-color 0.22s ease, transform 0.22s ease;
}

.iclo-video-modal__close:hover {
  color: var(--color-orange, #ea580c);
}

.iclo-video-modal__close:hover .iclo-video-modal__close-circle {
  border-color: var(--color-orange, #ea580c);
  background-color: rgba(234, 88, 12, 0.15);
  transform: rotate(90deg);
}

.iclo-video-modal__video-wrap {
  width: 100%;
  aspect-ratio: 16/9;
  background-color: #00022e;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 25px 60px -10px rgba(0, 2, 46, 0.75), 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.iclo-video-modal__player {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: #000;
}