@font-face{font-family:Jost;src:url(/fonts/jost-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Jost;src:url(/fonts/jost-500.woff2) format('woff2');font-weight:500;font-display:swap}

:root{
  --ink:#000;
  --ground:#EBECEE;
  --body:#35373A;
  --hair:#C4C6C9;
  --hair-soft:#D5D7DA;
  --surface:#fff;
  --red:#C1121F;
  --quiet:#84868A;
  --kerf:16px;
  --gutter:26px;
  --measure:48ch;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--ground);color:var(--ink);
  font:400 17px/1.65 Jost,system-ui,sans-serif;
}
.wrap{max-width:820px;margin:0 auto;padding:0 32px}

.masthead{background:var(--ink);color:#fff}
.masthead-inner{max-width:820px;margin:0 auto;padding:100px 32px 0}
.lockup{display:flex;align-items:center;gap:20px}
.mark{width:64px;height:64px;flex:none;color:#fff}
h1{font-size:clamp(38px,7vw,52px);font-weight:500;letter-spacing:.02em;line-height:1;margin:0}
.standfirst{margin:12px 0 0;font-size:15px;color:#9B9DA1}

.kerf-rule{display:flex;gap:var(--kerf);margin-top:84px}
.kerf-rule span{height:5px;background:var(--red)}
.kerf-rule span:first-child{flex:1}
.kerf-rule span:last-child{flex:2}

main{padding:52px 0 8px}
section{
  border-left:1px solid var(--hair);
  padding-left:var(--gutter);
  margin:0 0 var(--kerf);
  padding-bottom:26px;
}
section:last-of-type{padding-bottom:0}
p{margin:0 0 12px;max-width:var(--measure);color:var(--body)}
p:last-child{margin-bottom:0}

.term{font-size:clamp(32px,6vw,44px);font-weight:500;line-height:1.1;margin:0}
.measure{font-size:17px;color:var(--red);margin:10px 0 18px}
.label{font-size:13px;font-weight:400;color:var(--red);letter-spacing:.05em;margin:0 0 14px}
h3{font-size:17px;font-weight:500;margin:0 0 10px;color:var(--ink)}

.kit{list-style:none;margin:0;padding:0;font-size:15px;line-height:1.95;color:var(--body)}
.contact{margin-top:16px}

.link{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.link:hover{color:var(--red)}
a:focus-visible{outline:2px solid var(--red);outline-offset:3px}

footer{margin-top:48px;padding:18px 0 40px}
.foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border-top:1px solid var(--hair-soft);padding-top:18px;font-size:13px;color:var(--quiet)}

@media(max-width:600px){
  :root{--gutter:18px;--kerf:12px}
  body{font-size:16px}
  .masthead-inner{padding:64px 24px 0}
  .wrap{padding:0 24px}
  .mark{width:48px;height:48px}
  .lockup{gap:16px}
  .kerf-rule{margin-top:40px}
  main{padding:40px 0 8px}
}
