:root{
  --forest:#1f2e17;
  --olive:#a6a86b;
  --safety:#f2c200;
  --cream:#f5f1e6;
  --paper:#fffdf3;
  --ink:#171912;
  --red:#8f1e1e;
  --wood:#6b4423;
  --comic:"Comic Sans MS","Chalkboard SE","Comic Neue",cursive;
  --times:"Times New Roman",Times,serif;
  --mono:"Courier New",Courier,monospace;
}
*{box-sizing:border-box}
html{background:var(--wood)}
body{
  margin:0;
  padding:24px 12px 60px;
  color:var(--ink);
  font:17px/1.6 var(--times);
  background:
    repeating-linear-gradient(90deg,rgba(0,0,0,.22) 0 2px,transparent 2px 8px),
    repeating-linear-gradient(90deg,#694321 0 74px,#3b2413 74px 79px,#76502d 79px 148px);
}
a{color:#0000ee}
a:visited{color:#551a8b}
.paper{
  width:min(860px,100%);
  margin:auto;
  padding:34px clamp(18px,5vw,60px) 42px;
  background:var(--paper);
  border:7px outset #d8d2bd;
  box-shadow:8px 8px 0 rgba(0,0,0,.45);
}
.mast{text-align:center;border-bottom:5px double var(--forest);padding-bottom:20px;margin-bottom:24px}
.mast img{width:105px;height:auto}
.mast h1{font:700 clamp(30px,6vw,50px)/1.05 var(--comic);color:var(--forest);margin:8px 0}
.mast .sub{font:700 16px/1.4 var(--mono);letter-spacing:1px;text-transform:uppercase}
.notice{border:4px double var(--red);background:#fff4f4;padding:14px 18px;margin:20px 0}
.notice strong{color:var(--red)}
h2{font:700 27px/1.2 var(--comic);color:var(--forest);border-bottom:2px solid var(--olive);padding-bottom:5px;margin-top:30px}
h3{font:700 19px/1.3 var(--comic);color:var(--red);margin-top:24px}
p,li{max-width:72ch}
li{margin:.35em 0}
.article{counter-increment:article}
.article h2::before{content:"ARTICLE " counter(article) " — "}
main{counter-reset:article}
.stamp{display:inline-block;border:5px double var(--red);color:var(--red);padding:7px 12px;font:700 15px var(--mono);letter-spacing:2px;text-transform:uppercase;transform:rotate(-2deg);margin:8px}
.rulebox{border:3px solid var(--forest);background:#eef0dd;padding:12px 18px;margin:18px 0}
.form{border:2px dashed #777;background:#fff;padding:16px;margin:16px 0;font-family:var(--mono);font-size:14px}
.line{display:block;border-bottom:1px solid #333;height:28px}
.actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:24px 0}
.button{font:700 15px var(--comic);color:#000!important;text-decoration:none;background:#d4d0c8;border:3px outset #d4d0c8;padding:8px 13px}
.button:active{border-style:inset}
footer{border-top:2px solid #999;margin-top:34px;padding-top:18px;text-align:center;font-size:13px;color:#555}
footer img{width:150px;height:auto}
@media(max-width:600px){body{padding:0}.paper{border-width:0 0 6px;padding:22px 16px 34px}.mast h1{font-size:32px}}
@media print{
  html,body{background:#fff;padding:0}
  .paper{width:auto;border:0;box-shadow:none;padding:0}
  .actions{display:none}
  a{color:#000;text-decoration:none}
  .article{break-inside:avoid}
}
