/* Same public container and shared header/footer; every organization uses this layout. */
.organization-detail { background: #f1fafd; padding: .75rem 0 1.4rem; }
.org-detail-container { --container: var(--site-container-width, 80rem); }
.org-detail-back { display: inline-flex; gap: .4rem; align-items: center; min-height: 2.75rem; margin-bottom: .35rem; font-size: .875rem; text-decoration: none; }
.org-detail-back .icon { transform: rotate(180deg); width: 1rem; }
.org-detail-panel { min-width: 0; padding: 1.4rem; border: 1px solid #d4e8f1; border-radius: .85rem; background: #fff; }
.org-detail-hero { display: grid; grid-template-columns: minmax(10rem,.76fr) minmax(0,1.85fr) minmax(15rem,1fr); align-items: center; gap: 1.7rem; margin-bottom: 1.2rem; }
.org-detail-logo { display: flex; flex-direction: column; align-items: center; justify-content: center; align-self: stretch; gap: .5rem; padding: 1.4rem .8rem; min-height: 15rem; text-align: center; border-radius: .85rem; background: #eaf6f1; }
.org-detail-logo img { width: 8rem; height: auto; max-height: 12rem; object-fit: contain; }
.org-detail-logo img:only-child { width: 100%; }
.org-detail-logo strong { max-width: 13rem; color: var(--navy); font-size: 1.25rem; font-weight: 800; line-height: 1.2; }
.org-detail-eyebrow { display: block; margin-bottom: .55rem; color: #0065af; font-weight: 650; font-size: .875rem; }
.org-detail-intro h1 { font-size: clamp(1.9rem, 2.7vw, 2.9rem); line-height: 1.1; margin-bottom: 1rem; }
.org-detail-intro p { font-size: 1rem; line-height: 1.5; margin-bottom: 1.2rem; }
.org-detail-tags { display: flex; flex-wrap: wrap; gap: .65rem; list-style: none; padding: 0; margin: 0; }
.org-detail-tags li { display: inline-flex; gap: .55rem; align-items: center; border-radius: 2rem; padding: .65rem .95rem; font-size: .8125rem; font-weight: 650; }
.org-detail-tags .icon { width: 1.6rem; height: 1.6rem; }
.org-detail-demo { display: block; margin-top: .65rem; color: #526b80; font-size: .75rem; }
.org-detail-actions { display: grid; gap: .75rem; }
.org-detail-actions .button { width: 100%; border-radius: .6rem; min-height: 3rem; font-size: .875rem; }
.org-detail-actions .button span { flex: 1; }
.org-detail-statement { display: flex; align-items: flex-start; gap: 1rem; padding: 1.25rem; border-radius: .8rem; background: #eff9fd; }
.org-detail-statement p { margin: .4rem 0 0; color: var(--navy); line-height: 1.4; font-size: 1rem; }
.org-detail-statement small { display: block; margin-top: .5rem; color: var(--muted); font-size: .75rem; }
.org-detail-grid { display: grid; grid-template-columns: minmax(0,1.27fr) minmax(0,1.04fr) minmax(0,.96fr); gap: 1rem; }
.org-detail-heading { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.15rem; }
.org-detail-heading > div { min-width: 0; }
.organization-detail h2 { font-size: 1.25rem; line-height: 1.25; letter-spacing: -.03em; margin: 0; }
.org-detail-heading p { font-size: .8125rem; line-height: 1.45; margin: .35rem 0 0; }
.org-detail-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 3.5rem; height: 3.5rem; border-radius: 50%; color: #007f9f; background: #e9f7fe; }
.org-detail-icon .icon { width: 1.85rem; height: 1.85rem; }
.org-detail-panel > p { font-size: 1rem; line-height: 1.5; }
.org-detail-panel > p:last-child { margin-bottom: 0; }
.org-detail-placeholder { font-size: .8125rem !important; line-height: 1.5; color: #536d7f; }
.org-contact-list, .org-practical-list { margin: 0; font-size: .875rem; }
.org-contact-list > div, .org-practical-list > div { padding: .7rem 0; border-bottom: 1px solid #e5eff4; }
.org-contact-list > div:first-child, .org-practical-list > div:first-child { padding-top: .3rem; }
.org-contact-list > div:last-child, .org-practical-list > div:last-child { border-bottom: 0; padding-bottom: 0; }
.org-contact-list dt, .org-practical-list dt { display: flex; align-items: center; gap: .8rem; color: var(--navy); font-weight: 600; }
.org-contact-list dt .icon, .org-practical-list dt .icon { width: 1.35rem; height: 1.35rem; }
.org-contact-list dd { margin: .3rem 0 0 2.15rem; overflow-wrap: anywhere; }
.org-contact-list > div:nth-child(n+3) { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.2fr); gap: .75rem; }
.org-contact-list > div:nth-child(n+3) dd { margin: 0; }
.org-contact-list > div:nth-child(n+3) dt { align-items: flex-start; }
.org-contact-list dd small { display: block; margin-top: .3rem; color: var(--muted); font-size: .75rem; }
.org-contact-list a { text-decoration: none; }
.org-contact-list a:hover { text-decoration: underline; }
.org-detail-inline-link { display: inline-flex; align-items: center; gap: .5rem; margin-top: .4rem; font-weight: 650; }
.org-practical-list > div { display: grid; grid-template-columns: minmax(8.25rem,.95fr) minmax(0,1fr); gap: .75rem; }
.org-practical-list dt { align-items: flex-start; }
.org-practical-list dd { margin: 0; }
.org-support-tiles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.org-support-tile { min-width: 0; border-radius: .7rem; padding: 1rem .8rem; }
.org-support-tile > .icon { width: 2.3rem; height: 2.3rem; margin-bottom: .8rem; }
.org-support-tile h3 { font-size: .875rem; line-height: 1.35; letter-spacing: -.02em; margin: 0 0 .5rem; }
.org-support-tile p { font-size: .8125rem; color: var(--ink); line-height: 1.45; margin: 0; }
.org-tone-mint { color: #008368; background: #e7f8f2; }
.org-tone-purple { color: #7050c4; background: #f3edff; }
.org-tone-sand { color: #bc7000; background: #fff6e6; }
.org-tone-pink { color: #d81b72; background: #feedf5; }
.org-tone-blue { color: #007e9d; background: #eef9fd; }
.org-detail-offerings { margin-top: 1rem; font-size: .8125rem; }
.org-detail-offerings summary { cursor: pointer; color: var(--teal-dark); padding-block: .5rem; font-weight: 650; }
.org-detail-offerings ul { padding-left: 1rem; }
.org-detail-offerings li + li { margin-top: .8rem; }
.org-detail-offerings p { margin: .35rem 0 0; }
.org-audience-list { display: grid; gap: 1rem; list-style: none; margin: 0; padding: 0; font-size: .875rem; }
.org-audience-list li { display: flex; gap: .85rem; align-items: flex-start; }
.org-audience-list .icon { width: 1.5rem; height: 1.5rem; color: #007f95; }
.org-detail-map { position: relative; overflow: hidden; border-radius: .75rem; background: #eaf3ed; }
.org-detail-map img { width: 100%; height: auto; }
.org-detail-map > span { display: block; padding: .4rem .5rem; background: #f4faf7; color: #455e52; font-size: .6875rem; text-align: center; }
.org-detail-map-area { margin: .65rem 0 !important; font-size: .8125rem !important; }
.org-map-link, .org-map-unavailable { display: flex; gap: .6rem; align-items: center; justify-content: center; padding: .8rem; border-radius: .6rem; background: #eff9fe; color: var(--navy); font-size: .8125rem !important; line-height: 1.4; margin: .65rem 0 0; }
.org-map-link { font-weight: 700; text-decoration: none; min-height: 2.75rem; }
.org-map-link:hover { text-decoration: underline; }
.org-detail-help { display: flex; align-items: center; gap: 1.5rem; margin-top: 1rem; }
.org-detail-help > .org-detail-icon { width: 5rem; height: 5rem; }
.org-detail-help > .org-detail-icon .icon { width: 3rem; height: 3rem; }
.org-detail-help > div { flex: 1; }
.org-detail-help p { max-width: 45rem; margin: .4rem 0 0; font-size: .9375rem; }
.org-detail-help .button { flex-shrink: 0; min-width: 14rem; border-radius: .6rem; font-size: .875rem; }
@media (max-width: 74rem) {
    .org-detail-hero { grid-template-columns: 11rem minmax(0,1fr) 15rem; gap: 1.25rem; }
    .org-detail-panel { padding: 1.1rem; }
    .org-detail-heading { gap: .7rem; }
    .org-detail-heading .org-detail-icon { width: 2.75rem; height: 2.75rem; }
    .org-support-tiles { gap: .5rem; }
    .org-support-tile { padding: .85rem .6rem; }
    .org-practical-list { font-size: .8125rem; }
    .org-practical-list dt { gap: .55rem; }
}
@media (max-width: 60rem) {
    .org-detail-hero { grid-template-columns: 11rem minmax(0,1fr); }
    .org-detail-actions { grid-column: 1 / -1; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
    .org-detail-statement { grid-column: 1 / -1; align-items: center; }
    .org-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .org-detail-help { flex-wrap: wrap; }
    .org-detail-help .button { margin-left: 6.5rem; }
}
@media (max-width: 40rem) {
    .org-detail-hero, .org-detail-grid, .org-detail-actions { grid-template-columns: minmax(0,1fr); }
    .org-detail-logo { min-height: 0; flex-direction: row; text-align: left; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; padding: 1rem; }
    .org-detail-logo img { width: 4rem; max-height: 5rem; }
    .org-detail-logo img:only-child { width: 8rem; max-height: 8rem; }
    .org-detail-logo strong { flex: 1; font-size: 1rem; }
    .org-detail-logo .org-detail-placeholder { flex-basis: 100%; }
    .org-detail-actions, .org-detail-statement, .org-detail-support { grid-column: auto; grid-row: auto; }
    .org-detail-help { gap: 1rem; }
    .org-detail-help > .org-detail-icon { width: 3rem; height: 3rem; }
    .org-detail-help > .org-detail-icon .icon { width: 2rem; height: 2rem; }
    .org-detail-help .button { margin: 0; width: 100%; }
    .org-support-tiles { grid-template-columns: minmax(0,1fr); }
    .org-support-tile { display: grid; grid-template-columns: 2rem minmax(0,1fr); column-gap: .85rem; padding: 1rem; }
    .org-support-tile > .icon { width: 2rem; height: 2rem; grid-row: span 2; margin: 0; }
    .org-support-tile p { grid-column: 2; }
    .org-practical-list > div { grid-template-columns: minmax(0,1fr); gap: .35rem; }
    .org-practical-list dd { margin-left: 2.15rem; }
}
html[data-text-size="150"] .org-detail-grid, html[data-text-size="200"] .org-detail-grid,
html[data-text-size="150"] .org-detail-hero, html[data-text-size="200"] .org-detail-hero,
html[data-text-size="150"] .org-detail-actions, html[data-text-size="200"] .org-detail-actions,
html[data-text-size="150"] .org-support-tiles, html[data-text-size="200"] .org-support-tiles { grid-template-columns: minmax(0,1fr); }
html[data-text-size="150"] .org-detail-support, html[data-text-size="200"] .org-detail-support { grid-row: auto; }
html[data-text-size="150"] .org-detail-help, html[data-text-size="200"] .org-detail-help { flex-wrap: wrap; }
html[data-text-size="150"] .org-detail-help .button, html[data-text-size="200"] .org-detail-help .button { margin: 0; min-width: 0; }
html[data-text-size="150"] .org-detail-actions .button, html[data-text-size="200"] .org-detail-actions .button { flex-wrap: wrap; min-width: 0; }
html[data-text-size="150"] .org-detail-statement, html[data-text-size="200"] .org-detail-statement { flex-direction: column; align-items: flex-start; }
html[data-text-size="150"] .org-practical-list > div, html[data-text-size="200"] .org-practical-list > div,
html[data-text-size="150"] .org-contact-list > div:nth-child(n+3), html[data-text-size="200"] .org-contact-list > div:nth-child(n+3) { grid-template-columns: minmax(0,1fr); }
@media print {
    .organization-detail { background: #fff; }
    .org-detail-actions, .org-detail-back, .org-detail-help { display: none; }
    .org-detail-hero, .org-detail-grid { display: block; }
    .org-detail-panel { margin-bottom: 1rem; break-inside: avoid; }
}
