#cta, #staffaug-contact {
  padding: var(--sp) 0;
  position: relative;
  overflow: hidden;
}

/* Vignette */ 
#cta::before, #staffaug-contact::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(
    ellipse 70% 70% at center,
    transparent 30%,
    rgba(6, 8, 16, 0.75) 100%
  );
  pointer-events: none;
  z-index: 0;
}

/* Ambient star dots (JS populates) */ 
.ambient-dots { 
  position: absolute; 
  inset: 0; 
  pointer-events: none; 
  z-index: 0; 
} 

.ambient-dot {
  position: absolute;
  background: white;
  border-radius: 50%;
  will-change: transform, opacity;
}

/* ── Header: CENTERED ────────────────────── */ 
.cta-header {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 40px;
  padding: 0 40px;
  position: relative;
  z-index: 1;
} 

.cta-header .text-eyebrow { 
  display: block; 
  margin-bottom: 16px; 
} 

.cta-header .divider { 
  margin: 16px auto 24px;  /* auto = centered */ 
} 

.cta-header .text-title { 
  margin-bottom: 20px; 
} 

.cta-header .text-body { 
  max-width: 480px; 
  margin: 0 auto; 
  line-height: 1.75; 
} 

/* ── Terminal: CENTERED ──────────────────── */ 
.terminal {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;         /* controlled width */ 
  margin: 0 auto;          /* centered */ 
  background: var(--bg); 
  border: 1px solid var(--bh); 
  border-radius: 4px; 
  overflow: hidden; 
  box-shadow: 
    0 0 0 1px rgba(0, 170, 255, 0.04), 
    0 40px 80px rgba(0, 0, 0, 0.6), 
    0 0 60px rgba(0, 170, 255, 0.04); 
  transition: box-shadow 0.4s; 
} 
.terminal:focus-within { 
  box-shadow: 
    0 0 0 1px rgba(0, 170, 255, 0.12), 
    0 40px 80px rgba(0, 0, 0, 0.7), 
    0 0 80px rgba(0, 170, 255, 0.1); 
} 

/* Mac-style header */ 
.term-header { 
  background: var(--panel); 
  height: 40px; 
  border-bottom: 1px solid var(--bh); 
  display: flex; 
  align-items: center; 
  padding: 0 16px; 
  gap: 12px; 
} 

.term-dots { 
  display: flex; 
  gap: 6px; 
} 

@media (max-width: 768px) {
  #cta, #staffaug-contact {
    padding: clamp(48px, 8vw, 80px) 20px;
  }

  .cta-header {
    max-width: 100%;
    text-align: left;
    margin-bottom: 40px;
    padding: 0 5%;
  }

  .terminal {
    max-width: 100%;
    margin: 0 20px;
    width: auto;
  }

  .term-body {
    padding: 20px 18px 24px;
  }

  .term-body input,
  .term-body textarea {
    width: 100%;
    font-size: 14px;
    padding: 12px 10px;
    min-height: 44px;
  }

  .term-body textarea {
    min-height: 100px;
  }

  .term-submit,
  .btn-submit {
    width: 100%;
    min-height: 44px;
    text-align: center;
  }
}

@media (max-width: 480px) {
  #cta, #staffaug-contact {
    padding: 3rem 0;
  }

  .cta-header .text-title {
    font-size: 2rem;
  }

  .term-body {
    padding: 16px;
  }

  .term-label {
    font-size: 13px;
  }

  .term-input {
    font-size: 16px !important; /* iOS zoom prevention duplicate safety */
  }

  .btn-primary {
    width: 100%;
  }
}
.dot { 
  width: 10px; height: 10px; 
  border-radius: 50%; 
} 
.dot:nth-child(1) { background: #ff5f57; } 
.dot:nth-child(2) { background: #febc2e; } 
.dot:nth-child(3) { background: #00aaff; } 
.term-title { 
  font-family: var(--fm); 
  font-size: 11px; 
  color: var(--t3); 
  letter-spacing: 0.1em; 
} 

/* Terminal body */ 
.term-body {
  padding: 24px 28px 28px;
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* Prompt lines */ 
.term-prompt { 
  margin-bottom: 28px; 
  display: flex; 
  flex-direction: column; 
  gap: 4px; 
} 
.term-prompt-line { 
  font-family: var(--fm); 
  font-size: 14px; 
  color: var(--accent); 
  letter-spacing: 0.08em; 
} 
.term-prompt-line.dim { 
  color: var(--t3); 
} 
.term-arrow { 
  color: var(--accent); 
  margin-right: 6px; 
} 

/* Each field block */ 
.term-field {
  margin-bottom: 20px;
}
.term-field:last-of-type {
  margin-bottom: 20px;
}

/* Label row */ 
.term-label {
  display: block;
  font-family: var(--fm);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 8px;
  cursor: text;
}

/* Input / Textarea */ 
.term-input {
  display: block;
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--t1);
  font-family: var(--fm);
  padding: 6px 0 8px;
  outline: none;
  resize: none;
  transition:
    border-color 0.25s,
    box-shadow 0.25s;
}
.term-input::placeholder { 
  color: var(--t3); 
  opacity: 0.6; 
} 
.term-input:focus { 
  border-bottom-color: var(--accent); 
  box-shadow: 0 2px 0 0 rgba(0, 170, 255, 0.2); 
} 

/* Textarea specific */ 
textarea.term-input { 
  min-height: 100px; 
  padding-top: 10px; 
} 

/* Submit button */ 
.term-submit {
  width: 100%;
  height: 44px;
  font-family: var(--fu);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase; 
  display: flex; 
  align-items: center; 
  justify-content: center; 
  clip-path: none;        /* full width — no parallelogram */ 
  border-radius: 2px; 
  margin-top: 4px; 
} 

/* Mobile */ 
@media (max-width: 768px) { 
  .cta-header { padding: 0 20px; } 
  .term-body  { padding: 24px 20px 28px; } 
  .terminal   { margin: 0 20px; } 
} 
