/* ==========================================================================
   SmartHire — Base / Reset / Typography
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');

*, *::before, *::after{ box-sizing: border-box; }

html{ scroll-behavior: smooth; }

body{
  margin:0;
  font-family: var(--font-body);
  font-size: var(--fs-body);
  color: var(--color-ink);
  background: var(--color-bg);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  display:flex;
  flex-direction:column;
}

main{ flex:1; }

img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul, ol{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; cursor:pointer; }
input, textarea, select, button{ font-family:inherit; font-size:inherit; }
h1,h2,h3,h4,p,figure{ margin:0; }

h1,h2,h3,h4{
  font-family: var(--font-display);
  color: var(--color-ink);
  font-weight:600;
  line-height:1.12;
  letter-spacing:-0.01em;
}
h1{ font-size: var(--fs-h1); }
h2{ font-size: var(--fs-h2); }
h3{ font-size: var(--fs-h3); }
h4{ font-size: var(--fs-h4); }

p{ color: var(--color-slate); }

.eyebrow{
  font-family: var(--font-mono);
  font-size: var(--fs-xs);
  letter-spacing:0.14em;
  text-transform:uppercase;
  color: var(--color-primary);
  font-weight:500;
}

.mono{ font-family: var(--font-mono); }

/* Focus visibility (accessibility) */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible{
  outline: 2.5px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: 4px;
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
}

::selection{ background: var(--color-primary); color:#fff; }

/* Scrollbar (webkit) */
::-webkit-scrollbar{ width:10px; height:10px; }
::-webkit-scrollbar-track{ background: var(--color-bg-alt); }
::-webkit-scrollbar-thumb{ background: var(--color-border-strong); border-radius:10px; }
::-webkit-scrollbar-thumb:hover{ background: var(--color-slate-light); }
