/* ==========================================================================
   CENTRO SALUTE VISIVA / ZENO — DESIGN SYSTEM GLOBALE
   V5.6.151 — Prima uniformazione controllata
   Fonte di verità per token, gerarchia globale e ritmo verticale.
   Non modifica alcun contenuto testuale.
   ========================================================================== */

:root{
  /* Scala tipografica semantica */
  --type-meta: clamp(.72rem,.72vw,.82rem);
  --type-label: clamp(.78rem,.78vw,.9rem);
  --type-nav: clamp(.88rem,.82vw,.98rem);
  --type-small: clamp(.88rem,.86vw,.98rem);
  --type-body: clamp(1rem,.96vw,1.08rem);
  --type-intro: clamp(1.08rem,1.25vw,1.28rem);
  --type-component: clamp(1.18rem,1.55vw,1.48rem);
  --type-section: clamp(2rem,3.3vw,3.35rem);
  --type-page: clamp(2.35rem,4.2vw,4.25rem);
  --type-display: clamp(3rem,6.2vw,5.25rem);

  /* Interlinea per ruolo */
  --lh-meta: 1.45;
  --lh-body: 1.68;
  --lh-intro: 1.62;
  --lh-heading: 1.08;
  --lh-display: 1.02;

  /* Ritmo verticale */
  --space-1: .5rem;
  --space-2: .75rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2rem;
  --space-6: 3rem;
  --space-7: 4.5rem;
  --section-space: clamp(4.5rem,8vw,6.25rem);

  /* Larghezze editoriali */
  --measure-copy: 46rem;
  --measure-intro: 53rem;
  --measure-heading: 58rem;
}

/* Base leggibile e coerente */
body{
  font-size:var(--type-body);
  line-height:var(--lh-body);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

/* Eyebrow: ruolo secondario ma riconoscibile */
.eyebrow{
  font-size:var(--type-label);
  line-height:var(--lh-meta);
  letter-spacing:.12em;
}

/* Il dettaglio delle gerarchie editoriali è governato da heading-system.css. */

/* Spaziatura di sezione coerente */
.section{
  padding-block:var(--section-space);
}

.section-heading{
  margin-bottom:clamp(2.25rem,4vw,2.9rem);
}

/* Testi secondari: mai ridurre il contenuto principale a microtesto */
small,
.project-signature{
  line-height:var(--lh-meta);
}

/* Navigazione: ruolo autonomo.
   CTA e controlli mantengono la propria famiglia funzionale. */
.main-nav,
.nav-dropdown{
  font-size:var(--type-nav);
}

/* Regola di sicurezza mobile */
@media(max-width:760px){
  .container{width:min(var(--container),calc(100% - 32px))}
  .section{padding-block:clamp(4rem,10vw,4.75rem)}
}
