/* Patch servizi/glossario senza dipendere dalla build Vite */
.moma-servizi-page-bg{ position: relative; z-index: 1; background: linear-gradient(135deg, #cecbc7 0%, #ece6e0 100%); }
.moma-servizi-page-bg::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.12; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E"); mix-blend-mode:multiply; }
.moma-servizi-after{ position: relative; z-index: 20; }
.moma-servizi-stack{ position: relative; z-index: 1; }


/* Hero/banner/projects cursors + reveal-friendly services page */
.moma-project-card{
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  transition: background-color .22s ease, border-radius .22s ease, box-shadow .22s ease;
}
.moma-project-card__media{
  display:block;
  overflow:hidden;
  border-radius:0;
  transform: translateZ(0);
}
.moma-project-card__img{
  width:100%;
  height:auto;
  display:block;
  border-radius:0;
  transform: scale(1);
  transform-origin:center center;
}
.moma-project-card__body{ padding-top: 1rem; }
.moma-glossary-trigger{
  display:inline;
  border:0;
  background:#ebe3f9;
  color:#18085a;
  padding:0 .18em;
  border-radius:.28em;
  cursor:pointer;
  transition: background-color .22s ease, color .22s ease, padding-left .22s ease, padding-right .22s ease, border-radius .22s ease;
}

.moma-glossary-trigger strong{
  font-weight:inherit;
}
.moma-glossary-popover__drag,
.moma-glossary-popover__close,
.moma-glossary-modal__close{
  cursor:pointer;
}

.moma-glossary-trigger.is-active{background:#491caa;color:#fff;padding-left:.24em;padding-right:.24em;border-radius:.28em;}
.moma-servizio-card__glossary-hint{margin:.65rem 0 1rem;color:#18085a;font-size:.875rem;line-height:1.4;}
.moma-glossary-index{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  clip-path:inset(50%);
  white-space:normal;
  border:0;
}
.moma-glossary-popover__drag,.moma-glossary-popover__close,.moma-glossary-modal__close{cursor:pointer !important;}
.moma-project-card__media,.moma-project-card__img{border-radius:0;}
.moma-project-card.is-hover .moma-project-card__media,.moma-project-card.is-hover .moma-project-card__img{border-top-left-radius:24px;border-top-right-radius:24px;border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important;}

@media (max-width: 900px){
  .moma-servizi-stack{
    --moma-cs-sticky-top: 0px;
    --moma-cs-sticky-height: auto;
  }

  .moma-servizi-stack .case-studies_item{
    position: static;
    z-index: auto !important;
    overflow: visible;
  }

  .moma-servizi-stack .case-card_sticky-frame{
    position: static;
    height: auto;
    margin-bottom: 0;
    overflow: visible;
  }

  .moma-servizi-stack .case-card_sticky-element{
    position: static;
    top: auto;
    height: auto;
    padding: 12px;
    overflow: visible;
    opacity: 1 !important;
    transform: none !important;
    will-change: auto;
  }

  .moma-servizi-stack .case-card_sticky-trigger{
    display: none;
  }

  .moma-servizi-stack .moma-servizio-card__panel{
    grid-template-columns: 1fr;
    grid-template-rows: 42dvh auto;
    border-radius: 22px;
  }

  .moma-servizi-stack .moma-servizio-card__media{
    min-height: 42dvh;
  }

  .moma-servizi-stack .moma-servizio-card__content{
    justify-content: flex-start;
    padding: 1.25rem 1.15rem 1.35rem;
  }

  .moma-servizi-stack .moma-servizio-card__title{
    font-size: clamp(1.55rem, 7vw, 2.2rem);
    line-height: 1.06;
  }

  .moma-servizi-stack .moma-servizio-card__text{
    max-width: none;
    font-size: .98rem;
    line-height: 1.68;
  }

  .moma-servizi-stack .moma-servizio-card__text > * + *{
    margin-top: .85rem;
  }

  .moma-servizi-stack .moma-servizio-card__glossary-hint{
    margin: .55rem 0 .85rem;
    font-size: .82rem;
    line-height: 1.35;
  }
}
