/* Test Rounds (testrounds.com). One family, Archivo, with its width axis doing the display work. Palette: a cool mineral
   ground, deep teal ink, an opted-in green for the round's state, and ThreadFox orange only for the brand mark and today.
   The one loud element is the example round in the hero; everything else stays quiet. */
@font-face{font-family:"Archivo";src:url("fonts/archivo-var.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}

:root{
  --ground:#f1f3f1;--surface:#ffffff;--ink:#10262c;--ink-2:#1c3a42;--muted:#566a6f;--line:#d3dbd8;
  --signal:#1e9467;--signal-soft:#dcefe6;--fox:#e2541f;--on-ink:#e6eeeb;--on-ink-muted:#9fb4b0;
  --radius:14px;--measure:36rem;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.tr{margin:0;background:var(--ground);color:var(--ink);font-family:"Archivo",system-ui,sans-serif;font-size:17px;line-height:1.6;
  font-stretch:100%;font-weight:400;font-variant-numeric:lining-nums;text-rendering:optimizeLegibility}
.tr a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
.tr a.tr-button,.tr .tr-button{color:#fff;text-decoration:none}
.tr :focus-visible{outline:3px solid var(--signal);outline-offset:3px;border-radius:6px}
.tr-skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 12px;border-radius:8px;z-index:9}
.tr-skip:focus{left:12px}

/* bar */
.tr-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1160px;margin:0 auto;padding:18px 20px}
.tr-brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.tr-word{font-stretch:118%;font-weight:750;font-size:18px;letter-spacing:-.01em;white-space:nowrap}
.tr-by{font-size:13px;color:var(--muted);padding-left:10px;border-left:1px solid var(--line);white-space:nowrap}
@media (max-width:420px){.tr-by{display:none}}
.tr-barlink{font-weight:600;font-size:15px;text-decoration:none;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);white-space:nowrap}
.tr-barlink:hover{border-color:var(--ink)}

main{display:block;max-width:1160px;margin:0 auto;padding:0 20px}
.tr h2{font-stretch:112%;font-weight:750;font-size:clamp(1.65rem,4.6vw,2.35rem);line-height:1.08;letter-spacing:-.015em;margin:0 0 22px}
.tr h3{font-stretch:106%;font-weight:700;font-size:1.12rem;line-height:1.25;margin:0 0 6px}
.tr p{margin:0 0 14px}
.tr-fine{font-size:14px;color:var(--muted);max-width:var(--measure)}
section{padding:56px 0}

/* hero */
.tr-hero{display:grid;gap:36px;padding:28px 0 56px}
.tr h1{font-stretch:125%;font-weight:820;font-size:clamp(2.55rem,10.4vw,5.1rem);line-height:.96;letter-spacing:-.028em;margin:0 0 22px}
.tr h1 span{display:block}
.tr-lede{font-size:clamp(1.06rem,2.6vw,1.2rem);line-height:1.55;max-width:var(--measure);color:var(--ink-2)}
.tr-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:26px 0 16px}
.tr-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border:0;border-radius:12px;
  background:var(--ink);color:#fff;font:inherit;font-stretch:108%;font-weight:680;font-size:17px;text-decoration:none;cursor:pointer;
  box-shadow:0 1px 0 rgba(16,38,44,.25),0 10px 24px -14px rgba(16,38,44,.7)}
.tr-button:hover{background:var(--ink-2)}
.tr-quiet{font-weight:600}

/* the example round: the one loud thing */
.tr-round{margin:0;background:var(--ink);color:var(--on-ink);border-radius:24px;padding:22px 20px 18px;align-self:start;
  box-shadow:0 30px 60px -38px rgba(16,38,44,.9)}
.tr-round-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px}
.tr-round-app{font-stretch:112%;font-weight:700;font-size:18px}
.tr-round-track{font-size:13px;color:var(--on-ink-muted);border:1px solid rgba(230,238,235,.22);border-radius:999px;padding:3px 10px}
.tr-round-day{font-size:15px;color:var(--on-ink-muted);margin:0 0 10px}
.tr-round-day strong{font-stretch:125%;font-weight:800;font-size:34px;color:#fff;letter-spacing:-.02em;margin-right:6px}
.tr-days{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.tr-days li{position:relative;aspect-ratio:1;border-radius:8px;background:rgba(230,238,235,.08);border:1px solid rgba(230,238,235,.12);
  display:flex;align-items:flex-end;justify-content:flex-start;padding:4px 6px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--on-ink-muted)}
.tr-days li.done{background:var(--signal);border-color:var(--signal);color:#e9fff5;animation:tr-fill .42s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 75ms + 200ms)}
.tr-days li.today{border:2px solid var(--fox);color:#fff}
@keyframes tr-fill{from{background:rgba(230,238,235,.08);border-color:rgba(230,238,235,.12);color:var(--on-ink-muted)}}
.tr-round-sub{font-size:14px;color:var(--on-ink-muted);margin:0 0 14px}
.tr-testers{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:7px}
.tr-testers li{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:650;letter-spacing:.02em;
  background:rgba(230,238,235,.1);color:#fff;box-shadow:inset 0 0 0 2px var(--signal)}
.tr-testers li.replaced{box-shadow:inset 0 0 0 2px var(--fox)}
.tr-round figcaption{font-size:12px;color:var(--on-ink-muted);border-top:1px solid rgba(230,238,235,.14);padding-top:10px;margin-top:4px}

/* how a round runs: a real sequence, so numbered */
.tr-how{border-top:1px solid var(--line)}
.tr-steps{list-style:none;margin:0;padding:0;counter-reset:step;display:grid;gap:26px}
.tr-steps li{counter-increment:step;position:relative;padding-left:58px;max-width:var(--measure)}
.tr-steps li::before{content:counter(step);position:absolute;left:0;top:-2px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
  background:var(--surface);border:1px solid var(--line);font-stretch:118%;font-weight:750;font-size:17px}
.tr-steps p{color:var(--ink-2);margin:0}

/* prices: one ledger, two columns */
.tr-ledger{display:grid;background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;margin-bottom:14px}
.tr-price{padding:26px 24px}
.tr-price + .tr-price{border-top:1px solid var(--line)}
.tr-amount{font-stretch:125%;font-weight:820;font-size:clamp(2.6rem,9vw,3.4rem);line-height:1;letter-spacing:-.03em;margin:0 0 12px;font-variant-numeric:tabular-nums}
.tr-price p:last-child{color:var(--ink-2);margin:0;max-width:30rem}

/* the form */
.tr-join{display:grid;gap:22px}
.tr-join-intro p{color:var(--ink-2);max-width:var(--measure)}
.tr-form{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px 18px;display:grid;gap:18px;
  box-shadow:0 24px 50px -40px rgba(16,38,44,.6)}
.tr-tiers{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tr-tiers legend{font-weight:650;font-size:15px;margin-bottom:8px;padding:0}
.tr-tier{position:relative;display:grid;gap:2px;padding:14px 14px 13px;border:1.5px solid var(--line);border-radius:14px;cursor:pointer;background:var(--ground)}
.tr-tier input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.tr-tier-amount{font-stretch:125%;font-weight:800;font-size:26px;line-height:1.1;letter-spacing:-.02em}
.tr-tier-name{font-size:14px;line-height:1.35;color:var(--muted)}
.tr-tier:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.tr-tier:has(input:checked) .tr-tier-name{color:var(--on-ink)}
.tr-tier:has(input:focus-visible){outline:3px solid var(--signal);outline-offset:3px}
.tr-field{display:grid;gap:7px}
.tr-field label{font-weight:650;font-size:15px}
.tr-field input{width:100%;min-height:52px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fbfcfb;color:var(--ink);font:inherit;font-size:16px}
.tr-field input::placeholder{color:#8a9a9d}
.tr-field input:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 4px var(--signal-soft)}
.tr-hint{font-size:13.5px;line-height:1.45;color:var(--muted);margin:0}
.tr-form:has(input[value="full"]:checked) .tr-tester{display:none}
.tr-consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--ink-2)}
.tr-consent input{width:22px;height:22px;margin:1px 0 0;flex:none;accent-color:var(--ink)}
.tr-submit{width:100%}
.tr-error{background:#fdeee8;border:1px solid #f1c3b1;color:#7a2a0e;border-radius:12px;padding:12px 14px;font-weight:600;margin:0}
.tr-note{background:var(--signal-soft);border-radius:12px;padding:10px 14px;margin:0}

/* questions and terms */
.tr-faq details{border-top:1px solid var(--line);max-width:46rem}
.tr-faq details:last-of-type{border-bottom:1px solid var(--line)}
.tr-faq summary{list-style:none;cursor:pointer;padding:18px 40px 18px 0;position:relative;font-weight:650;font-size:17px}
.tr-faq summary::-webkit-details-marker{display:none}
.tr-faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;margin-top:-8px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);
  transform:rotate(45deg);transition:transform .2s ease}
.tr-faq details[open] summary::after{transform:rotate(225deg);margin-top:-2px}
.tr-faq details p{color:var(--ink-2);padding-bottom:16px;max-width:var(--measure)}
.tr-terms{border-top:1px solid var(--line)}
.tr-terms h2{font-size:1.35rem}
.tr-terms ul{padding-left:18px;max-width:46rem;font-size:14.5px;color:var(--ink-2)}
.tr-terms li{margin-bottom:8px}

/* footer */
.tr-foot{max-width:1160px;margin:0 auto;padding:28px 20px 44px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.tr-foot p{margin:0 0 8px}
.tr-foot a{margin-right:18px}
.tr-legal{font-size:12.5px}

@media (min-width:860px){
  body.tr{font-size:18px}
  .tr-bar{padding:24px 32px}
  main{padding:0 32px}
  section{padding:84px 0}
  .tr-hero{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:56px;align-items:center;padding:44px 0 84px}
  .tr-round{padding:28px 26px 22px}
  .tr-days{grid-template-columns:repeat(7,1fr);gap:8px}
  .tr-steps{grid-template-columns:repeat(4,1fr);gap:28px}
  .tr-steps li{padding-left:0;padding-top:58px}
  .tr-steps li::after{content:"";position:absolute;top:19px;left:48px;right:-20px;height:1px;background:var(--line)}
  .tr-steps li:last-child::after{display:none}
  .tr-ledger{grid-template-columns:1fr 1fr}
  .tr-price{padding:36px 34px}
  .tr-price + .tr-price{border-top:0;border-left:1px solid var(--line)}
  .tr-join{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
  .tr-form{padding:30px 30px 26px}
  .tr-foot{padding:32px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .tr-days li.done{animation:none}
  .tr-faq summary::after{transition:none}
}

/* the member and check-in pages: one quiet panel */
.tr-panel{max-width:40rem;margin:24px 0 64px;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:28px 22px}
.tr-panel h2{font-size:clamp(1.5rem,4.4vw,2rem)}
.tr-panel-meta{font-size:14px;color:var(--muted)}
.tr-panel-sub{color:var(--ink-2)}
.tr-panel-steps{padding-left:20px;color:var(--ink-2)}
.tr-panel-steps li{margin-bottom:8px}
.tr-panel ul{padding-left:20px}
.tr-panel form{margin-top:18px}
.tr-linkbutton{font:inherit;font-weight:650;color:var(--ink);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* one price: the amount, then what it covers */
.tr-ledger-one .tr-price + .tr-price h3{margin-bottom:12px}
.tr-covers{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tr-covers li{position:relative;padding-left:26px;color:var(--ink-2);line-height:1.45}
.tr-covers li::before{content:"";position:absolute;left:2px;top:.42em;width:12px;height:7px;border-left:2px solid var(--signal);border-bottom:2px solid var(--signal);transform:rotate(-45deg)}

/* guides */
.tr-guide{max-width:44rem;padding:8px 0 0}
.tr .tr-guide section{padding:0;margin-top:48px}
.tr-crumb{font-size:14px;margin:0 0 14px}
.tr-crumb a{color:var(--muted);font-weight:600}
.tr .tr-guide h1{font-stretch:112%;font-weight:780;font-size:clamp(2rem,6.6vw,3.1rem);line-height:1.05;letter-spacing:-.022em;margin:0 0 14px}
.tr .tr-guide h2{font-size:clamp(1.4rem,4vw,1.8rem);line-height:1.15;margin:0 0 14px}
.tr .tr-guide h3{font-size:1.05rem;margin:24px 0 8px}
.tr-guide-meta{font-size:14px;color:var(--muted)}
.tr-guide-lede{font-size:clamp(1.06rem,2.6vw,1.2rem);line-height:1.55;color:var(--ink-2)}
.tr-guide p,.tr-guide li{color:var(--ink-2)}
.tr-guide strong{color:var(--ink);font-weight:650}
.tr-toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px 14px;margin:28px 0 0}
.tr .tr-toc p{font-size:14px;font-weight:650;color:var(--muted);margin:0 0 6px}
.tr-toc ol{margin:0;padding-left:22px;font-size:15.5px}
.tr-toc li{margin:4px 0}
.tr-toc a{text-decoration:none}
.tr-toc a:hover{text-decoration:underline}
.tr-points,.tr-steps-list,.tr-asks{margin:0 0 16px;padding-left:22px}
.tr-points li,.tr-steps-list li,.tr-asks li{margin-bottom:10px;padding-left:2px}
.tr-steps-list li::marker,.tr-asks li::marker{font-weight:700;color:var(--ink)}
.tr-quote{margin:0 0 18px;padding:16px 20px;background:var(--surface);border-left:4px solid var(--signal);border-radius:0 var(--radius) var(--radius) 0}
.tr .tr-quote p{font-size:1.05rem;line-height:1.5;color:var(--ink);margin:0 0 6px}
.tr-quote cite{font-style:normal;font-size:13.5px;color:var(--muted)}
.tr-example{margin:20px 0 0;padding:18px 20px 6px;background:var(--surface);border:1px dashed #b9c6c2;border-radius:var(--radius)}
.tr .tr-example-label{font-size:13.5px;font-weight:650;color:var(--muted);margin-bottom:10px}
.tr-example p{font-size:15.5px}
.tr-checks{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
.tr-checks li{position:relative;padding-left:26px;line-height:1.5}
.tr-checks li::before{content:"";position:absolute;left:2px;top:.45em;width:12px;height:7px;border-left:2px solid var(--signal);border-bottom:2px solid var(--signal);transform:rotate(-45deg)}
.tr-tradeoffs{display:grid;gap:12px;margin:4px 0 16px}
.tr-tradeoffs>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px 8px}
.tr .tr-guide .tr-tradeoffs h3{font-size:15px;margin:0 0 8px}
.tr-tradeoffs ul{margin:0;padding-left:18px;font-size:15.5px;line-height:1.5}
.tr-tradeoffs li{margin-bottom:8px}
.tr-table-wrap{margin:0 0 16px}
.tr-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:15px;line-height:1.45}
.tr-table th,.tr-table td{text-align:left;vertical-align:top;padding:12px 14px;border-top:1px solid var(--line)}
.tr-table thead th{border-top:0;background:var(--ground);font-size:13.5px;font-weight:650;color:var(--muted)}
.tr-table tbody th{font-weight:650;color:var(--ink)}
.tr-table td{color:var(--ink-2)}
@media (max-width:639px){
  .tr-table thead{position:absolute;left:-9999px}
  .tr-table,.tr-table tbody,.tr-table tr,.tr-table th,.tr-table td{display:block}
  .tr-table tr{padding:12px 16px;border-top:1px solid var(--line)}
  .tr-table tbody tr:first-child{border-top:0}
  .tr-table th,.tr-table td{padding:2px 0;border-top:0}
  .tr-table tbody th{font-size:16px;margin-bottom:4px}
  .tr-table td::before{content:attr(data-label) ": ";font-weight:600;color:var(--muted)}
}
.tr-cta{margin:56px 0 0;padding:26px 22px;background:var(--ink);color:var(--on-ink);border-radius:22px;box-shadow:0 30px 60px -42px rgba(16,38,44,.9)}
.tr .tr-guide .tr-cta h2{color:#fff;font-size:clamp(1.35rem,4vw,1.7rem)}
.tr .tr-guide .tr-cta p{color:var(--on-ink)}
.tr .tr-guide .tr-cta .tr-fine{color:var(--on-ink-muted)}
.tr .tr-cta a.tr-button{background:#fff;color:var(--ink);box-shadow:none;margin-top:4px}
.tr .tr-cta a.tr-button:hover{background:var(--on-ink)}
.tr-sources{margin-top:32px;padding-top:16px;border-top:1px solid var(--line)}
.tr .tr-sources p{font-size:14px;line-height:1.55;color:var(--muted)}
.tr-more{max-width:44rem;margin-top:48px;padding:40px 0 64px;border-top:1px solid var(--line)}
.tr .tr-more h2{font-size:1.35rem;margin:0 0 16px}
.tr-more-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tr-more-list li{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.tr-more-list a{font-stretch:106%;font-weight:700;font-size:1.06rem;line-height:1.3;text-decoration:none}
.tr-more-list a:hover{text-decoration:underline}
.tr .tr-more-list p{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--muted)}
.tr-index-list{margin:28px 0 0}
.tr-guide-index{padding-bottom:64px}
@media (min-width:640px){
  .tr-tradeoffs{grid-template-columns:1fr 1fr}
}
@media (min-width:860px){
  .tr .tr-guide section{margin-top:56px}
  .tr-cta{padding:32px 32px 30px}
}
@media (min-width:1120px){
  .tr-guide{max-width:none;display:grid;grid-template-columns:minmax(0,44rem) minmax(0,15rem);column-gap:72px}
  .tr-guide>*{grid-column:1}
  .tr-guide>.tr-toc{grid-column:2;grid-row:1 / span 40;align-self:start;position:sticky;top:28px;margin:6px 0 0}
}
