/* The tool library uses the same spacious, softly tinted BRITER language as Backpack Theory. */
.nav{background:#7e3f8f;color:#fff}
.nav .name span{color:#f3e5f6}
.detail-hero{padding:clamp(70px,8vw,125px) clamp(24px,6vw,92px);background:#fcf8fd;color:var(--ink);border-bottom:1px solid #ead9ee}
.detail-hero>div{max-width:1320px}
.detail-hero .step{color:#7e3f8f}
.detail-hero h1{max-width:1100px;font-size:clamp(3.4rem,6.5vw,6.9rem);line-height:1.02;letter-spacing:-.045em}
.detail-hero .lead{max-width:800px;color:#414957;font-size:1.18rem;line-height:1.65}
.detail-hero .back{border-bottom-color:#7e3f8f;color:#7e3f8f}
.library{display:block;max-width:1440px;padding:clamp(72px,8vw,120px) clamp(24px,6vw,92px);margin:auto}
.library-intro{position:static;width:100%;max-width:none;padding:clamp(36px,5vw,66px);border:1px solid #ead9ee;border-top:4px solid #7e3f8f;border-radius:20px;background:#fcf8fd}
.library-intro .kicker{color:#7e3f8f}
.library-intro h2{max-width:880px;margin:20px 0 22px;font-size:clamp(2.8rem,5vw,5.4rem);line-height:1.06}
.library-intro>p:not(.kicker){max-width:740px;font-size:1.1rem;line-height:1.7;color:#414957}
.practice-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:34px}
.practice-paths article{display:flex;flex-direction:column;min-height:160px;padding:18px 18px 20px;border:1px solid #decbe5;border-top:5px solid var(--path-color,#7e3f8f);border-radius:14px;background:#fff}
.practice-paths small{color:var(--path-color,#7e3f8f);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.practice-paths strong{margin:10px 0 8px;color:#172033;font:700 1.12rem/1.18 "Playfair Display",Georgia,serif}
.practice-paths span{color:#4b5667;font-size:.88rem;line-height:1.45}
.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:58px}
.library-grid article{display:flex;flex-direction:column;min-width:0;min-height:270px;padding:clamp(28px,3vw,43px);border:1px solid #d9d8e4;border-top:5px solid #7e3f8f;border-radius:18px;background:#fff}
.library-grid article{position:relative;transition:box-shadow .18s ease,transform .18s ease}
.library-grid article:hover,.library-grid article:focus-within{box-shadow:0 14px 30px rgba(71,36,82,.1);transform:translateY(-2px)}
.library-grid article>a::after{content:"";position:absolute;inset:0;border-radius:18px}
.library-grid article>a:focus-visible{outline:3px solid #7e3f8f;outline-offset:5px}
.library-grid article:nth-child(n){border-top-color:#7e3f8f}
.library-grid article:nth-child(4n+2){border-top-color:#e89a3b}
.library-grid article:nth-child(4n+3){border-top-color:#c7237e}
.library-grid article:nth-child(4n){border-top-color:#ef6e6e}
.library-grid b{color:#7e3f8f;font-size:.78rem}
.library-grid h3{margin:22px 0 10px;font-family:"Playfair Display",Georgia,serif;font-weight:700;font-size:clamp(1.65rem,2.35vw,2.15rem);line-height:1.18}
.library-grid p{max-width:54ch;margin:0;color:#4b5667;font-size:1rem;line-height:1.65}
.library-grid a{align-self:flex-start;margin-top:auto;padding-top:22px;color:#7e3f8f;text-decoration:underline;text-underline-offset:4px}
.library-grid a:hover,.library-grid a:focus-visible{color:#c7237e}
.closing{padding:clamp(80px,9vw,130px) clamp(24px,6vw,92px);background:#7e3f8f;color:#fff}
.closing>p{color:#f1d9f6}
.closing h2{max-width:950px;line-height:1.08}
.closing a{color:#5d286d}
@media(max-width:900px){.practice-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.library-grid{grid-template-columns:1fr;gap:16px}.library-grid article{min-height:0}.library-intro{padding:32px 25px}.detail-hero h1{font-size:clamp(3rem,10vw,4.6rem)}}
@media(max-width:520px){.practice-paths{grid-template-columns:1fr}.practice-paths article{min-height:0}}
.detail-hero h1 .brand-tm{display:inline-block;vertical-align:super;margin-left:.08em;font:700 .18em/1 'DM Sans',Arial,sans-serif;letter-spacing:0;transform:translateY(-.16em)}
#practices{scroll-margin-top:75px}
