*{box-sizing:border-box}body{margin:0;background:var(--c24-canvas);color:var(--c24-text-primary);font:var(--c24-font-size-body)/1.5 var(--c24-font)}
[hidden]{display:none!important}a{color:var(--c24-brand-blue);text-underline-offset:3px}a,button,summary{cursor:pointer}button,input,select,textarea{font:inherit}button:disabled{cursor:not-allowed;background:var(--c24-disabled-bg);color:var(--c24-disabled-ink)}
:is(a,button,input,select,textarea,summary):focus-visible{outline:var(--c24-focus-width) solid var(--c24-brand-blue);outline-offset:var(--c24-focus-offset)}
.wrap{width:min(var(--c24-content-max),calc(100% - 32px));margin:auto}.reading{max-width:var(--c24-reading-max)}main{padding-bottom:48px}.site-header{background:var(--c24-surface);border-bottom:1px solid var(--c24-border-subtle)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px}.brand img{display:block;max-width:100%;height:auto}.site-header nav{display:flex;flex-wrap:wrap;gap:8px}.site-header nav a{padding:10px 12px;border-radius:8px;text-decoration:none;font-weight:600;min-height:44px}.site-header nav a:hover,.site-header nav a[aria-current]{background:var(--c24-surface-subtle)}
.breadcrumbs{margin:24px 0;color:var(--c24-text-secondary);font-size:14px}.page-head{margin-block:24px}h1{font-size:clamp(30px,4vw,44px);line-height:1.2;overflow-wrap:anywhere}h2{font-size:26px;line-height:1.3}h3{font-size:19px;line-height:1.4}h1,h2,h3{margin-top:0}.eyebrow{font-size:14px;font-weight:600;color:var(--c24-text-secondary)}.lead{font-size:18px}.grid{display:grid;gap:24px;align-items:start}.two{grid-template-columns:1fr 1fr}.panel{padding:24px;border:1px solid var(--c24-border-subtle);border-radius:var(--c24-radius-card);background:var(--c24-surface);margin:0 0 24px;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid transparent;border-radius:var(--c24-radius-control);padding:12px 20px;font-weight:600;background:var(--c24-brand-blue);color:white;text-decoration:none;white-space:normal;text-align:center;max-width:100%}.btn:hover{background:var(--c24-hover-blue)}.btn:active{background:var(--c24-active-blue)}.btn.secondary{background:var(--c24-surface);border-color:var(--c24-brand-blue);color:var(--c24-brand-blue)}.btn.secondary:hover{background:var(--c24-surface-subtle)}.btn.block{width:100%;margin-block:12px}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.actions form{margin:0}.inline-link{display:inline-block;margin-block:12px}.hint{font-size:14px;color:var(--c24-text-secondary)}.notice{padding:16px;border-radius:8px;background:var(--c24-surface-subtle);margin-block:16px}.notice summary{font-weight:600;min-height:32px}.field{margin:0 0 20px;min-width:0}fieldset.field{border:0;padding:0}.field>label,legend{display:block;font-weight:600;margin-bottom:8px}input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select,textarea{width:100%;min-height:48px;border:1px solid var(--c24-border-control);border-radius:8px;padding:10px 12px;color:var(--c24-text-primary);background:var(--c24-surface)}textarea{resize:vertical}.field input[type=radio],.field input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin:8px}.field label:has(input){display:flex;align-items:center;gap:8px;min-height:44px}.field ul{list-style:none;padding:0}.dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.error-summary{padding:20px;border:2px solid var(--c24-danger-ink);border-radius:8px;margin-block:20px;background:var(--c24-danger-bg)}.error-summary h2{font-size:20px}.error-summary a,.field-error,.errorlist{color:var(--c24-danger-ink)}[aria-invalid=true]{border-color:var(--c24-danger-ink)!important}.line-item{border-bottom:1px solid var(--c24-border-subtle);padding:12px 0;overflow-wrap:anywhere}.summary-total{margin-block:20px}.steps{display:flex;flex-wrap:wrap;gap:16px;list-style:none;padding:0;margin-bottom:24px;color:var(--c24-text-secondary)}.steps [aria-current]{font-weight:700;color:var(--c24-brand-blue)}.site-footer{background:var(--c24-surface);border-top:1px solid var(--c24-border-subtle);padding-block:24px}.site-footer p{margin-bottom:0;color:var(--c24-text-secondary)}.skip{position:absolute;top:-100px;left:12px;padding:12px;background:white;z-index:10}.skip:focus{top:12px}.consent label{font-weight:400}
@media(max-width:800px){.header-inner{align-items:flex-start;flex-direction:column;gap:16px}.site-header nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.two{grid-template-columns:1fr}.panel{padding:20px}}
@media(max-width:359px){.dimensions{grid-template-columns:1fr}.panel{padding:16px}.site-header nav a{padding-inline:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* The approved C2.3 public shell: search, service entries, then local panorama. */
.site-header .header-inner{min-height:88px}.site-header .brand{flex:0 0 auto;width:230px}.site-header nav a[aria-current]{box-shadow:inset 0 -3px var(--c24-brand-blue)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.trap{display:none}
.home-intro{padding-top:32px}.home-intro .eyebrow{text-transform:uppercase;color:var(--c24-brand-deep);font-size:13px;font-weight:700;margin:0 0 12px}.home-intro h1{font-size:36px;letter-spacing:-.025em;margin:0 0 12px}.home-intro .lead{color:var(--c24-text-secondary);margin:0 0 20px}
.search-form{display:flex;gap:12px;align-items:stretch;margin-bottom:24px}.search-form input{flex:1;min-width:0}.search-form .btn{min-width:120px}.home-entries{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0 0 24px}.quick-card{min-width:0;overflow-wrap:anywhere;padding:20px;min-height:112px;background:var(--c24-surface);border:1px solid var(--c24-border-subtle);border-radius:16px;text-decoration:none;color:var(--c24-text-primary);display:flex;flex-direction:column;gap:8px}.quick-card strong{font-size:18px}.quick-card span{font-size:14px;color:var(--c24-text-secondary)}.quick-card:hover{border-color:var(--c24-brand-blue);background:var(--c24-surface-subtle)}
.local-panorama{width:100%;height:280px;object-fit:cover;object-position:center 46%;border-radius:16px;display:block}.directory-section{padding-top:32px;scroll-margin-top:20px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.section-heading h2{margin-bottom:16px}.directory-filters{display:grid;grid-template-columns:1fr 1fr auto auto;gap:16px;align-items:end;margin-bottom:24px}.directory-filters label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}.filter-reset{min-height:48px;display:flex;align-items:center;justify-content:center}.directory-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.directory-card{background:white;border:1px solid var(--c24-border-subtle);border-radius:16px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;overflow-wrap:anywhere}.directory-card p{margin:0}.directory-card h3{margin:8px 0 0}.directory-card h3 a{color:var(--c24-text-primary);text-decoration:none}.directory-card h3 a:hover{color:var(--c24-brand-blue);text-decoration:underline}.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;padding-top:8px}.card-actions>a:not(.btn){font-size:14px;min-height:44px;display:inline-flex;align-items:center}.status-badge{display:inline-block;font-size:13px;padding:6px 10px;border-radius:8px;background:var(--c24-warning-bg);color:var(--c24-warning-ink)}.status-badge.success{background:var(--c24-success-bg);color:var(--c24-success-ink)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.contribution{margin-top:32px;padding:24px}.contribution h2{font-size:20px}.contribution p{margin-bottom:12px}.contact-details{display:grid;gap:20px;margin:24px 0;overflow-wrap:anywhere}.contact-details dt{font-size:14px;color:var(--c24-text-secondary);margin-bottom:6px}.contact-details dd{margin:0}.form-column{max-width:640px}.offer-card{height:100%;margin-bottom:0;display:flex;flex-direction:column;align-items:flex-start}.offer-card .actions,.offer-card>form,.offer-card>a{margin-top:auto}.grid.two+.reading{padding-top:32px}.order-how{padding-left:24px}.order-how li{margin-bottom:12px}
.bus-list{display:grid;gap:20px}.bus-card{margin-bottom:0}.bus-card h2{font-size:22px}.bus-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bus-time{padding:12px 16px;background:var(--c24-surface-subtle);border-radius:8px}.bus-time strong{font-size:20px}.bus-time p{font-size:14px;margin:4px 0}.bus-card details{margin-block:16px}.bus-card summary{min-height:44px;display:flex;align-items:center;font-weight:600}.bus-card .actions{justify-content:space-between}.bus-context{margin:0 0 24px}.bus-context strong{display:block;margin-bottom:8px}
@media(max-width:1000px){.directory-filters{grid-template-columns:1fr 1fr}.home-entries{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .header-inner{gap:12px}.site-header nav a{padding-inline:8px;font-size:14px}}
@media(max-width:600px){.site-header .header-inner{padding-block:16px;min-height:0}.site-header .brand{width:190px}.site-header nav a{font-size:14px}.home-intro{padding-top:24px}.home-intro h1{font-size:30px}.home-intro .lead{font-size:16px}.search-form{flex-direction:column;gap:8px}.home-entries{gap:12px}.quick-card{padding:16px;min-height:104px}.quick-card strong{font-size:16px}.local-panorama{height:190px;object-position:65% 46%}.directory-cards{grid-template-columns:1fr}.directory-filters{gap:12px}.directory-card{padding:20px}.section-heading h2{font-size:24px}.bus-times{grid-template-columns:1fr 1fr;gap:8px}.bus-time{padding:12px}.bus-card .actions{align-items:flex-start}.bus-card .actions .btn{width:100%}}
@media(max-width:359px){.home-entries .quick-card{padding:12px}.quick-card span{font-size:13px}.directory-filters{grid-template-columns:1fr}.bus-times{grid-template-columns:1fr}.pagination .btn{padding:10px}}
.header-help{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:14px}.home-intro~.home-entries{margin-top:0}
@media(max-width:800px){.header-inner:has(.header-help){flex-direction:row;align-items:center;flex-wrap:wrap}.header-help{margin-left:auto}}
@media(max-width:600px){.header-inner:has(.header-help){flex-wrap:nowrap;gap:8px}.header-inner:has(.header-help) .brand{flex:0 1 168px;min-width:140px}.header-help{flex:0 1 150px;min-width:0;font-size:13px;line-height:1.3;text-align:right;justify-content:flex-end}}

.organization-description{overflow-wrap:anywhere}
.service-intake{margin:32px 0}.service-intake-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin-bottom:24px}.service-intake-cards .btn{margin-top:auto}.service-intake-cards h2,.service-intake-cards h3{overflow-wrap:anywhere}.form-column .page-head{overflow-wrap:anywhere}

.organization-photo{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;border-radius:var(--radius,12px);margin:20px 0;background:var(--surface,#f4f6f8)}
.organization-thumbnail{display:block;width:100%;height:180px;object-fit:contain;border-radius:12px;background:var(--surface,#f4f6f8)}
.photo-upload input[type=file]{max-width:100%;min-width:0}

.share-card{margin-top:20px;min-width:0}.share-card input{display:block;width:100%;min-width:0}.share-card input[hidden]{display:none}.share-card [data-share-status]:empty{display:none}

/* Public directory: compact local introduction and separate, readable controls. */
.home-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;margin:28px 0 24px;padding:28px;background:var(--c24-surface);border:1px solid var(--c24-border-subtle);border-radius:24px}
.home-overview .home-intro{padding:0;min-width:0}.home-overview .search-form{margin-bottom:0}.home-window{position:relative;margin:0;min-width:0;align-self:stretch}.home-window .local-panorama{height:100%;min-height:260px}.home-window figcaption{position:absolute;bottom:16px;left:16px;padding:6px 12px;border-radius:8px;background:rgba(255,255,255,.92);color:#203348;font-size:14px;font-weight:600}
.home-entries .quick-card{position:relative;min-height:104px;transition:border-color .15s,background .15s}.home-entries .quick-card strong{line-height:1.3}.directory-heading{align-items:center;margin-bottom:20px}.directory-heading h2{margin:0 0 6px}.directory-heading .hint{margin:0}.result-count{margin:0;padding:8px 14px;background:var(--c24-surface);border:1px solid var(--c24-border-subtle);border-radius:24px;font-size:14px;white-space:nowrap}
.organization-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px;background:var(--c24-surface);border:1px solid var(--c24-border-subtle);border-radius:16px}.organization-filters>div{min-width:0}.filter-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.filter-actions .filter-reset{padding-inline:12px}.directory-card{background:var(--c24-surface);gap:14px}.directory-card>a:has(.organization-thumbnail){width:100%}.organization-facts{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.directory-card .card-actions{width:100%;border-top:1px solid var(--c24-border-subtle);padding-top:16px}.directory-card .organization-description{color:var(--c24-text-secondary)}
@media(min-width:1280px){.directory-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-card{padding:22px}}
@media(max-width:1000px){.home-overview{gap:20px;padding:24px}.home-overview .search-form{flex-direction:column}.home-window .local-panorama{min-height:280px}.home-entries .quick-card:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:700px){.home-overview{grid-template-columns:1fr;padding:20px;gap:20px;margin-top:20px}.home-window .local-panorama{height:180px;min-height:0}.home-overview .home-intro h1{font-size:30px}.organization-filters{grid-template-columns:1fr;padding:16px;gap:14px}.filter-actions{gap:8px}.filter-actions .btn{width:100%}.filter-actions .filter-reset{width:100%}.directory-heading{gap:12px}.directory-section{padding-top:20px}}
