/* District experiences sit on the existing semantic theme, not a second palette. */
.workspace,.public-main{min-width:0}.workspace-heading>div{min-width:0}.workspace-heading h1{max-width:22ch;text-wrap:balance}.workspace-heading p{max-width:65ch}
.place-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);border:1px solid var(--line);border-radius:24px;background:var(--surface);margin:0 0 32px;overflow:hidden;isolation:isolate}
.place-copy{padding:clamp(24px,3vw,48px);align-self:center}.place-copy h2{font-size:clamp(30px,3.5vw,52px);line-height:1.07;letter-spacing:-.045em;text-wrap:balance;margin:16px 0}.place-copy p{line-height:1.7;max-width:40ch;margin-bottom:24px}.place-art{display:block;width:100%;height:100%;min-height:320px;object-fit:cover}
.practice-section{margin-block:32px}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.practice-card{min-width:0;position:relative;border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--surface);display:flex;flex-direction:column;align-items:flex-start}.practice-card h3{font-size:24px;letter-spacing:-.025em;margin:12px 0}.practice-card p{font-size:14px;line-height:1.7}.practice-card form{margin-top:auto;padding-top:12px;width:100%}.practice-card .button{width:100%;white-space:normal;text-align:left;justify-content:space-between}.practice-number{font-size:42px;font-weight:300;color:var(--accent);margin-bottom:24px;letter-spacing:-.06em}.practice-card:nth-child(2n){background:var(--surface-alt)}
.care-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 32px;gap:24px}.care-paths>a{padding:24px;border-block-start:2px solid var(--accent);background:var(--surface);border-radius:0 0 16px 16px}.care-paths h3{font-size:24px;margin:14px 0}.care-paths p{line-height:1.7;font-size:14px}
.district-trails{border-block:1px solid var(--line);margin:0 0 28px;padding:0;background:transparent}.district-trails summary{cursor:pointer;padding:18px 0;min-height:48px;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.district-trails summary>span{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.district-trails>p{max-width:70ch;line-height:1.7}.district-trails nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:24px}.district-trails nav>a{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:14px;border-radius:12px;background:var(--surface)}.district-trails nav span{min-width:0;flex:1}.district-trails nav strong{display:block;font-size:14px}.district-trails nav small{display:block;line-height:1.5;color:var(--muted);margin-top:8px}.district-trails svg{flex-shrink:0}.district-trails summary:focus-visible,.care-paths>a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.record-card{overflow-wrap:anywhere}.record-card h3{line-height:1.3}.records,.content-columns>*,.metrics-grid>*{min-width:0}.metrics-grid .metric strong{overflow-wrap:anywhere}.wallet-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.wallet-context .panel{margin:0}.wallet-context p{font-size:14px;line-height:1.7}.wallet-status-list{display:grid;gap:0}.wallet-status-list>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line)}
@media(min-width:1450px){.practice-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.practice-card{padding:20px}.practice-card h3{font-size:21px}}
@media(max-width:1050px){.place-banner{grid-template-columns:1fr 1fr}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.care-paths{gap:12px}.care-paths>a{padding:18px}.district-trails nav{gap:10px}}
@media(max-width:680px){.place-banner{grid-template-columns:1fr;border-radius:18px}.place-art{min-height:0;max-height:270px;aspect-ratio:3/2;grid-row:1}.place-copy{padding:24px}.place-copy h2{font-size:34px}.practice-grid,.care-paths,.district-trails nav,.wallet-context{grid-template-columns:1fr}.practice-card{padding:22px}.practice-number{font-size:32px;margin-bottom:16px}.district-trails summary{align-items:flex-start}.district-trails summary>span{max-width:120px}.care-paths{gap:16px}.district-trails nav small{margin-top:4px}}
@media(forced-colors:active){.practice-card,.place-banner,.care-paths>a{border:1px solid CanvasText}}

.place-discovery{margin:32px 0 48px}.place-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.place-discovery-card{border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden;display:block}.place-discovery-card img{display:block;width:100%;height:auto;aspect-ratio:2;object-fit:cover}.place-discovery-card>div{padding:26px}.place-discovery-card h3{font-size:28px;letter-spacing:-.035em;margin:12px 0}.place-discovery-card p{font-size:15px;line-height:1.6}.place-discovery-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:680px){.place-discovery-grid{grid-template-columns:1fr}.place-discovery-card>div{padding:22px}}
.shop-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 24px}.wallet-shop .section-heading,.bazaar-shop .section-heading{align-items:center;flex-wrap:wrap;gap:16px}.wallet-shop h2,.bazaar-shop h2{margin-bottom:0}.points-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.points-pack{display:flex;flex-direction:column;min-width:0;padding:24px}.points-pack h3{font-size:20px;letter-spacing:-.025em}.points-pack-price{display:block;font-size:30px;letter-spacing:-.04em;line-height:1.2;margin-bottom:16px}.points-pack p{font-size:14px;line-height:1.6}.points-pack form,.points-pack>.button{margin-top:auto}.points-pack .button{width:100%;gap:10px;padding-inline:16px}.points-pack .submit-status{margin:0}.wallet-shop button:disabled,.bazaar-purchase button:disabled{cursor:not-allowed;transform:none;opacity:.75}.bazaar-purchase .stack-form{max-width:320px}.bazaar-shop .shop-actions{margin-bottom:0}.wallet-shop,.bazaar-shop{overflow-wrap:anywhere}
@media(max-width:900px){.points-pack-grid{grid-template-columns:1fr}.points-pack{padding:20px}.points-pack-price{font-size:28px}.points-pack .stack-form{max-width:340px}}
.record-next.bazaar-purchase{display:grid;justify-items:start;gap:12px}.bazaar-purchase .points-pack-price,.bazaar-purchase p{margin:0}.bazaar-purchase .stack-form{width:100%}.bazaar-purchase .submit-status{margin:0}
