:root{
  --paper:#000;
  --fg:#fff;
  --dim:#8f8f8f;
  --maxw:1160px;
  --pad:clamp(18px,4vw,48px);
  --line:2px;
}

*{box-sizing:border-box}

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:72px;
}

body{
  margin:0;
  background:var(--paper);
  color:var(--fg);
  font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  font-size:16px;
  line-height:1.55;
  letter-spacing:.01em;
}

a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
img,iframe{max-width:100%}
h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.02em;line-height:1.02}

.bar{
  position:sticky;
  top:0;
  z-index:20;
  display:flex;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
  padding:14px var(--pad);
  background:var(--paper);
  border-bottom:var(--line) solid currentColor;
}
.bar__mark{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  font-size:1.25rem;
  letter-spacing:.12em;
}
.bar__mark:hover{text-decoration:none}
.mark__tri{
  width:17px;
  height:17px;
  fill:currentColor;
  transform-box:fill-box;
  transform-origin:center;
  animation:spin 9s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
.bar__by{
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--dim);
}
.bar__status{
  font-size:.72rem;
  letter-spacing:.16em;
  color:var(--dim);
  border:1px solid currentColor;
  padding:3px 8px;
}
.bar__nav{
  margin-left:auto;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  font-size:.78rem;
  letter-spacing:.12em;
}
.bar__nav a:hover{text-decoration:none;background:var(--fg);color:var(--paper)}

.hero{
  padding:clamp(40px,7vw,96px) var(--pad) clamp(28px,4.5vw,56px);
  border-bottom:var(--line) solid currentColor;
}
.hero__meta{
  display:flex;
  justify-content:space-between;
  font-size:.72rem;
  letter-spacing:.18em;
  color:var(--dim);
  margin-bottom:clamp(18px,3.5vw,44px);
}
.hero__title{
  font-size:clamp(3rem,12vw,7rem);
  line-height:.84;
  letter-spacing:-.04em;
  margin-left:-.03em;
}
.hero__full{
  margin:12px 0 0;
  font-size:clamp(.82rem,1.9vw,1.1rem);
  text-transform:uppercase;
  letter-spacing:.3em;
  color:var(--dim);
}
.hero__lede{
  max-width:60ch;
  margin:clamp(20px,3.5vw,40px) 0 0;
  font-size:clamp(1rem,1.5vw,1.12rem);
}
.hero__cta{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:clamp(20px,3vw,32px);
}
.hero__fine{
  margin:16px 0 0;
  font-size:.8rem;
  letter-spacing:.06em;
  color:var(--dim);
}
.hero__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:clamp(24px,3vw,48px);
}
.hero__main{min-width:0}
.hero__fig{min-width:0}
.herotri{
  margin:0;
  text-align:center;
  text-transform:uppercase;
  font-weight:800;
  line-height:1.18;
  letter-spacing:-.01em;
  font-size:clamp(1rem,2.6vw,1.9rem);
}
.herotri span{display:block}
.herotri .dim{color:var(--dim)}

.btn{
  display:inline-block;
  border:var(--line) solid currentColor;
  padding:14px 26px;
  text-transform:uppercase;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.14em;
}
.btn:hover{text-decoration:none;background:var(--fg);color:var(--paper)}
.btn--ghost{color:var(--fg)}
.btn--ghost:hover{background:transparent;color:var(--fg)}

.band{
  padding:clamp(36px,5vw,72px) var(--pad);
  border-bottom:var(--line) solid currentColor;
}
.invert{
  background:var(--fg);
  color:var(--paper);
}
.band__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.sec{
  font-size:.76rem;
  border:var(--line) solid currentColor;
  padding:4px 10px;
  letter-spacing:.14em;
}
.band__head h2{
  font-size:clamp(1.6rem,4vw,2.6rem);
  text-transform:uppercase;
}
.band__lede{
  max-width:64ch;
  margin:clamp(16px,2.5vw,26px) 0 clamp(22px,3.5vw,40px);
  font-size:clamp(.98rem,1.4vw,1.08rem);
}

.cards{
  display:grid;
  border-top:var(--line) solid currentColor;
  border-left:var(--line) solid currentColor;
}
.cards--3{grid-template-columns:repeat(3,1fr)}
.card{
  border-right:var(--line) solid currentColor;
  border-bottom:var(--line) solid currentColor;
  padding:clamp(20px,3vw,34px);
}
.card h3{
  font-size:clamp(1.1rem,2vw,1.45rem);
  text-transform:uppercase;
  margin-bottom:12px;
}
.card p{margin:0;color:var(--dim)}
.invert .card p{color:var(--paper)}

.fig{
  max-width:480px;
  margin:clamp(6px,2vw,18px) auto 0;
}
.fig svg{display:block;width:100%;height:auto}
.fig__tri{fill:var(--paper);stroke:var(--fg);stroke-width:3;stroke-linejoin:miter}
.fig__word{
  font-family:Impact,"Arial Narrow",sans-serif;
  font-weight:900;
  font-size:192px;
  fill:var(--fg);
  text-anchor:middle;
  dominant-baseline:central;
}
.fig__word--b{font-size:176px}
.fig__div{fill:none;stroke:var(--fg);stroke-width:8}
.fig__hub{fill:var(--fg);stroke:var(--fg);stroke-width:3}
.fig__hub-t{fill:var(--paper);text-anchor:middle;dominant-baseline:central;font:900 40px Arial,Helvetica,sans-serif;letter-spacing:-1px}
.fig__hub-s{fill:var(--paper);text-anchor:middle;dominant-baseline:central;font:700 18px Arial,Helvetica,sans-serif;letter-spacing:1.6px}
.fig__quote{
  margin:clamp(30px,4.5vw,54px) auto 0;
  text-align:center;
  font-size:clamp(.9rem,1.75vw,1.3rem);
  font-weight:800;
  letter-spacing:-.01em;
  line-height:1.25;
}
@media (min-width:821px){.fig__quote{white-space:nowrap}}

.tags{
  list-style:none;
  margin:0 0 clamp(24px,4vw,40px);
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.tags li{
  border:var(--line) solid currentColor;
  padding:10px 16px;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:700;
}
.note{
  max-width:70ch;
  margin:0 0 18px;
  font-size:.95rem;
}
.note strong{text-decoration:underline;text-underline-offset:4px}

.split{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border-top:var(--line) solid currentColor;
  border-left:var(--line) solid currentColor;
}
.split__col{
  border-right:var(--line) solid currentColor;
  border-bottom:var(--line) solid currentColor;
  padding:clamp(20px,3vw,34px);
}
.split__col h3{font-size:1.05rem;text-transform:uppercase;margin-bottom:10px}
.split__col p{margin:0;color:var(--dim)}

.rubric{
  width:100%;
  border-collapse:collapse;
  border:var(--line) solid currentColor;
  font-size:clamp(.85rem,1.4vw,1rem);
  margin-bottom:clamp(20px,3vw,34px);
}
.rubric th,
.rubric td{
  border:var(--line) solid currentColor;
  padding:14px 16px;
  text-align:left;
}
.rubric th{
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.8rem;
}
.rubric td:first-child{font-weight:700;white-space:nowrap}

.faq{
  border-top:var(--line) solid currentColor;
}
.faq details{
  border:var(--line) solid currentColor;
  border-top:0;
}
.faq summary{
  cursor:pointer;
  padding:18px 20px;
  font-weight:700;
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:800;font-size:1.2rem}
.faq details[open] summary::after{content:"\2212"}
.faq details[open] summary{background:var(--fg);color:var(--paper)}
.faq p{
  margin:0;
  padding:4px 20px 22px;
  max-width:72ch;
  color:var(--dim);
}

.band--register{background:var(--paper);color:var(--fg)}
.register{
  border:var(--line) solid currentColor;
}
.form-embed{
  display:block;
  width:100%;
  height:min(78vh,860px);
  border:0;
  background:var(--fg);
}
.fallback{
  margin:0;
  padding:16px 20px;
  border-top:var(--line) solid currentColor;
  font-size:.9rem;
}
.fallback a{text-decoration:underline}
.foot{
  display:flex;
  flex-wrap:wrap;
  gap:28px;
  justify-content:space-between;
  padding:clamp(36px,6vw,64px) var(--pad);
}
.foot__col{
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:.82rem;
  color:var(--dim);
  min-width:180px;
}
.foot__col p{margin:0}
.foot__mark{
  font-size:1.4rem;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--fg);
}
.foot__col--links a{text-decoration:underline}
.foot__col--links span{color:var(--fg);font-weight:700}
.foot span:not(.foot__mark){letter-spacing:.1em}

.foot__icons{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:4px;
}
.icon-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border:var(--line) solid currentColor;
  color:var(--fg);
}
.icon-link:hover{
  background:var(--fg);
  color:var(--paper);
  text-decoration:none;
}
.icon-link svg{
  width:20px;
  height:20px;
  fill:currentColor;
  stroke:none;
}
.icon-link svg.icon-line{
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:square;
  stroke-linejoin:miter;
}

@media (max-width:820px){
  .cards--3,
  .split{grid-template-columns:1fr}
  .bar__nav{width:100%;margin-left:0}
  .fig{max-width:min(100%,420px)}
  .hero__grid{grid-template-columns:1fr}
  .hero__fig{max-width:460px;margin:clamp(26px,6vw,44px) auto 0}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .mark__tri{animation:none}
}
