/* Carried forward verbatim from the tuned <style> block of the 2026-09-15
   homepage. These values were measured against real Archivo web rendering;
   per data/tokens.json they win over the Figma-measured numbers. */

/* ============================================================
   RESET
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{
  background:var(--bone);
  color:var(--ink);
  font-family:var(--sans);
  font-size:var(--step-body);
  font-weight:400;
  line-height:1.5;
  font-variation-settings:"wdth" 100;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
::selection{background:var(--blue);color:var(--paper)}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad-x)}

.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;
}
.skip{
  position:absolute;left:12px;top:-100px;z-index:300;
  background:var(--blue);color:var(--paper);padding:12px 18px;
  font-weight:600;transition:top .2s ease;
}
.skip:focus{top:12px}

:focus-visible{outline:3px solid var(--hot);outline-offset:3px}
/* the ring must contrast with whatever field it lands on */
.contact :focus-visible{outline-color:var(--ink)}
.statement :focus-visible,.footer :focus-visible{outline-color:var(--bone)}

/* shared label voice — small, tracked, uppercase */
.label{
  font-size:var(--step-label);
  font-variation-settings:"wdth" 100;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:uppercase;
  line-height:1.4;
}

.stop{color:var(--hot)}

/* ============================================================
   ICONS
   ============================================================ */
.ico{width:1em;height:1em;flex:none;stroke:currentColor;fill:none;
  stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;vertical-align:baseline}
