/* Iscrizione al Delphyros Insider Brief: la parte comune alle due pagine che scrivono nella stessa
   tabella, /insider-brief/ (il link dentro il n. 1) e /newsletter/ (il link per chiunque).
   Qui stanno caratteri, colori, fondo e il modulo; l'impianto di ogni pagina resta nella pagina.
   Due famiglie: Fraunces per i titoli (TheSeasons non e' pubblicato), Inter Tight per tutto il resto,
   dai file gia' pubblicati della landing del paper. */
@font-face { font-family: "Fraunces"; src: url("/articles/preventing-insider-threats/assets/fonts/Fraunces-Variable.ttf") format("truetype"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Inter Tight"; src: url("/articles/preventing-insider-threats/assets/fonts/InterTight-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Inter Tight"; src: url("/articles/preventing-insider-threats/assets/fonts/InterTight-SemiBold.ttf") format("truetype"); font-weight: 600; font-display: swap; }
:root {
  --amber: #F9A01B; --t1: #FFFFFF; --t2: #EDEDED; --t3: #B8B8B8;
  --line-3: rgba(255,255,255,.18);
  --display: "Fraunces", Georgia, serif; --sans: "Inter Tight", system-ui, sans-serif;
  --ease: cubic-bezier(.165,.84,.44,1);
}
*, *::before, *::after { box-sizing: border-box; }
/* il modulo e il riquadro del grazie hanno un display proprio: senza questa riga [hidden] non li nasconde */
[hidden] { display: none !important; }
body { background: #000; color: var(--t2); font-family: var(--sans); font-size: 17px; line-height: 1.55;
  -webkit-font-smoothing: antialiased; overflow-x: clip; }
/* alone ambra dal bordo basso, come nella landing del paper, con una grana fine che toglie le fasce */
body::before { content: ""; position: fixed; z-index: -1; left: 50%; bottom: 0; width: 150vw; height: 62vh; transform: translate(-50%, 46%);
  background: radial-gradient(50% 50% at 50% 50%, rgba(249,160,27,.22), rgba(249,160,27,.06) 45%, transparent 75%); pointer-events: none; }
body::after { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .035;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

form { display: grid; gap: 12px; }
form p { margin: 0; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.fld input { width: 100%; min-height: 50px; padding: 0 22px; border-radius: 999px; border: 0; font: inherit; font-size: 16px; color: var(--t1);
  background: rgba(255,255,255,.07); box-shadow: inset 0 0 0 1px var(--line-3); transition: box-shadow .2s var(--ease), background-color .2s; }
.fld input::placeholder { color: var(--t3); opacity: 1; }
.fld input:focus { outline: none; box-shadow: inset 0 0 0 1px var(--amber), 0 0 0 4px rgba(249,160,27,.16); }
.fld input[aria-invalid="true"] { box-shadow: inset 0 0 0 1px var(--amber); }
@media (hover: hover) { .fld input:hover { background: rgba(255,255,255,.09); } }
.err, .hint { font-size: 14px; line-height: 1.4; padding: 6px 22px 0; }
.err { color: var(--amber); }
.err:empty, .hint:empty { display: none; }
.hint { color: var(--t2); }
.hint button { font: inherit; color: var(--amber); background: none; border: 0; padding: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.opt { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.5; color: var(--t2); cursor: pointer; padding: 8px 4px 0; }
.opt input { appearance: none; -webkit-appearance: none; flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; border-radius: 6px;
  box-shadow: inset 0 0 0 1px var(--line-3); background: rgba(255,255,255,.05); display: grid; place-items: center; cursor: pointer; }
.opt input:checked { background: var(--amber); box-shadow: none; }
.opt input:checked::after { content: ""; width: 9px; height: 5px; border: 2px solid #000; border-top: 0; border-right: 0; transform: translateY(-1px) rotate(-45deg); }
.opt input[aria-invalid="true"] { box-shadow: inset 0 0 0 1px var(--amber); }
.opt input:focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; }
.opt-err { padding-left: 4px; }
.btn { justify-self: start; display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 28px; margin-top: 10px;
  border-radius: 999px; border: 0; font: inherit; font-weight: 600; font-size: 15px; cursor: pointer; color: #000; background: var(--amber);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45), inset 0 -1px 0 rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.4); transition: background-color .2s; }
@media (hover: hover) { .btn:hover { background: #ffb547; } }
.btn:active { transform: translateY(1px); }
.btn:disabled { opacity: .7; cursor: default; transform: none; }
.btn:focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; }
.legal { font-size: 14px; color: var(--t3); margin-top: 4px; }
.legal a { color: var(--t2); text-underline-offset: 3px; }
.form-err { color: var(--amber); font-size: 15px; }
.form-err:empty { display: none; }
/* campo trappola per i bot: fuori schermo, non raggiungibile da tastiera */
.trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
