/* Colori e font: modifica qui. Per un font vostro, aggiungi @font-face
   puntando a un file nella cartella del sito (niente Google Fonts). */
:root{
  --bg:#f4f4f2;
  --ink:#000;
  --font:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --pad:clamp(1.25rem,4vw,3rem);
}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;font-family:var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px}

/* Toggle in alto a destra */
.bar{position:fixed;top:0;right:0;z-index:10;padding:var(--pad);display:flex;flex-direction:column;align-items:flex-end;gap:.9rem}
.toggle{display:block;background:none;border:0;padding:.5rem;margin:-.5rem;color:inherit;cursor:pointer;line-height:0}
.toggle svg{height:1.75rem;width:auto;display:block}
.toggle .ico-x{height:1.5rem}
.toggle[data-state="i"] .ico-x,.toggle[data-state="x"] .ico-i{display:none}
.menu{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;font-size:1.125rem}
.menu[hidden]{display:none}
.menu a{text-decoration:none}
.menu a:hover{text-decoration:underline;text-underline-offset:.2em}

/* Landing */
.landing{height:100svh;display:grid;place-items:center;padding:var(--pad)}
.logo{width:min(78vw,640px);height:auto;overflow:visible;display:block}
.js .logo .l{opacity:0}   /* le lettere compaiono via main.js */

/* About */
.about{min-height:100svh;padding:clamp(5rem,12vw,9rem) var(--pad);display:flex;flex-direction:column;gap:1.6em}
.about p{margin:0;max-width:30em;font-size:clamp(1.5rem,3.2vw,2.75rem);line-height:1.2;letter-spacing:-.015em}

/* Contacts */
.contacts{min-height:100svh;padding:var(--pad);display:flex;flex-direction:column;justify-content:center;gap:3rem}
.contacts ul{list-style:none;margin:0;padding:0;font-size:clamp(1.5rem,3.2vw,2.75rem);line-height:1.25;letter-spacing:-.015em}
.contacts a{text-decoration:none}
.contacts a:hover{text-decoration:underline;text-underline-offset:.15em}
.legal{margin:0;max-width:42em;font-size:.8125rem;line-height:1.5}
