@font-face{font-family:'PJS';font-style:normal;font-weight:200;font-display:swap;src:url(fonts/jakarta-300-latin.woff2) format('woff2');}
@font-face{font-family:'PJS';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jakarta-300-latin.woff2) format('woff2');}
@font-face{font-family:'PJS';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jakarta-400-latin.woff2) format('woff2');}
@font-face{font-family:'PJS';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jakarta-500-latin.woff2) format('woff2');}
@font-face{font-family:'PJS';font-style:italic;font-weight:300;font-display:swap;src:url(fonts/jakarta-300-italic-latin.woff2) format('woff2');}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font);
  font-size:var(--t-0);
  line-height:var(--lh-body);
  letter-spacing:var(--tr-body);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none;padding:0}
h1,h2,h3,h4{font-weight:200;line-height:var(--lh-title);letter-spacing:var(--tr-title);text-wrap:balance}
p{text-wrap:pretty}

:where(a,button):focus-visible{outline:2px solid var(--celadon);outline-offset:3px;border-radius:1px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:var(--s-s);top:var(--s-s);z-index:99;background:var(--celadon);color:#fff;padding-inline:var(--s-s);min-height:44px;display:inline-flex;align-items:center}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* every interactive target clears 44px without padding guesswork */
.tap{min-height:44px;display:inline-flex;align-items:center}

.caps{
  font-size:var(--t--2);
  letter-spacing:var(--tr-caps);
  text-transform:uppercase;
  font-weight:500;
  line-height:1.6;
}
.measure{max-width:var(--measure-body)}
.lead{max-width:var(--measure-lead);font-size:var(--t-1);line-height:var(--lh-tight);color:var(--ink2)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
