/* Pagina teaser / manutenzione. Stessa palette del sito. */
:root { --paper: #fbfbf8; --ink: #1f3a93; --ink-dark: #172c70; --graphite: #23272e; --muted: #555b66;
  --font: "Avenir Next", "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif; }
*, *::before, *::after { box-sizing: border-box; }
html, body { height: 100%; }
body { margin: 0; display: flex; flex-direction: column; background: var(--paper); color: var(--graphite);
  font: 400 1.0625rem/1.6 var(--font); -webkit-text-size-adjust: 100%; }
.teaser { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 3rem 16px; max-width: 38rem; margin: 0 auto; }
.logo { width: 96px; height: 96px; border-radius: 22px; margin-bottom: 1.5rem; }
h1 { margin: 0 0 .75rem; font-size: clamp(2rem, 1.3rem + 3vw, 3rem); line-height: 1.08; letter-spacing: -0.02em; }
p { margin: 0 0 1em; }
.lead { font-size: 1.2rem; color: var(--graphite); }
.soon { color: var(--ink); font-weight: 600; margin: .5rem 0 2rem; }
a { color: var(--ink); text-underline-offset: .18em; }
.btn { display: inline-block; padding: .8rem 1.3rem; border-radius: 8px; background: var(--ink); color: #fff;
  text-decoration: none; font-weight: 600; overflow-wrap: anywhere; }
.btn:hover { background: var(--ink-dark); color: #fff; }
:focus-visible { outline: 3px solid #c98a00; outline-offset: 2px; }
.foot { text-align: center; padding: 1.25rem 16px; color: var(--muted); font-size: .9rem; }
@media (prefers-color-scheme: dark) {
  :root { --paper: #141a33; --graphite: #eef0f6; --muted: #aab1c4; --ink: #9db2ff; --ink-dark: #c3d0ff; }
  .btn { background: #3c5bd6; } .btn:hover { background: #4b6af0; }
}
