/* ForCy · pagina "in costruzione"
   Blu notte #123A68 · Ciano #20B8D2 · Bianco */
:root {
  --blu-notte: #123a68;
  --blu-scuro: #0a2340;
  --ciano: #20b8d2;
  --bianco: #ffffff;
  --tenue: rgba(255, 255, 255, 0.72);
  color-scheme: dark;
}

* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; }
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color: var(--bianco);
  background: var(--blu-scuro);
  -webkit-font-smoothing: antialiased;
}

.pagina {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-rows: 1fr auto;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 35%, rgba(32, 184, 210, 0.18) 0%, rgba(32, 184, 210, 0) 55%),
    linear-gradient(165deg, var(--blu-notte) 0%, var(--blu-scuro) 100%);
}

/* Rete decorativa sullo sfondo (disegnata da rete.js) */
.rete-sfondo { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; display: block; }

.contenuto {
  position: relative;
  align-self: center;
  justify-self: center;
  width: 100%;
  max-width: 560px;
  padding: 48px 16px 24px;
  text-align: center;
}

.scudo { width: 112px; height: auto; filter: drop-shadow(0 10px 30px rgba(32, 184, 210, 0.35)); }

.nome {
  margin: 18px 0 0;
  font-size: clamp(2.6rem, 9vw, 3.6rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
}

.payoff {
  margin: 14px 0 0;
  font-size: clamp(1.05rem, 3.6vw, 1.25rem);
  font-weight: 600;
  line-height: 1.4;
  color: var(--tenue);
}

.separatore { width: 56px; height: 3px; margin: 32px auto; border-radius: 2px; background: var(--ciano); }

.stato {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 6px 14px;
  border: 1px solid rgba(32, 184, 210, 0.5);
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ciano);
}
.puntino { width: 8px; height: 8px; border-radius: 50%; background: var(--ciano); animation: lampeggia 1.6s ease-in-out infinite; }
@keyframes lampeggia { 50% { opacity: 0.25; } }

.testo { margin: 18px 0 0; font-size: 1.05rem; line-height: 1.6; color: var(--tenue); }

.azioni { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; margin-top: 32px; }
.pulsante {
  display: inline-block;
  min-width: 150px;
  padding: 12px 22px;
  border-radius: 8px;
  border: 1px solid var(--ciano);
  background: var(--ciano);
  color: var(--blu-scuro);
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.pulsante:hover { transform: translateY(-1px); background: #3cc6de; }
.pulsante.secondario { background: transparent; color: var(--bianco); border-color: rgba(255, 255, 255, 0.45); }
.pulsante.secondario:hover { background: rgba(255, 255, 255, 0.08); border-color: var(--bianco); }
.pulsante:focus-visible { outline: 3px solid var(--bianco); outline-offset: 3px; }

.piede {
  position: relative;
  padding: 20px 16px 28px;
  text-align: center;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
}

@media (prefers-reduced-motion: reduce) {
  .puntino { animation: none; }
  .pulsante { transition: none; }
}
