:root{
  --paper:#f7f8f5; --ink:#16243a; --muted:#51607a; --rule:#cfd6dc;
  --tag:#f0c93a; --field:#1f5a3a;
  --cond:"HelveticaNeue-CondensedBold","Arial Narrow","Roboto Condensed","Franklin Gothic Medium",Arial,sans-serif;
  --body:"Iowan Old Style","Charter",Georgia,serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:1.0625rem/1.7 var(--body)}
a{color:var(--field);text-underline-offset:.15em}
a:focus-visible,input:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.skip{position:absolute;left:-999px}
.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem .75rem;z-index:5}
.wrap{max-width:62rem;margin:0 auto;padding:0 1.25rem}
.site{margin:0;padding:1.25rem 0;font:700 1.05rem var(--cond);letter-spacing:.02em;border-bottom:1px solid var(--rule)}

.hero{display:grid;grid-template-columns:1fr;gap:1.75rem;padding:2.5rem 0 3rem}
.tag{justify-self:start;background:var(--tag);color:var(--ink);padding:1.1rem 1.6rem 1.1rem 3rem;
  font:800 clamp(1.6rem,5vw,2.2rem)/1.05 var(--cond);
  clip-path:polygon(0 50%,1.5rem 0,100% 0,100% 100%,1.5rem 100%);
  transform:rotate(-2deg);position:relative}
.tag::before{content:"";position:absolute;left:1.55rem;top:50%;width:.8rem;height:.8rem;margin-top:-.4rem;border-radius:50%;background:var(--paper)}
h1{margin:0 0 1rem;font:800 clamp(2.3rem,7vw,4.2rem)/1.02 var(--cond);letter-spacing:-.005em;max-width:16em}
.lead{margin:0;max-width:38rem;font-size:1.2rem;color:var(--muted)}
@media(min-width:56rem){.hero{grid-template-columns:15rem 1fr;align-items:start;gap:3rem}.tag{margin-top:.6rem}}

main{padding-bottom:2rem}
.step{display:grid;grid-template-columns:1fr;gap:.25rem 2rem;padding:1.75rem 0;border-top:1px solid var(--rule)}
.step h2{margin:0;font:700 1.35rem/1.25 var(--cond);display:flex;flex-direction:column}
.time{font:800 2.3rem/1 var(--cond);color:var(--field);margin-bottom:.15rem}
.body{max-width:38rem}
.body p{margin:0 0 1rem}
@media(min-width:48rem){
  .step{grid-template-columns:15rem 1fr}
}

.lists{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:40rem){.lists{grid-template-columns:1fr 1fr}}
fieldset{margin:0;padding:0;border:0}
legend{padding:0;margin-bottom:.4rem;font:800 1.15rem var(--cond)}
label{display:flex;gap:.65rem;align-items:flex-start;padding:.3rem 0;cursor:pointer}
input[type=checkbox]{width:1.15rem;height:1.15rem;margin-top:.35rem;accent-color:var(--field);flex:none}
label:has(input:checked){color:var(--muted);text-decoration:line-through}

.foot{padding:1.5rem 0 2.5rem;border-top:1px solid var(--rule);color:var(--muted);font-size:.9rem}
.foot p{margin:0}
