@font-face{font-family:"Spectral";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/spectral-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Spectral";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/spectral-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Spectral";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/spectral-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Spectral";font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/spectral-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}
  :root{
    --paper:#EEEFF1; --ink:#22242B; --muted:#5B5E69; --rule:#C9CBD1; --accent:#6A5A96; --on-accent:#FFFFFF; --field:#F8F8FA;
    --serif:"Spectral", Georgia, serif;
    --mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
    color-scheme:light dark;
  }
  @media (prefers-color-scheme:dark){
    :root{ --paper:#1C1D22; --ink:#E4E5E9; --muted:#A2A5B0; --rule:#34363D; --accent:#B0A2DA; --on-accent:#1C1D22; --field:#24252B; }
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--paper);color:var(--ink);font:400 1.125rem/1.75 var(--serif)}
  main{max-width:38rem;margin:0 auto;padding:clamp(3rem,12vh,7rem) 1.5rem 4rem}
  .meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font:400 .8rem/1 var(--mono);color:var(--muted);margin:0 0 1.25rem}
  .stamp{font:500 .72rem/1 var(--mono);letter-spacing:.08em;color:var(--accent);
    border:1.5px solid var(--accent);border-radius:3px;padding:.35rem .5rem;transform:rotate(-2deg)}
  h1{font:500 clamp(1.9rem,5vw,2.5rem)/1.1 var(--serif);margin:0 0 2.5rem;letter-spacing:-.01em}
  p{margin:0 0 1.25rem}
  .line{font:italic 400 clamp(1.6rem,4.6vw,2.2rem)/1.3 var(--serif);margin:2.25rem 0 2.5rem;
    padding-left:1.25rem;border-left:2px solid var(--accent)}
  .access{margin-top:2.75rem;padding-top:1.75rem;border-top:1px solid var(--rule)}
  label{display:block;font:400 .8rem/1.4 var(--mono);color:var(--muted);margin-bottom:.6rem}
  .row{display:flex;gap:.6rem;flex-wrap:wrap}
  input[type=email]{flex:1 1 15rem;min-width:0;font:400 1rem/1.4 var(--serif);color:var(--ink);background:var(--field);
    border:1px solid var(--rule);border-radius:3px;padding:.7rem .85rem}
  input[type=email]:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
  button,.btn{font:500 .85rem/1 var(--mono);border-radius:3px;padding:.85rem 1rem;cursor:pointer;text-decoration:none;display:inline-block}
  button{background:var(--accent);color:var(--on-accent);border:1.5px solid var(--accent)}
  .btn{color:var(--accent);border:1.5px solid var(--accent);background:transparent}
  button:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
  .note{font:400 .78rem/1.5 var(--mono);color:var(--muted);margin:.75rem 0 0}
  .status{font:400 .85rem/1.5 var(--mono);margin:.75rem 0 0;min-height:1.3em}
  .contact{margin-top:2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font:400 .8rem/1.4 var(--mono);color:var(--muted)}
  footer{margin-top:3.5rem;font:400 .75rem/1.6 var(--mono);color:var(--muted)}
  .hp{position:absolute;left:-9999px}
  .note a{color:var(--accent)}
  .back{font:400 .8rem/1 var(--mono)}
