.practices-page{--practice-header:145px}.practices-page h1{font:700 clamp(28px,4vw,44px)/1.2 var(--f-display)}.practices-page h2{font:700 27px/1.25 var(--f-display)}.practices-page h3{font:700 20px/1.4 var(--f-display)}.practices-page .eyebrow{color:var(--navy)}
.practices-hero{background:var(--mist);padding:24px 0 35px}.practices-hero .lead{max-width:75ch;font-size:18px;color:var(--muted)}.practice-search{display:flex;max-width:860px;gap:10px;margin:25px 0 15px}.practice-search input{flex:1;min-width:0;border:2px solid var(--navy);border-radius:6px;padding:14px;font:inherit;color:var(--ink);background:var(--surface)}
.practice-hints{display:flex;gap:8px;flex-wrap:wrap;font-size:14px;align-items:center}.practice-hints button,.practice-active button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:20px;padding:7px 12px;font:inherit;cursor:pointer}.practice-hints button:hover,.practice-active button:hover{border-color:var(--navy)}.practice-metrics{display:flex;gap:36px;flex-wrap:wrap;margin-top:28px;color:var(--muted);font-size:14px}.practice-metrics b{font:700 23px var(--f-mono);display:block;color:var(--ink);margin-bottom:6px}
.practice-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;padding:35px 0 55px;align-items:start}#practice-filters{position:sticky;top:var(--practice-header);max-height:calc(100vh - var(--practice-header) - 20px);overflow:auto;padding-right:10px;font-size:14px;scrollbar-width:thin}#practice-filters fieldset{border:0;padding:0;margin:24px 0}#practice-filters legend{font-weight:bold;font-size:16px;margin-bottom:8px}#practice-filters label{display:flex;gap:8px;align-items:baseline;margin:8px 0}#practice-filters label span{margin-left:auto;color:var(--muted);font:12px var(--f-mono)}#practice-filters input[type=checkbox]{accent-color:var(--navy)}#practice-filters input[type=search],#practice-filters select{width:100%;padding:10px 7px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);font:inherit;margin-bottom:8px}.effect-filter{background:var(--soon);color:var(--soon-fg);border-radius:6px;padding:12px}.inactive{color:var(--muted)}.filter-reset{padding:0;border:0;background:none;color:var(--link);text-decoration:underline;font:inherit;cursor:pointer}.practice-filter-toggle{display:none}
.practice-result-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.practice-result-head p{font-size:16px}.practice-result-head label{font-size:12px;color:var(--muted)}.practice-result-head select{display:block;border:1px solid var(--line);border-radius:5px;padding:7px;color:var(--ink);background:var(--surface);font:14px var(--f-body)}.practice-active{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;font-size:13px}
.practice-card{position:relative;padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--surface);margin-bottom:14px}.practice-card:hover,.practice-card:focus-within{border-color:var(--navy)}.practice-card h3{font:700 18px/1.45 var(--f-display);margin:14px 0 10px}.practice-open{color:var(--ink);text-decoration:none}.practice-open:after{content:'';position:absolute;inset:0;border-radius:6px}.practice-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:13px}.practice-meta time{margin-left:auto;font-family:var(--f-mono)}.practices-page .chip{display:inline-block;border-radius:20px;padding:3px 9px;background:var(--chip);color:var(--ink);font-size:12px}.practice-summary{font-size:15px;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 15px}.practice-card-bottom{display:flex;gap:14px;justify-content:space-between;align-items:flex-end}.practice-cases{display:flex;gap:6px;flex-wrap:wrap}.practice-effect{font:700 17px var(--f-mono);border-radius:5px;padding:8px 12px;text-align:right;flex-shrink:0}.practice-effect small{display:block;font:12px var(--f-body);margin-top:4px}.effect-biz{background:var(--soon);color:var(--soon-fg)}.effect-budget{background:var(--chip);color:var(--link)}.no-effect{border:1px dashed var(--line);font:13px var(--f-body);color:var(--muted)}.practice-more{display:block;text-align:center;margin:24px 0}.practice-propose{display:block;border:2px dashed var(--line);padding:25px;text-align:center;border-radius:6px;text-decoration:none;margin:25px 0}.practice-empty{padding:36px;background:var(--mist);border-radius:6px}.practice-error{padding:20px;border:2px solid var(--yel)}.practice-error button{font:inherit;color:var(--link);background:none;border:0;text-decoration:underline}.practice-results[aria-busy=true] #practice-list{opacity:.45;pointer-events:none}.practices-page mark{background:var(--yel);color:var(--yel-text)}
#practice-dialog{position:fixed;inset:0 0 0 auto;width:min(700px,100%);height:100dvh;max-height:100dvh;max-width:100%;margin:0;border:0;border-left:1px solid var(--line);padding:0;background:var(--bg);color:var(--ink);overflow:auto;box-shadow:-10px 0 40px var(--line)}#practice-dialog::backdrop{background:var(--overlay,rgba(0,0,0,.55))}.practice-dialog-head{position:sticky;top:0;z-index:2;display:flex;gap:16px;align-items:center;padding:16px 26px;background:var(--bg);border-bottom:1px solid var(--line)}.practice-dialog-head time{font:14px var(--f-mono)}.practice-dialog-head [data-close-practice]{margin-left:auto;color:var(--link);font-size:14px}.practice-detail{padding:15px 28px 40px;overflow-wrap:anywhere}.practice-detail h2{margin:14px 0 20px}.practice-story{border-left:3px solid var(--yel);padding-left:18px;margin:26px 0}.story-solution{border-color:var(--blue)}.story-result{border-color:var(--green)}.practice-story h3{margin:0 0 8px}.practice-story p{font-size:16px;line-height:1.65}.practice-cost{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:30px 0;font-size:14px}.practice-cost>header{background:var(--mist);padding:18px}.practice-cost>header h3{font:700 15px var(--f-body);margin:0 0 15px}.cost-total{font:700 29px var(--f-mono)}.practice-cost table{border-collapse:collapse;width:100%;font-size:14px}.practice-cost caption{text-align:left;padding:16px;font-weight:bold}.practice-cost th,.practice-cost td{border-bottom:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}.practice-cost td:last-child{font:13px var(--f-mono);min-width:90px}.practice-cost td small{display:block;color:var(--muted);margin-top:5px;font-size:12px}.cost-subtotal{font-weight:bold}.practice-cost>h4,.practice-cost>p,.practice-cost>ul{margin:18px}.cost-formula{padding:14px;background:var(--mist);font:13px/1.7 var(--f-mono);white-space:pre-wrap;overflow-wrap:anywhere}.practice-cost.qualitative{border-style:dashed;padding:20px}.qualitative h3{margin:0}.practice-info{display:grid;grid-template-columns:150px minmax(0,1fr);font-size:14px;gap:15px}.practice-info dt{color:var(--muted)}.practice-info dd{margin:0}.similar-practice{display:block;margin:15px 0;font-size:16px}.similar-practice small{display:block;color:var(--muted);margin-top:5px;font-size:13px}
@media(max-width:899px){.practice-layout{display:block}.practice-filter-toggle{display:inline-block;margin-bottom:20px}.practices-js #practice-filters:not(.is-open){display:none}#practice-filters{position:static;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin-bottom:24px}#practice-filters fieldset{margin:8px 0}.effect-filter{grid-column:1/-1}.practice-card-bottom{flex-wrap:wrap}.practice-effect{margin-left:auto}}
@media(max-width:559px){.practice-search{flex-wrap:wrap}.practice-search input{flex-basis:100%}.practice-metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px}.practice-result-head{align-items:flex-start;flex-direction:column}.practice-card{padding:18px}.practice-card-bottom{flex-direction:column;align-items:flex-start}.practice-effect{margin-left:0;text-align:left}#practice-filters{grid-template-columns:1fr}.practice-detail{padding:14px 16px 35px}.practice-dialog-head{padding:14px 16px}.practice-info{display:block}.practice-info dd{margin:4px 0 18px}.practice-cost th,.practice-cost td{padding:10px 8px}.cost-total{font-size:25px}.practice-detail h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.practices-page *{scroll-behavior:auto!important;transition:none!important}}.practices-page [hidden]{display:none!important}

body.practice-modal-open{overflow:hidden}

.practice-skeletons{display:none}.practice-results[aria-busy="true"] .practice-skeletons{display:grid;gap:18px}.practice-results[aria-busy="true"] #practices-results{display:none}.practice-skeletons>div{height:180px;border-radius:12px;background:var(--mist);border:1px solid var(--line)}
