/* Wed&Com — base: reset ed elementi di partenza. */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  background:var(--bone);
  color:var(--ink);
  font-family:var(--f-text);
  font-size:var(--t-base);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img,svg{ max-width:100%; display:block; }
a{ color:inherit; }
button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
ul{ margin:0; padding:0; list-style:none; }
p{ margin:0; }
h1,h2,h3,h4{ margin:0; font-family:var(--f-display); font-weight:600; line-height:1.14; }

:focus-visible{ outline:2px solid var(--bronze); outline-offset:3px; border-radius:2px; }

/* skip-link: visibile solo quando riceve il focus da tastiera */
.wc-skip{
  position:absolute; left:var(--s2); top:-60px; z-index:200;
  background:var(--ink); color:var(--white);
  padding:.7em 1.2em; border-radius:var(--r-sm);
  font-size:var(--t-sm); font-weight:600; text-decoration:none;
  transition:top .2s var(--ease);
}
.wc-skip:focus{ top:var(--s2); }

.wrap{ max-width:var(--maxw); margin-inline:auto; padding-inline:var(--gut); }

.eyebrow{
  display:block; font-family:var(--f-text); font-weight:700; font-size:var(--t-xs);
  letter-spacing:.12em; text-transform:uppercase; color:var(--bronze-deep);
}

.lead{ color:var(--ink-soft); font-size:var(--t-md); line-height:1.65; max-width:46ch; }

.balance{ text-wrap:balance; }

/* campo esca anti-automatismi: fuori schermo, non display:none (vedi
   api/contatti.js) */
.wc-esca{ position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
