:root{
  --baize:#0E2A22;
  --baize-deep:#071612;
  --felt:#15392E;
  --brass:#C8A253;
  --brass-lite:#EBD6A0;
  --ivory:#F7F3E8;
  --paper:#FFFDF7;
  --ink:#17211D;
  --ink-soft:#4A5A53;
  --claret:#8A2733;
  --rule:#DED5C0;
  --display:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  --shell:1120px;
}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font-family:var(--body);
  font-size:17px;
  line-height:1.66;
  -webkit-font-smoothing:antialiased;
}

.wrap{width:100%;max-width:var(--shell);margin:0 auto;padding:0 18px}

.skip{
  position:absolute;left:-9999px;top:0;z-index:99;
  background:var(--brass);color:var(--baize-deep);
  padding:10px 16px;font-weight:700;border-radius:0 0 6px 0;
}
.skip:focus{left:0}

a{color:var(--claret);text-decoration:none}
a:hover{text-decoration:underline}

:focus-visible{outline:3px solid var(--brass);outline-offset:2px}

.site-head{
  background:var(--baize-deep);
  border-bottom:2px solid var(--brass);
}
.head-inner{
  display:flex;flex-direction:column;gap:14px;
  align-items:center;padding-top:16px;padding-bottom:16px;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand:hover{text-decoration:none}
.brand-pip{
  width:42px;height:42px;flex:0 0 42px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,var(--brass-lite),var(--brass));
  border-radius:9px;
}
.brand-pip svg{width:26px;height:26px;fill:var(--baize-deep)}
.brand-text{display:flex;flex-direction:column;line-height:1.15}
.brand-name{
  font-family:var(--display);
  font-size:22px;font-weight:700;color:var(--ivory);
  letter-spacing:.01em;
}
.brand-sub{
  font-family:var(--mono);
  font-size:10.5px;text-transform:uppercase;letter-spacing:.16em;
  color:var(--brass);margin-top:3px;
}
.head-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px}
.head-nav a{
  color:var(--ivory);opacity:.82;
  font-size:13px;text-transform:uppercase;letter-spacing:.11em;font-weight:600;
}
.head-nav a:hover{opacity:1;color:var(--brass-lite);text-decoration:none}

.promo{
  background:
    repeating-linear-gradient(135deg,rgba(255,255,255,.028) 0 2px,transparent 2px 7px),
    linear-gradient(160deg,var(--felt),var(--baize) 55%,var(--baize-deep));
  border-top:2px solid var(--brass);
  border-bottom:2px solid var(--brass);
  color:var(--ivory);
}
.promo-inner{
  display:flex;flex-direction:column;gap:18px;
  align-items:flex-start;padding-top:26px;padding-bottom:26px;
}
.promo-eyebrow{
  margin:0 0 8px;
  font-family:var(--mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--brass);
}
.promo-title{
  margin:0;
  font-family:var(--display);
  font-size:26px;line-height:1.22;font-weight:700;
}
.promo-title strong{color:var(--brass-lite)}
.promo-note{
  margin:10px 0 0;font-size:13.5px;color:rgba(247,243,232,.7);
}

.cta{
  display:inline-block;border:0;cursor:pointer;
  font-family:var(--body);font-weight:800;
  text-transform:uppercase;letter-spacing:.07em;
  color:var(--baize-deep);
  background:linear-gradient(175deg,var(--brass-lite),var(--brass) 62%,#AC8536);
  border-radius:7px;
  box-shadow:0 3px 0 #7C5F22,0 8px 18px rgba(0,0,0,.28);
  transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;
}
.cta:hover{filter:brightness(1.06)}
.cta:active{transform:translateY(3px);box-shadow:0 0 0 #7C5F22,0 4px 10px rgba(0,0,0,.3)}
.cta-lg{width:100%;padding:16px 26px;font-size:15px}
.cta-sm{padding:11px 20px;font-size:12.5px}

.article{padding-top:34px;padding-bottom:10px}

h1{
  font-family:var(--display);
  font-size:32px;line-height:1.14;font-weight:700;
  margin:0 0 6px;letter-spacing:-.01em;
}
h1::after{
  content:"";display:block;width:64px;height:3px;
  background:var(--brass);margin-top:16px;
}
h2{
  font-family:var(--display);
  font-size:25px;line-height:1.24;font-weight:700;
  margin:46px 0 14px;padding-top:22px;
  border-top:1px solid var(--rule);
}
h3{
  font-family:var(--display);
  font-size:19.5px;line-height:1.3;font-weight:700;
  margin:30px 0 10px;color:var(--felt);
}
p{margin:0 0 16px}

.lede{
  font-size:19px;line-height:1.6;color:var(--ink);
  border-left:3px solid var(--brass);
  padding-left:16px;margin-bottom:22px;
}

.stat-row{
  display:grid;grid-template-columns:repeat(2,1fr);gap:1px;
  background:var(--rule);border:1px solid var(--rule);
  margin:26px 0 30px;
}
.stat{
  background:var(--paper);
  padding:16px 12px;text-align:center;
}
.stat-num{
  display:block;font-family:var(--display);
  font-size:23px;font-weight:700;color:var(--felt);
}
.stat-lab{
  display:block;margin-top:4px;
  font-family:var(--mono);font-size:10.5px;
  text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);
}

.callout{
  background:var(--paper);
  border:1px solid var(--rule);
  border-left:4px solid var(--claret);
  padding:18px;margin:26px 0;
}
.callout p{margin:0}
.callout p + p{margin-top:8px;font-size:15.5px;color:var(--ink-soft)}
.callout-label{
  font-family:var(--mono);font-size:11px;letter-spacing:.15em;
  text-transform:uppercase;color:var(--claret);font-weight:700;
}

.table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin:22px 0 26px;
  border:1px solid var(--rule);
  background:var(--paper);
}
table{
  width:100%;min-width:560px;
  border-collapse:collapse;
  font-size:15px;
}
caption{
  caption-side:top;text-align:left;
  padding:13px 14px;
  font-family:var(--mono);font-size:11px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--ink-soft);
  border-bottom:1px solid var(--rule);
}
thead th{
  background:var(--baize);color:var(--ivory);
  text-align:left;font-weight:700;
  font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  padding:12px 14px;white-space:nowrap;
}
tbody td{
  padding:12px 14px;
  border-top:1px solid var(--rule);
  vertical-align:top;
}
tbody tr:nth-child(even) td{background:rgba(14,42,34,.035)}
tbody td:first-child{font-weight:600}
.tot{background:rgba(200,162,83,.2) !important;font-weight:700}

.steps{list-style:none;margin:22px 0 28px;padding:0;counter-reset:none}
.steps li{
  display:flex;gap:14px;align-items:flex-start;
  padding:14px 0;border-top:1px solid var(--rule);
}
.steps li:last-child{border-bottom:1px solid var(--rule)}
.step-n{
  flex:0 0 30px;width:30px;height:30px;
  display:flex;align-items:center;justify-content:center;
  background:var(--felt);color:var(--brass-lite);
  font-family:var(--mono);font-size:13px;font-weight:700;
  border-radius:50%;
}

.tips{margin:22px 0 28px;padding:0;list-style:none}
.tips li{
  position:relative;padding:11px 0 11px 26px;
  border-bottom:1px solid var(--rule);
}
.tips li::before{
  content:"";position:absolute;left:2px;top:20px;
  width:9px;height:9px;background:var(--brass);
  transform:rotate(45deg);
}

.cards{
  display:grid;grid-template-columns:1fr;gap:18px;
  margin:24px 0 30px;
}
.card{
  background:var(--paper);
  border:1px solid var(--rule);
  border-top:4px solid var(--felt);
  padding:20px 18px 6px;
}
.card-bad{border-top-color:var(--claret)}
.card h3{margin:6px 0 10px;font-size:19px;color:var(--ink)}
.card p{font-size:15.5px;line-height:1.62}
.card-tag{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;
  text-transform:uppercase;font-weight:700;color:var(--felt);margin:0;
}
.card-bad .card-tag{color:var(--claret)}

.faq{
  border:1px solid var(--rule);
  background:var(--paper);
  margin:24px 0 30px;
}
.faq-item + .faq-item{border-top:1px solid var(--rule)}
.faq-item input{position:absolute;opacity:0;width:0;height:0}
.faq-item label{
  display:block;position:relative;
  padding:16px 52px 16px 18px;
  font-family:var(--display);
  font-size:17.5px;font-weight:700;line-height:1.36;
  cursor:pointer;color:var(--felt);
}
.faq-item label:hover{background:rgba(14,42,34,.04)}
.faq-mark{
  position:absolute;right:16px;top:50%;
  width:22px;height:22px;margin-top:-11px;
  border:1px solid var(--brass);border-radius:50%;
}
.faq-mark::before,.faq-mark::after{
  content:"";position:absolute;background:var(--felt);
  left:50%;top:50%;
}
.faq-mark::before{width:10px;height:2px;margin:-1px 0 0 -5px}
.faq-mark::after{width:2px;height:10px;margin:-5px 0 0 -1px;transition:transform .2s ease}
.faq-item input:checked ~ label .faq-mark{background:var(--brass)}
.faq-item input:checked ~ label .faq-mark::after{transform:scaleY(0)}
.faq-body{
  max-height:0;overflow:hidden;
  transition:max-height .3s ease;
}
.faq-item input:checked ~ .faq-body{max-height:620px}
.faq-body p{
  margin:0;padding:0 18px 18px;
  font-size:15.5px;color:var(--ink-soft);
}
.faq-item input:focus-visible ~ label{outline:3px solid var(--brass);outline-offset:-3px}

.rg-box{
  background:var(--baize);color:var(--ivory);
  border-left:4px solid var(--claret);
  padding:20px 18px;margin:26px 0 34px;
}
.rg-box p{margin:0;font-size:15.5px;color:rgba(247,243,232,.86)}
.rg-title{
  font-family:var(--mono);font-size:12px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--brass) !important;
  font-weight:700;margin-bottom:8px !important;
}

.site-foot{
  background:var(--baize-deep);color:rgba(247,243,232,.76);
  border-top:2px solid var(--brass);
  font-size:14.5px;
}
.foot-inner{
  display:grid;grid-template-columns:1fr;gap:26px;
  padding-top:32px;padding-bottom:26px;
}
.foot-col{display:flex;flex-direction:column;gap:7px}
.foot-col p{margin:0;line-height:1.6}
.foot-name{
  font-family:var(--display);font-size:20px;font-weight:700;
  color:var(--ivory);margin-bottom:4px;
}
.foot-h{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--brass);margin-bottom:4px;
}
.foot-col a{color:rgba(247,243,232,.76)}
.foot-col a:hover{color:var(--brass-lite)}
.foot-rg{font-size:13.5px;color:rgba(247,243,232,.6)}
.foot-base{
  display:flex;flex-direction:column;gap:14px;align-items:center;
  border-top:1px solid rgba(200,162,83,.28);
  padding-top:20px;padding-bottom:26px;text-align:center;
}
.foot-base p{margin:0;font-size:13.5px;color:rgba(247,243,232,.6)}

@media (min-width:600px){
  .stat-row{grid-template-columns:repeat(4,1fr)}
  h1{font-size:40px}
  h2{font-size:28px}
  .promo-title{font-size:30px}
  .cta-lg{width:auto}
  .foot-base{flex-direction:row;justify-content:space-between;text-align:left}
}

@media (min-width:820px){
  body{font-size:17.5px}
  .wrap{padding:0 28px}
  .head-inner{flex-direction:row;justify-content:space-between;padding-top:18px;padding-bottom:18px}
  .head-nav{gap:26px}
  .promo-inner{flex-direction:row;align-items:center;justify-content:space-between;gap:32px;padding-top:30px;padding-bottom:30px}
  .promo-copy{flex:1 1 auto}
  .cta-lg{flex:0 0 auto;padding:18px 34px;font-size:16px}
  .article{padding-top:44px}
  h1{font-size:46px}
  .lede{font-size:20px}
  .cards{grid-template-columns:repeat(2,1fr);gap:22px}
  .foot-inner{grid-template-columns:2fr 1fr 1.4fr;gap:40px}
  .card{padding:24px 22px 8px}
  .faq-item label{font-size:18.5px;padding:18px 56px 18px 22px}
  .faq-body p{padding:0 22px 20px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important;animation:none !important}
}
