
*{box-sizing:border-box}
body{margin:0}
.tf{--tf-accent:#21574d;--tf-paper:#f8f7f3;--tf-ink:#202a29;background:var(--tf-paper);color:var(--tf-ink);font:17px/1.75 system-ui,sans-serif;min-height:100vh;overflow-wrap:anywhere}
.tf :where(header,main,footer,article,aside,section,div){min-width:0}
.tf :where(header,main,footer){max-width:none;margin:0;padding:0;border:0}
.tf section{margin:0}
.tf a{color:var(--tf-accent);text-underline-offset:.2em}
.tf a:hover{text-decoration-thickness:2px}
.tf a:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.tf nav{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin:0}
.tf nav a{font:600 .875rem/1.5 system-ui,sans-serif;text-decoration:none;padding:.4rem 0}
.tf h1{font-size:clamp(2rem,4.8vw,4rem);line-height:1.08;letter-spacing:-.04em;margin:0 0 1.25rem;text-wrap:balance;text-align:start}
.tf h2{font-size:clamp(1.4rem,2.3vw,2rem);line-height:1.25;letter-spacing:-.025em;margin:0 0 1rem}
.tf h3{line-height:1.35}
.tf p{margin:0 0 1.2rem}
.tf img,.tf video,.tf svg{max-width:100%;height:auto}
.tf img{display:block;object-fit:cover}
.tf table{display:block;max-width:100%;width:max-content;overflow-x:auto;border-collapse:collapse;font-size:.9em;margin:1.5rem 0}
.tf th,.tf td{padding:.75rem 1rem;border:1px solid #86928b66;text-align:start;vertical-align:top;min-width:7rem}
.tf th{background:#86928b15}
.tf caption{text-align:start;font-weight:700;margin-bottom:.5rem}
.tf pre{max-width:100%;overflow-x:auto}
.tf .tf-brand a{font-weight:750;font-size:1.25rem;line-height:1.25;text-decoration:none;max-width:100%;display:inline-block}
.tf .brand-mark{display:inline-grid;place-items:center;width:2em;height:2em;margin-inline-end:.6em;border:1px solid currentColor;border-radius:50%;font-size:.75em;vertical-align:middle}
.tf .tf-hero>p{font-size:1.2rem;line-height:1.65;max-width:65ch;color:inherit}
.tf .tf-copy>section{margin-bottom:2.5rem}
.tf .tf-copy>section:last-child{margin-bottom:0}
.tf .outline{position:static;display:grid;gap:.75rem}
.tf .tf-index a{font-size:.9rem;line-height:1.5}
.tf .tf-collection>div{display:grid;gap:1.5rem;margin:0}
.tf .tf-collection article{margin:0;padding:0;background:none;border:0;border-radius:0}
.tf .tf-collection h2{font-size:1.4rem}
.tf .tf-collection p{font-size:1rem}
.tf .tf-footer{font-size:.875rem}
.tf .tf-footer p{margin:0}
@media(max-width:700px){.tf{font-size:16px}.tf h1{font-size:clamp(2rem,8vw,3rem)}.tf .tf-brand a{font-size:1.15rem}.tf .tf-collection>div{grid-template-columns:minmax(0,1fr)}.tf nav{gap:.4rem 1rem}}
@media(prefers-reduced-motion:reduce){.tf *{scroll-behavior:auto!important}}

.tf-directory{--tf-paper:#f3f6f7;--tf-accent:#165b7a;font-size:16px}
.tf-directory .tf-topbar{background:#fff;border-bottom:1px solid #165b7a30;padding:1.3rem clamp(1.2rem,4vw,4rem)}
.tf-directory .tf-topbar-inner{max-width:1320px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:2rem}
.tf-directory .tf-topbar nav{justify-content:flex-end}
.tf-directory .tf-workspace{max-width:1440px;margin:auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:3rem;padding:2.5rem clamp(1.2rem,4vw,4rem)}
.tf-directory .tf-workspace:has(>.tf-main:only-child){grid-template-columns:minmax(0,1fr)}
.tf-directory .tf-index{padding-top:.5rem}
.tf-directory .tf-index .outline{position:sticky;top:1.5rem;gap:0}
.tf-directory .tf-index a{display:block;padding:.7rem 0;border-bottom:1px solid #165b7a25;text-decoration:none}
.tf-directory .tf-main{max-width:1040px}
.tf-directory .tf-hero{margin-bottom:2rem}
.tf-directory h1{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.035em}
.tf-directory .tf-hero>img{width:100%;max-height:350px;margin-top:1.5rem;border-radius:4px}
.tf-directory .tf-collection{margin-bottom:2.5rem}
.tf-directory .tf-collection>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.tf-directory .tf-collection article{background:white;border:1px solid #165b7a25;border-top:3px solid var(--tf-accent);padding:1.5rem;border-radius:4px}
.tf-directory .tf-collection h2{font-size:1.2rem}
.tf-directory .tf-reference{background:white;border:1px solid #165b7a25;border-radius:4px;padding:clamp(1.3rem,3vw,2.5rem)}
.tf-directory .tf-copy>section+section{border-top:1px solid #165b7a25;padding-top:2rem}
.tf-directory .tf-footer{background:#e7edf0;padding:1.5rem clamp(1.2rem,4vw,4rem)}
.tf-directory .tf-footer>div{max-width:1320px;margin:auto;display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
@media(max-width:850px){.tf-directory .tf-workspace{grid-template-columns:minmax(0,1fr);gap:1.5rem}.tf-directory .tf-index .outline{position:static;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.tf-directory .tf-topbar-inner{display:block}.tf-directory .tf-topbar nav{justify-content:flex-start;margin-top:1rem}.tf-directory .tf-collection>div{grid-template-columns:minmax(0,1fr)}}
.tf{--tf-accent:#315b79;--tf-paper:#edf5f4}