/* Fox Auth — reset + base element styles */
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:var(--body);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  color:var(--midnight);
  background:#FFFFFF;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:var(--sky);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
ul{list-style:none;padding:0}

h1,h2,h3,h4{font-family:var(--sans);font-weight:600;line-height:var(--lh-tight);letter-spacing:-.02em;text-wrap:balance}
h1{font-size:var(--fs-h1)}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);letter-spacing:-.01em}
p{text-wrap:pretty}
strong{font-weight:600}

/* Focus — always visible (never remove without replacement) */
:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}

/* ---- Layout helpers ---- */
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--s7)}
.section--tight{padding-block:var(--s5)}
@media (max-width:640px){
  .section{padding-block:var(--s5)}
  :root{--gutter:18px}
}

.eyebrow{font-family:var(--body);font-size:var(--fs-small);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--slate)}
.lead{font-size:var(--fs-lead);color:var(--slate);line-height:1.5;max-width:var(--measure)}
.measure{max-width:var(--measure)}
.center{text-align:center;margin-inline:auto}
.muted{color:var(--slate)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Section heading block */
.sec-head{max-width:var(--measure)}
.sec-head.center{margin-inline:auto}
.sec-head .eyebrow{margin-bottom:var(--s1)}
.sec-head p{margin-top:var(--s2)}

/* ---- Global reduced-motion guard ---- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}
