body {
  margin: 0;
  padding: 0;
  background: black;
  font-family: 'Courier New', monospace;
  overflow: hidden;
  height: 100vh;
}

a { color: inherit; text-decoration: none; }

/* —– cursor control (desktop vs touch) —– /

.has-mouse body { cursor: none; }

.no-mouse  body { cursor: auto; }

.no-mouse .custom-cursor { display: none !important; }

/* keep links from forcing the arrow on desktop */

 button, input, textarea { cursor: inherit; }

/* kill tap highlight on iOS for the “signal received” link */
.thanks-page .sr-link { -webkit-tap-highlight-color: transparent; }

/* mobile layout tweaks /

@media (max-width: 600px){

.center-container{

width: 86vw;

top: 36vh;              / pulls the form up into center /

}

input[type=“email”]{

font-size: 16px;        / prevents iOS zoom /

padding: 12px 14px;

}

.link-btn, .oi-link      / “arm me” + other small links */

/* Kill dot cursor ONLY on thanks.html when on mobile */
.thanks-page.no-mouse .custom-cursor {
  display: none !important;
}
/* Hide the fake dot cursor on the thanks page for touch devices */
@media (pointer: coarse) {
  .thanks-page .custom-cursor { display: none !important; }
}

.center-container {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 2;
}

/* place the text slightly above the screen center (where your dot sits) */
.center-text{
  position: absolute;
  left: 50%;
  top: 50%;
  /* nudge up ~22px so it's just above the dot */
  transform: translate(-50%, calc(-50% - 22px));
  z-index: 2;
  text-align: center;
}

/* same type as manifesto/intercept: mono, clean */
.oi-link{
  font-family: 'Courier New', monospace;
  font-size: 16px;
  color: #fff;
  opacity: .88;
  text-decoration: none;
  transition: text-shadow .18s ease, opacity .18s ease;
}

/* only glow on hover — no glitch */
.oi-link:hover{
  opacity: 1;
  text-shadow: 0 0 8px #fff, 0 0 12px #0ff;
}

#loading-bar-container {
  width: 220px;
  height: 14px;
  background: #222;
  border: 2px solid white;
  margin: 0 auto;
  overflow: hidden;
}

#loading-bar {
  height: 100%;
  width: 100%;
  background-color: white;
  animation: loadSimple 3s forwards;
}

@keyframes loadSimple {
  0% { width: 0%; }
  100% { width: 100%; }
}

#auth-text {
  margin-top: 20px;
  color: white;
  font-size: 20px;
  cursor: pointer;
}

.glow {
  text-shadow: 0 0 8px white;
  transition: text-shadow 0.2s ease;
}

.glow:hover {
  text-shadow: 0 0 20px white, 0 0 40px white;
}

.msi {
  margin-top: 10px;
  font-size: 18px;
  color: white;
  cursor: pointer;
  transition: all 0.2s ease;
}

.hidden {
  display: none;
}
/* Hide default cursor */
body {
  cursor: none;
}

/* Dot cursor */
.custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: white;
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
}
/* Force all elements to use no cursor */
* {
  cursor: none !important;
}
button:hover { box-shadow: 0 0 20px rgba(255,255,255,.6); }
input:focus { outline: none; border-color: #888; }

/* Ghost button hover glow */
.btn-ghost:hover {
  text-shadow: 0 0 20px white, 0 0 40px white;
}

/* link-style submit (text only, no box) */
.link-btn{
  background: transparent !important;
  border: 0 !important;
  padding: 0;
  color: #fff;
  font: inherit;
  cursor: pointer;
  text-shadow: 0 0 0 rgba(255,255,255,0); /* start “off” */
}
.link-btn:hover{
  text-shadow: 0 0 20px #fff, 0 0 40px #fff; /* glow on hover */
}

input[type="email"] {
  border: 1px solid #555 !important; /* already inlined in your HTML */
  background: transparent;
  color: #fff;
}
input[type="email"]::placeholder { color: #aaa; }

/* Black boot curtain to prevent white flash during navigation */
#boot {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 100000; /* above everything */
}

.status{ margin-top:12px; font-size:16px; color:#ddd; opacity:.9; }
/* link-style submit (no box) */
.link-btn{
  background: transparent !important;
  border: 0 !important;
  padding: 0;                 /* click area = text */
  color: #fff;
  font: inherit;
  cursor: pointer;
  text-shadow: 0 0 0 rgba(255,255,255,0);
}
.link-btn:hover{
  text-shadow: 0 0 8px #fff, 0 0 24px #fff; /* glow on hover */
}
.link-btn:focus{ outline: none; }
/* center the status and place the back symbol just below it */

.status {
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  margin: 0 auto 10px;
  text-align: center;
  white-space: nowrap; /* keeps error 404 – 17.08.25 on one line */
}

.back {
  display: block;
  margin: 60px auto 0;
  cursor: pointer;
  opacity: .85;
}
/* text-only button */
.link-btn{
  background: transparent !important;
  border: 0 !important;
  padding: 0;
  color: #fff;
  font: inherit;
  cursor: pointer;
  text-shadow: 0 0 0 rgba(255,255,255,0); /* start “off” */
}
.link-btn:hover{
  text-shadow: 0 0 20px #fff, 0 0 40px #fff; /* glow on hover */
}

/* remove generic button box-glow if you still have it */
button:hover { box-shadow: none !important; }


/* DELETE or comment this out so the button has no box glow */
/* button:hover { box-shadow: 0 0 20px rgba(255,255,255,.6); } */


/* Center stack for 404 pages */
.center{
  position:absolute; inset:0;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:60px;               /* space between text and the x */
  text-align:center;
  z-index:2;
}
.status{ margin:0; }     /* kill extra spacing */
.back{
  cursor:pointer;
  opacity:.85;
}
.status {
  display: inline-block;
  text-align: center;
  margin-bottom: 60px;
}

.back {
  display: inline-block;
  margin-top: 60px; /* locked position for X */
  cursor: pointer;
  opacity: 0.85;
}

.error-block {
  display: flex;
  flex-direction: column;
  align-items: center;
}
/* ---------- THANKS PAGE OVERRIDES ---------- */
* thanks page link styles */
.thanks-page .sr-link{
  position: relative;
  z-index: 3;              /* above any overlays */
  display: inline-block;
  font-family: 'Courier New', monospace;
  font-size: 16px;
  color: #fff;
  opacity: .88;
  text-decoration: none;
  text-shadow: none;       /* no constant glow */
  -webkit-tap-highlight-color: transparent; /* iOS ripple off */
}

/* hover (desktop) + focus-visible/active (mobile) glow */
.thanks-page .sr-link:hover,
.thanks-page .sr-link:focus-visible,
.thanks-page .sr-link:active{
  opacity: 1;
  text-shadow: 0 0 8px #fff, 0 0 12px #0ff;
}






/* Nuke any inherited glow/yellow on this page */
.thanks-page .glow,
.thanks-page .glow * {
  text-shadow: none !important;
  color: #fff !important;
}

* Positioning for the message above the center dot */
.sr-wrap {
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, calc(-50% - 22px)); /* nudges text just above the dot */
  z-index:2;
  text-align:center;
}

/* Exact look: mono, white, no constant glow */
.thanks-page .sr-link {
  all: unset;  /* reset any inherited link styles */
  display:inline-block;
  font-family:'Courier New', monospace;
  font-size:16px;
  color:#fff !important;
  opacity:.88;
  text-shadow: none;
  cursor:none !important; /* <<< stops arrow reverting */
transition:text-shadow .18s ease, opacity .18s ease;
}

/* Glow only on hover */
.thanks-page .sr-link:hover {
  opacity:1;
  text-shadow:0 0 8px #fff, 0 0 12px #0ff !important;
}
/* ===== Mobile tweaks (phones) ===== */
@media (max-width: 480px) {

  

  /* keep forms + content within the screen edges */
  .center-container { width: min(94vw, 420px); }

  /* email field comfort sizes */
  input[type="email"]{
    padding: 14px 12px;
    font-size: 16px;           /* avoids iOS zoom */
    line-height: 1.2;
  }



  /* text-only buttons / links: bigger tap target */
  .link-btn,
  .btn-ghost,
  .oi-link,
  .thanks-page .sr-link{
    font-size: 16px;
    padding: 8px 10px;          /* invisible pad = easier tap */
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }

  /* THANKS page positioning: keep “signal received.” just above the dot */
  .thanks-page .sr-wrap{
    /* center and nudge upward a little */
    left: 50%;
    top: 50%;
    transform: translate(-50%, calc(-50% - 18px));
    text-align: center;
  }

  /* phones don’t really have hover — show glow on press */
  .thanks-page .sr-link:hover { text-shadow: none; }
  .thanks-page .sr-link:active{
    opacity: 1;
    text-shadow: 0 0 8px #fff, 0 0 12px #0ff !important;
  }

  /* global cursor control */
  .has-mouse .custom-cursor { display: block !important; }
  .no-mouse  .custom-cursor { display: none  !important; }

  /* belt-and-braces for thanks page */
  @media (pointer: coarse) {
    .thanks-page .custom-cursor { display: none !important; }
    .thanks-page { cursor: auto !important; }
  }

  /* the center dot “cursor”: hide on touch so it doesn’t feel like a mouse */
  .no-mouse .custom-cursor { display: none; }
}
/* 1) Mobile sizing + centering for intercept */
@media (max-width: 480px) {
  .center-container{
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(92vw, 360px);   /* narrower on phones */
  }

  /* heading line "intercept — no spam, intel only" */
  .glow{ font-size: 15px; }

  /* email input */
  #email,
  input[type="email"]{
    font-size: 15px;
    padding: 10px 12px;
  }

  /* submit text */
  .link-btn{ font-size: 18px; }

  /* move the dot a touch lower if needed */
  .center-text{ transform: translate(-50%, calc(-50% - 18px)); }
}

/* 2) Hide fake cursor on touch devices everywhere (including thanks page links) */
.no-mouse .custom-cursor{ display: none !important; }
.no-mouse *{ cursor: auto !important; }
/* prevent iOS from trying to treat taps as mouse-hover-ish */
.no-mouse a, .no-mouse button { -webkit-tap-highlight-color: rgba(255,255,255,0.1); }
.no-mouse .sr-link{ touch-action: manipulation; }
* Hide fake cursor on touch devices or during a tap */
.no-mouse .custom-cursor,
.touching .custom-cursor { display: none !important; }

/* Keep inputs from zooming on iOS and tighten mobile layout */
input, select, textarea { font-size: 16px; }

/* Mobile tweaks for intercept page */
@media (max-width: 600px) {
  .center-container {
    top: 44%;           /* pulls the stack to true middle on phones */
    left: 50%;
    transform: translate(-50%, -50%);
    width: 88vw;        /* narrower so it breathes */
  }

  /* email field & submit link sizing */
  #email { padding: 12px; font-size: 16px; }
  .link-btn { font-size: 18px; }

  /* keep the dot safely visible away from the UI edge if needed */
  .custom-cursor { width: 6px; height: 6px; }
}


.thanks-page .sr-link {
  display: inline-block;
  font-family: "Courier New", monospace;
  font-size: 16px;
  color: #fff;
  opacity: .88;
  text-shadow: none;           /* no constant glow */
}
.thanks-page .sr-link:hover {
  opacity: 1;
  text-shadow: 0 0 8px #fff, 0 0 12px #0ff;  /* glow only on hover */
}

/* Mobile-only adjustments for intercept email field */
@media (max-width: 768px) {
  input[type="email"] {
    width: 80%;         /* shrink */
    max-width: 320px;   /* prevent too wide */
    margin: 12px auto;  /* center */
    font-size: 16px;    /* stops iOS zoom */
  }
}

/* Kill dot cursor ONLY on thanks.html when on mobile */
.thanks-page.no-mouse .custom-cursor {
  display: none !important;
}
@media (pointer: coarse) {
  .thanks-page .custom-cursor { display: none !important; }
  .thanks-page { cursor: auto !important; }
}

/* Show fake cursor only on precise pointers (mice/trackpads) */
.has-mouse .custom-cursor { display: block !important; }
.no-mouse  .custom-cursor { display: none  !important; }

/* Extra guard: hide the dot on touch devices */
@media (pointer: coarse) {
  .custom-cursor { display: none !important; }
  .thanks-page   { cursor: auto !important; }
}
/* Desktop layout fixes (keep mobile unchanged) */
@media (min-width: 601px) {
  /* The container that wraps your email input + text */
  .center-container{
    position: absolute;
    top: 45%;                 /* same vertical feel as before */
    left: 50%;
    transform: translate(-50%, -50%);
    width: 460px;             /* pick a fixed width so it visually centers */
    max-width: 90vw;          /* don’t overflow on smaller desktops */
  }

  /* If your input itself has a width set inline, this keeps it aligned */
  input[type="email"]{
    width: 100%;
    box-sizing: border-box;
  }
  
}
/* ===== THANKS PAGE ONLY ===== */
.thanks-page {
  /* make sure nothing sits on top stealing clicks */
  position: relative;
  overflow: hidden;
  background:#000;
}



/* center stack */
.center-stack {
  min-height: 100vh;
  display: grid;
  place-items: center;
  gap: 14px; /* space between text and X – tweak if you want tighter/looser */
  text-align: center;
}

/* the “signal received” link – same font family you’re using elsewhere */
.signal-link {
  font-family: inherit;
  font-weight: 600;
  font-size: clamp(20px, 6vw, 40px);
  letter-spacing: 0.04em;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  position: relative;
  z-index: 2; /* above everything */
  transition: text-shadow .15s ease, filter .15s ease;
}

/* glow on hover/focus (matches your MSI glow vibe) */
.signal-link:hover,
.signal-link:focus {
  text-shadow:
    0 0 6px rgba(255,255,255,.65),
    0 0 12px rgba(255,255,255,.35);
  filter: drop-shadow(0 0 2px rgba(255,255,255,.3));
}

/* the bottom X */
.back-x {
  font-family: inherit;
  font-size: clamp(18px, 5vw, 28px);
  color: #fff;
  text-decoration: none;
  opacity: .9;
  transition: text-shadow .15s ease, opacity .15s ease;
  line-height: 1;
}

.back-x:hover,
.back-x:focus {
  opacity: 1;
  text-shadow:
    0 0 6px rgba(255,255,255,.6),
    0 0 10px rgba(255,255,255,.3);
}

/* ===== Cursor logic (thanks page only) ===== */

/* Desktop: keep your dot cursor working */
.thanks-page body,
.thanks-page * {
  cursor: none;
}

/* Mobile: hide the dot and use normal touch cursor */
@media (max-width: 768px) {
  .thanks-page .custom-cursor {
    display: none !important;
  }
  .thanks-page body,
  .thanks-page * {
    cursor: default !important;
  }
}
/* Signal Received styling */
.thanks-page .signal-link {
  display: block;
  font-family: 'Courier New', monospace;
  font-size: 16px;          /* smaller, matches menu items */
  font-weight: normal;      /* remove bold */
  color: #fff;
  opacity: 0.88;
  text-decoration: none;
  text-align: center;

  /* Center on screen */
  position: absolute;
  top: 45%;                 /* nudge slightly above center */
  left: 50%;
  transform: translate(-50%, -50%);
  transition: text-shadow 0.2s ease;
}

.thanks-page .signal-link:hover {
  opacity: 1;
  text-shadow: 0 0 8px #fff, 0 0 12px #0ff;
}

/* Position the X just below */
.thanks-page .back-x {
  display: block;
  font-family: 'Courier New', monospace;
  font-size: 18px;
  color: #fff;
  text-align: center;

  position: absolute;
  top: 55%;                 /* just under "signal received" */
  left: 50%;
  transform: translate(-50%, -50%);
  text-decoration: none;
  opacity: 0.85;
}