body.tft-directory-page{background:#fff}
.tft-directory-page #content>.ast-container{display:block;max-width:1200px;padding:0 24px;margin:auto}
.tft-directory-page #primary{width:100%;max-width:none;float:none;margin:0;padding:0;border:0}
.tft-directory{--ink:#222c28;--muted:#53635a;--line:#dce1da;color:var(--ink);margin:32px auto 80px}
.tft-directory *{box-sizing:border-box}
.tft-directory .dir-intro{display:flex;background:#edf2e9;min-height:222px;overflow:hidden;border-radius:6px}
.tft-directory .dir-lead{flex:1;align-self:center;padding:35px clamp(24px,4vw,62px)}
.tft-directory h1{font:normal clamp(52px,6vw,83px)/1.04 Georgia,serif;letter-spacing:-.045em;color:var(--ink);margin:0 0 14px}
.tft-directory .dir-lead p{font:18px/1.5 Arial,sans-serif;color:#415247;max-width:450px;margin:0}
.tft-directory .dir-photo{position:relative;width:36%;flex:none;margin:0;min-height:222px}
.tft-directory .dir-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.tft-directory .dir-layout{display:grid;grid-template-columns:minmax(190px,22%) minmax(0,1fr);align-items:start;gap:clamp(30px,5vw,80px);margin-top:44px}
.tft-directory .dir-topics{position:sticky;top:24px}
.tft-directory .dir-topics h2{font:700 17px/1.4 Arial,sans-serif;margin:0 0 13px;color:var(--ink)}
.tft-directory ul{list-style:none;margin:0;padding:0}
.tft-directory li{margin:0;padding:0;list-style:none}
.tft-directory .dir-topics li{border-top:1px solid var(--line)}
.tft-directory .dir-topics a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 0;font:15px/1.5 Arial,sans-serif;color:var(--muted);text-decoration:none}
.tft-directory .dir-topics a span{font-variant-numeric:tabular-nums;color:#67776a}
.tft-directory .dir-section{scroll-margin-top:24px;margin:0 0 49px}
.tft-directory .dir-section h2{font:normal clamp(28px,3vw,38px)/1.15 Georgia,serif;letter-spacing:-.025em;color:#283d30;margin:0;padding:0 0 14px;border-bottom:2px solid #49614f}
.tft-directory .dir-section li{border-bottom:1px solid var(--line)}
.tft-directory .dir-section a{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:15px 2px;color:var(--ink);text-decoration:none}
.tft-directory .dir-section a span{font:600 clamp(16px,1.4vw,19px)/1.4 Arial,sans-serif}
.tft-directory .dir-section time{font:13px/1.5 Arial,sans-serif;white-space:nowrap;color:var(--muted)}
.tft-directory a:hover,.tft-directory .dir-section a:hover span{color:#7f4246;text-decoration:underline;text-underline-offset:3px}
.tft-directory a:focus-visible{outline:2px solid #7f4246;outline-offset:2px}
@media(max-width:800px){.tft-directory .dir-layout{grid-template-columns:1fr;gap:30px;margin-top:26px}.tft-directory .dir-topics{position:static}.tft-directory .dir-topics ul{display:flex;flex-wrap:wrap;gap:7px}.tft-directory .dir-topics li{border:0}.tft-directory .dir-topics a{font-size:14px;padding:7px 12px;border:1px solid var(--line);border-radius:5px;gap:9px}.tft-directory .dir-intro,.tft-directory .dir-photo{min-height:177px}}
@media(max-width:560px){.tft-directory-page #content>.ast-container{padding:0 18px}.tft-directory{margin-top:18px}.tft-directory .dir-photo{display:none}.tft-directory h1{font-size:52px}.tft-directory .dir-lead{padding:27px 20px}.tft-directory .dir-lead p{font-size:16px}.tft-directory .dir-intro{min-height:0}.tft-directory .dir-section a{flex-direction:column;gap:4px;padding:13px 0}.tft-directory .dir-section{margin-bottom:32px}}
