/* Hospital directory renewal: factual content, one grid, explicit component styles. */
:root {--bg:#f4f6f8;--paper:#fff;--card:#fff;--ink:#182d3f;--muted:#607380;--line:#dfe6eb;--accent:#087e80;--accent-soft:#eaf5f4;--radius:12px;--app-w:1248px;--page-gap:28px;--panel-pad:28px;}
body {font-size:15px;line-height:1.7;}
.mobile-shell {padding-inline:40px;background:transparent;}
.app-header {padding:26px 0;}
.app-header,.portal-nav {background:transparent;}
.brand-icon {border-radius:12px;background:#182d3f;}
.brand strong {letter-spacing:-1px;font-size:26px;}
.brand small {color:#607380;}
.portal-nav {gap:36px;border-top:0;border-bottom:1px solid #cfdbe2;}
.portal-nav a {font-size:14px;padding:12px 0;}
.app-main {padding-top:32px;}
.app-main h1 {font-size:34px;font-weight:800;letter-spacing:-1.2px;}
.app-main h2 {font-size:22px;letter-spacing:-.6px;}
.app-main h3 {font-size:17px;letter-spacing:-.3px;}
.portal-search-zone {position:relative;padding:42px;background:#182d3f;border:0;border-radius:20px;color:#fff;}
.portal-search-zone h1 {max-width:24ch;margin:0 0 18px;font-size:42px;line-height:1.3;letter-spacing:-1.8px;color:#fff;}
.portal-kicker {color:#9bd8d1;font-size:13px;letter-spacing:.5px;}
.portal-search-zone .portal-intro {color:#d1dfe6;margin-bottom:28px;}
.hero-search.portal-search {max-width:840px;border:0;border-radius:10px;padding:7px;}
.portal-search input {min-height:48px;color:#182d3f;}
.portal-search-examples,.portal-search-examples > span {color:#d1dfe6;}
.portal-search-examples a:hover {color:#fff;}
.portal-home {gap:36px;}
.portal-departments a {background:#fff;border-color:#e0e7eb;padding:22px 6px;transition:border-color .15s;}
.portal-departments a:hover {border-color:var(--accent);}
.portal-departments a > span {background:#eaf5f4;border-radius:50%;color:var(--accent);font-weight:700;}
.home-discovery > section,.portal-story {background:#fff;border:1px solid var(--line);}
.home-discovery {grid-template-columns:1.15fr 1fr;}
.portal-section-head h2 {font-size:23px;}
.portal-story {border-top:3px solid #a9cfca;}
.portal-story h3 {font-size:19px;}
.portal-region-links a {background:#f8fafb;}
.portal-site .filter-card {background:#fff;border:1px solid var(--line);padding:28px;}
.portal-site .directory-results {border:0;background:transparent;padding:0;}
.portal-site .directory-results .result-list {border:0;background:transparent;overflow:visible;}
.result-tools [data-sort-status]:empty {display:none;}
.directory-header {padding:4px 0 8px;}
.directory-header h1 {margin:8px 0 12px;}
.directory-header > p {max-width:70ch;color:var(--muted);font-size:15px;}
.directory-header > a {display:inline-block;margin-top:8px;color:var(--accent);font-size:14px;font-weight:700;}
.directory-tabs {display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.directory-tabs a {padding:9px 18px;background:#fff;border:1px solid var(--line);border-radius:24px;}
.directory-tabs .is-current {background:var(--ink);border-color:var(--ink);color:#fff;}
.primary-button,.secondary-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:8px;border:1px solid transparent;font:inherit;font-size:14px;font-weight:650;line-height:1.5;text-align:center;text-decoration:none;}
.primary-button {background:var(--accent);color:#fff;}
.secondary-button {background:#fff;color:var(--ink);border-color:#ccd9e0;}
.primary-button:hover {background:#086967;color:#fff;}
.secondary-button:hover {background:#f0f6f7;}
.portal-site .result-row.facility-card {display:grid;grid-template-columns:64px minmax(0,1fr) 132px;gap:24px;align-items:start;padding:26px;background:#fff;border:1px solid var(--line);border-radius:12px;}
.facility-card::after {display:none;}
.facility-symbol {display:grid;place-items:center;width:64px;height:64px;border-radius:14px;background:#edf4f6;color:#487382;font-size:30px;font-weight:500;}
.facility-body {min-width:0;}
.facility-body .facility-type {margin:0 0 6px;color:var(--muted);font-size:13px;}
.facility-body h2 {margin:0 0 12px;font-size:21px;line-height:1.5;}
.facility-body .facility-address {margin:0;color:#536978;font-size:14px;line-height:1.7;}
.facility-departments,.facility-hours {margin:10px 0 0;font-size:14px;color:#366968;}
.facility-phone {display:inline-block;margin-top:12px;color:#233e50;font-size:14px;}
.facility-actions {display:grid;gap:10px;}
.listing-basis {font-size:13px;color:var(--muted);}
.hospital-profile {min-width:0;}
.profile-breadcrumb {display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted);margin:0 0 22px;}
.profile-header {display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:24px;align-items:center;padding:34px;background:#fff;border:1px solid var(--line);border-radius:16px;}
.profile-symbol {display:grid;place-items:center;width:88px;height:88px;border-radius:20px;background:#eaf5f4;color:#087e80;font-size:46px;}
.profile-identity {min-width:0;}
.profile-type {color:var(--accent);font-size:13px;font-weight:700;margin:0 0 6px;}
.profile-header h1 {font-size:32px;line-height:1.4;margin:0 0 10px;}
.profile-address {color:var(--muted);font-size:14px;margin:0;}
.profile-actions {display:grid;gap:10px;}
.profile-tabs {display:flex;flex-wrap:wrap;gap:28px;padding:0 4px;border-bottom:1px solid #cfdae1;margin:18px 0 28px;}
.profile-tabs a {padding:13px 0;font-size:14px;font-weight:700;color:#3c5868;}
.profile-columns {display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:28px;align-items:start;}
.profile-content,.profile-sidebar {display:grid;gap:24px;min-width:0;}
.profile-section {padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px;scroll-margin-top:24px;min-width:0;}
.section-heading {display:flex;gap:12px;align-items:center;margin:0 0 22px;}
.section-heading h2 {margin:0;font-size:22px;}
.section-number {font-size:12px;color:#087e80;font-weight:800;letter-spacing:1px;}
.hospital-intro {font-size:16px;line-height:1.95;color:#3e5464;margin:0 0 26px;word-break:keep-all;}
.profile-section h3 {margin:22px 0 14px;}
.department-chips {display:flex;flex-wrap:wrap;gap:10px;}
.department-chips a {display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;border:1px solid #cde1dd;border-radius:8px;background:#f5faf8;font-size:14px;}
.department-chips span {font-size:12px;color:#33796e;}
.profile-feature {line-height:1.8;font-size:14px;margin-top:20px;}
.profile-feature b {display:block;color:var(--muted);font-size:12px;}
.hospital-service-group + .hospital-service-group {border-top:1px solid var(--line);margin-top:28px;padding-top:8px;}
.hospital-facts {margin:0;display:grid;gap:0;}
.hospital-facts > div {display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:13px 0;border-bottom:1px solid #eef2f4;}
.hospital-facts dt {color:#4e6674;font-size:14px;font-weight:600;line-height:1.8;}
.hospital-facts dd {font-size:15px;line-height:1.85;color:#253c4b;}
.hospital-facts dd small {display:block;font-size:13px;color:var(--muted);margin-top:5px;line-height:1.8;}
.profile-footnote {margin:20px 0 0;color:#667b87;font-size:12px;line-height:1.8;}
.profile-contact {padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px;}
.profile-contact h2 {margin:0 0 20px;font-size:18px;}
.profile-contact > .primary-button {display:flex;margin-top:20px;}
.profile-contact p {font-size:14px;line-height:1.8;}
.schedule-list,.basic-facts {margin:0;}
.schedule-list > div,.basic-facts > div {display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eef2f4;font-size:13px;}
.schedule-list dt,.basic-facts dt {font-weight:500;color:var(--muted);}
.schedule-list dd {font-weight:600;text-align:right;}
.schedule-note,.profile-muted {color:var(--muted);}
.profile-text-link {display:block;margin-top:20px;font-size:14px;color:var(--accent);}
.location-address {font-size:16px;line-height:1.8;}
.location-links {display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;}
.nearby-parking p {display:grid;gap:4px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;}
.nearby-parking span {font-size:13px;color:var(--muted);}
.profile-neighbors {display:grid;gap:0;}
.profile-neighbors a {position:relative;display:grid;gap:6px;padding:16px 32px 16px 0;border-bottom:1px solid var(--line);}
.profile-neighbors b {font-size:15px;}
.profile-neighbors span {font-size:13px;color:var(--muted);}
.profile-neighbors i {position:absolute;right:0;top:20px;font-style:normal;color:var(--accent);}
.profile-data-note {display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center;margin-top:26px;font-size:12px;line-height:1.8;color:var(--muted);}
.profile-data-note a {color:var(--accent);}
.profile-data-note details {flex-basis:100%;}
.profile-data-note summary {cursor:pointer;}
.closure-banner {background:#fff0e8;border:1px solid #e7ba9c;padding:16px;border-radius:10px;}
.profile-section [id],.profile-section {scroll-margin-top:24px;}
.site-footer {background:transparent;font-size:13px;}
.mobile-header-actions {display:none;}
@media (max-width:1000px) {
  .mobile-shell {padding-inline:28px;}
  .profile-header {grid-template-columns:72px minmax(0,1fr);padding:26px;}
  .profile-symbol {width:72px;height:72px;}
  .profile-actions {grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));}
  .profile-columns {grid-template-columns:minmax(0,1fr) 260px;gap:20px;}
  .profile-section {padding:24px;}
  .hospital-facts > div {grid-template-columns:minmax(0,1fr);gap:4px;}
}
@media (max-width:760px) {
  :root {--page-gap:22px;--panel-pad:20px;}
  .mobile-shell {padding-inline:18px;}
  .app-header {padding:20px 0;}
  .portal-nav {gap:0;}
  .portal-nav a {font-size:13px;padding:12px 4px;}
  .app-main {padding-top:24px;}
  .app-main h1 {font-size:28px;}
  .portal-search-zone {padding:28px 24px;border-radius:14px;}
  .portal-search-zone h1 {font-size:32px;}
  .portal-search-zone .portal-intro {font-size:14px;}
  .portal-search input {font-size:13px;min-height:44px;}
  .portal-search button {font-size:13px;}
  .home-discovery {grid-template-columns:minmax(0,1fr);}
  .portal-departments a {padding:16px 4px;}
  .portal-site .filter-card {padding:20px;}
  .portal-site .result-row.facility-card {grid-template-columns:44px minmax(0,1fr);gap:14px;padding:20px;}
  .facility-symbol {width:44px;height:44px;font-size:24px;border-radius:10px;}
  .facility-body h2 {font-size:19px;}
  .facility-actions {grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));}
  .facility-address {font-size:13px;}
  .profile-header {grid-template-columns:52px minmax(0,1fr);padding:22px;gap:16px;}
  .profile-symbol {width:52px;height:52px;font-size:30px;border-radius:12px;align-self:start;}
  .profile-header h1 {font-size:25px;}
  .profile-tabs {gap:20px;margin-bottom:22px;}
  .profile-tabs a {font-size:13px;}
  .profile-columns {display:grid;grid-template-columns:minmax(0,1fr);gap:22px;}
  .profile-sidebar,.profile-content {width:100%;gap:22px;}
  .profile-content {display:contents;}
  .profile-content > * {order:2;}
  .profile-content > :first-child {order:0;}
  .profile-sidebar {order:1;grid-template-columns:repeat(2,minmax(0,1fr));}
  .profile-contact {padding:20px;}
  .profile-section {padding:22px;}
  .hospital-intro {font-size:15px;}
  .hospital-facts dd {font-size:14px;}
  .profile-actions .primary-button {font-size:13px;}
}
@media (max-width:500px) {
  .profile-sidebar {grid-template-columns:minmax(0,1fr);}
  .portal-search-zone {padding:24px 20px;}
  .portal-search-zone h1 {font-size:28px;}
  .profile-header {padding:20px;gap:12px;}
  .profile-header h1 {font-size:23px;}
  .profile-actions {grid-template-columns:minmax(0,1fr);}
  .profile-contact {padding:20px;}
}

/* Mobile-first navigation and touch controls; desktop remains unchanged. */
@media (max-width:760px) {
  .mobile-shell {padding-inline:16px;padding-bottom:calc(88px + env(safe-area-inset-bottom));}
  .app-header {flex-wrap:nowrap;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);}
  .brand {gap:8px;}
  .brand-icon {width:34px;height:34px;font-size:20px;}
  .brand strong {font-size:21px;}
  .brand small {display:none;}
  .portal-nav,.app-header .global-search,.portal-header-links {display:none;}
  .mobile-header-actions {display:flex;align-items:center;gap:4px;margin-left:auto;}
  .mobile-search-link,.mobile-menu > summary {display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;color:var(--ink);font-size:14px;cursor:pointer;}
  .mobile-menu > summary {list-style:none;}
  .mobile-menu > summary::-webkit-details-marker {display:none;}
  .mobile-menu[open] > summary {background:#e2efef;border-radius:8px;}
  .mobile-menu > nav {position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 12px 28px #172e3f18;}
  .mobile-menu nav a {display:flex;align-items:center;min-height:48px;padding:10px 12px;border-radius:8px;font-size:14px;}
  .mobile-menu nav a:hover {background:#edf5f5;}
  .app-main {padding-top:18px;}
  .portal-home {gap:26px;}
  .portal-search-zone {padding:24px 18px;}
  .portal-search-zone h1 {font-size:28px;line-height:1.4;}
  .portal-kicker {margin-bottom:10px;}
  .portal-search-zone .portal-intro {margin-bottom:18px;line-height:1.7;}
  .portal-search input,.global-search input,.filter-card input,.filter-card select,.comparison-panel input {font-size:16px;}
  .hero-search.portal-search {gap:4px;padding:5px;}
  .portal-search input {padding:8px 6px;}
  .portal-search button {flex-basis:54px;width:54px;min-height:46px;}
  .portal-search-examples {margin-top:12px;gap:4px 12px;}
  .portal-search-examples a {display:inline-flex;align-items:center;min-height:40px;}
  .portal-section-head > a {display:flex;align-items:center;min-height:44px;}
  .portal-region-links a,.primary-button,.secondary-button,.result-tools button {min-height:46px;}
  .portal-site .filter-card {padding:18px;}
  .filter-card .hint {font-size:14px;}
  .facility-symbol {display:none;}
  .portal-site .result-row.facility-card {grid-template-columns:minmax(0,1fr);gap:14px;padding:18px;}
  .facility-body h2 {font-size:19px;line-height:1.5;}
  .facility-actions {grid-column:1;}
  .facility-phone {min-height:40px;display:inline-flex;align-items:center;margin-top:6px;}
  .profile-breadcrumb {margin-bottom:12px;min-height:24px;}
  .profile-header {grid-template-columns:minmax(0,1fr);padding:20px;gap:16px;}
  .profile-symbol {display:none;}
  .profile-header h1 {font-size:25px;}
  .profile-actions {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .profile-actions .call-number {display:none;}
  .profile-actions a {min-height:48px;font-size:14px;}
  .profile-tabs {gap:4px 18px;padding:0;margin:12px 0 20px;}
  .profile-tabs a {display:flex;align-items:center;min-height:44px;padding:8px 0;}
  .profile-section {padding:20px;}
  .hospital-intro {line-height:1.85;}
  .department-chips a {min-height:44px;}
  .schedule-list > div,.basic-facts > div {font-size:14px;min-height:44px;}
  .bottom-nav {min-height:62px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:#fff;}
  .bottom-nav a {min-height:48px;display:grid;place-items:center;font-size:13px;}
}
.clinical-programs {padding-left:20px;line-height:1.9;overflow-wrap:anywhere;}
.clinical-details {border-top:1px solid #e4ebe8;margin-top:16px;padding-top:8px;}
.clinical-details summary {cursor:pointer;min-height:48px;padding:12px 0;font-weight:700;}
.selected-service {grid-column:1/-1;padding:12px;background:#edf7f3;border-radius:10px;overflow-wrap:anywhere;}
.selected-service a {display:inline-flex;align-items:center;min-height:44px;margin-left:12px;}
.portal-service-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.portal-service-links a {display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:12px;background:#f4f9f8;border:1px solid #e3ece9;border-radius:10px;font-size:14px;line-height:1.6;word-break:keep-all;overflow-wrap:anywhere;}
.portal-service-links a span {flex-shrink:0;}

/* Mednote visual identity: a neighborhood field guide, not an admin directory. */
:root {--bg:#f8faf8;--ink:#183c36;--muted:#60746e;--line:#dfe9e3;--accent:#087b61;--accent-soft:#e5f4ec;--radius:18px;}
body {background:var(--bg);color:var(--ink);}
.brand-icon {background:#087b61;border-radius:11px 11px 11px 3px;box-shadow:3px 3px 0 #d5eadb;}
.brand strong {color:#183c36;}
.portal-nav {border-color:var(--line);gap:32px;}
.portal-nav a {color:#536961;}
.portal-nav a.is-current {color:var(--accent);border-bottom-color:var(--accent);}
.portal-home {gap:44px;}
.portal-search-zone {display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:20px;align-items:center;padding:48px;background:#e5f3e9;border:1px solid #d6e9dc;border-radius:28px;color:var(--ink);overflow:hidden;}
.home-hero-copy {position:relative;z-index:1;min-width:0;}
.portal-kicker {display:flex;align-items:center;gap:8px;color:#32624e;letter-spacing:.1px;font-weight:700;margin:0 0 20px;}
.portal-kicker > span {width:7px;height:7px;border-radius:50%;background:#087b61;box-shadow:0 0 0 5px #087b610b;}
.portal-search-zone h1 {max-width:none;font-size:42px;line-height:1.4;letter-spacing:-1.9px;color:#193d33;margin-bottom:20px;word-break:keep-all;}
.portal-search-zone h1 em {font-style:normal;color:#087b61;}
.portal-search-zone .portal-intro {color:#4e6b5e;font-size:15px;line-height:1.8;margin-bottom:26px;}
.mobile-break {display:none;}
.hero-search.portal-search {box-shadow:0 8px 24px #2457410b;border:1px solid #c9ded0;border-radius:14px;padding:6px;}
.portal-search input {color:var(--ink);font-size:16px;}
.portal-search button {background:var(--accent);border-radius:10px;}
.portal-search-examples,.portal-search-examples > span {color:#507362;}
.portal-search-examples {font-size:12px;gap:8px 16px;}
.portal-search-examples a:hover {color:#064b3c;text-decoration:underline;}
.neighborhood-art {position:relative;height:300px;min-width:0;}
.art-orbit {position:absolute;inset:12px 0 0;border:1px solid #bdd9c4;border-radius:50%;background:#d5e9d955;}
.art-street {position:absolute;bottom:39px;left:0;right:0;height:28px;border-radius:50%;background:#b7d8c0;transform:rotate(-6deg);}
.art-clinic {position:absolute;bottom:58px;left:28%;width:134px;height:172px;border-radius:14px 14px 5px 5px;background:#fffdf3;box-shadow:13px 10px 0 #b1d2bb;transform:rotate(-5deg);}
.art-cross {position:absolute;top:10px;left:49px;color:#138469;font-size:40px;font-weight:800;line-height:1;}
.art-windows {display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:65px 25px 0;}
.art-windows i {height:22px;border-radius:4px;background:#acd4c1;}
.art-door {position:absolute;bottom:0;width:29px;height:32px;left:53px;background:#398d73;border-radius:6px 6px 0 0;}
.art-building {position:absolute;left:4%;bottom:55px;width:64px;height:100px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:16px 12px;background:#a4cbb8;border-radius:9px 9px 2px 2px;transform:rotate(-5deg);}
.art-building i {height:18px;background:#e4f2e7;border-radius:3px;}
.art-tree {position:absolute;right:5%;bottom:61px;width:42px;height:83px;background:#5a9d76;border-radius:50% 50% 40% 40%;transform:rotate(7deg);}
.art-tree:after {content:'';position:absolute;width:5px;height:60px;background:#32664e;bottom:-16px;left:18px;border-radius:3px;}
.art-label {position:absolute;display:flex;align-items:center;gap:8px;border-radius:12px;background:#fff;padding:11px 15px;font-size:13px;font-weight:700;color:#306a53;box-shadow:0 7px 20px #24574112;white-space:nowrap;}
.art-label-top {top:3px;right:0;transform:rotate(5deg);}
.art-label-bottom {bottom:0;left:10%;transform:rotate(-4deg);}
.portal-section-head {margin-bottom:18px;}
.portal-section-head h2 {font-size:23px;letter-spacing:-.8px;}
.portal-section-head > a {color:#547466;font-size:12px;}
.portal-departments {gap:12px;}
.portal-departments a {border:0;background:transparent;padding:14px 4px;border-radius:18px;}
.portal-departments a > span {width:66px;height:66px;border-radius:23px;background:#e7f1e9;color:#33745a;margin-bottom:12px;transition:transform .18s;}
.portal-departments a:nth-child(3n+2) > span {background:#f4eddc;color:#8f7040;}
.portal-departments a:nth-child(3n) > span {background:#e8edf8;color:#637cb0;}
.portal-departments a:hover {background:#fff;}
.portal-departments a:hover > span {transform:translateY(-3px);}
.portal-departments b {font-size:14px;}
.home-discovery {grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.home-discovery > section {border-radius:22px;padding:28px;border:1px solid var(--line);}
.home-discovery .home-services {grid-column:1/-1;background:#fff;}
.home-services .home-caption {margin:-4px 0 20px;color:var(--muted);}
.portal-service-links {grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.portal-service-links a {background:#f5f8f4;border:0;border-radius:12px;padding:16px 18px;min-height:62px;font-weight:600;}
.portal-service-links a:hover {background:#e6f1e8;}
.portal-service-links a span {display:grid;place-items:center;background:#fff;width:28px;height:28px;border-radius:50%;color:#467a61;}
.home-discovery #neighborhood {background:#fff;}
.portal-region-links {gap:8px;}
.portal-region-links a {border:0;border-radius:8px;background:#f3f6f2;color:#4a6356;}
.home-discovery .home-pharmacy {background:#eef0fa;border-color:#e1e4f1;}
.portal-pharmacy-links a {background:#ffffffb8;color:#4a587f;border-radius:12px;min-height:62px;}
.portal-pharmacy-links a:hover {background:#fff;}
.portal-story-grid {gap:20px;}
.portal-story {border:0;border-radius:20px;background:#eef3ed;padding:26px;}
.portal-story:nth-child(2) {background:#f4eee2;}
.portal-story:nth-child(3) {background:#eaf0f7;}
.story-top {display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.portal-story small {border:1px solid #96ac9955;border-radius:30px;padding:5px 10px;font-size:12px;color:#506c56;}
.story-number {font-size:35px;font-weight:500;line-height:1;color:#667b6755;letter-spacing:-2px;}
.portal-story h3 {font-size:21px;line-height:1.6;max-width:20ch;}
.portal-story p {color:#617267;font-size:14px;}
.portal-read-link {display:flex;align-items:center;justify-content:space-between;border-top:1px solid #78958033;padding-top:16px;margin-top:24px;color:#315e46;}
.portal-read-link > span {font-size:23px;}
.portal-site .filter-card {border-radius:22px;background:#edf4ee;border-color:#dce7dd;}
.filter-card .eyebrow {color:#60826b;letter-spacing:1.8px;font-size:10px;}
.portal-site .result-row.facility-card {border-radius:18px;border-color:#e0e8e1;box-shadow:0 3px 12px #24453303;}
.facility-symbol {background:#eaf3eb;color:#3d8664;border-radius:20px;}
.facility-body h2 {color:#203e32;}
.primary-button,.secondary-button {border-radius:11px;}
.secondary-button {border-color:#d8e4dc;color:#31533f;}
.profile-header {background:#eaf3eb;border-color:#d8e6dc;border-radius:24px;padding:34px;}
.profile-symbol {background:#fff;color:#238366;border-radius:24px;}
.profile-type {color:#34775a;}
.profile-header h1 {color:#203e32;}
.profile-tabs {border-color:#d5e3d9;}
.profile-tabs a {color:#50735e;}
.profile-tabs a:hover {color:#087b61;}
.profile-section,.profile-contact {border-color:#e0e8e1;border-radius:18px;box-shadow:0 3px 12px #24453303;}
.profile-section .section-heading {margin-bottom:18px;}
.section-number {display:none;}
.hospital-intro {color:#455f50;margin-bottom:0;}
.profile-contact:first-child {border-top:3px solid #88b69a;}
.department-chips a {background:#f0f6ef;border-color:#deeadc;border-radius:10px;}
.department-chips span {color:#537b5c;}
.hospital-facts dt {color:#587263;}
.hospital-facts dd {color:#294435;}
.profile-footnote {color:#687c6e;}
.site-footer {border-top:1px solid #dbe5dc;padding-top:32px;margin-top:56px;}
.site-footer strong {font-size:22px;color:#274a36;}
a:focus-visible,button:focus-visible,summary:focus-visible {outline:3px solid #167b60;outline-offset:4px;}
.bottom-nav a {gap:3px;}
.bottom-nav a > span {display:block;}
.bottom-nav a.active {color:#087b61;background:#eef6ed;}
@media (max-width:1000px) {
  .portal-search-zone {padding:32px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);}
  .portal-search-zone h1 {font-size:34px;}
  .neighborhood-art {transform:scale(.85);transform-origin:center;}
}
@media (max-width:760px) {
  .app-header {border-bottom:0;padding-block:12px;}
  .app-main {padding-top:10px;}
  .portal-home {gap:32px;}
  .portal-search-zone {display:block;padding:26px 20px 18px;border-radius:23px;}
  .portal-search-zone h1 {font-size:29px;line-height:1.43;letter-spacing:-1.35px;margin-bottom:14px;}
  .portal-kicker {font-size:12px;margin-bottom:16px;}
  .portal-search-zone .portal-intro {font-size:13px;margin-bottom:20px;}
  .neighborhood-art {display:none;}
  .mobile-break {display:block;}
  .hero-search.portal-search {border-radius:13px;padding:5px;}
  .portal-search input {font-size:16px;}
  .portal-search-examples {gap:4px 12px;margin-top:8px;}
  .portal-search-examples > span {display:none;}
  .portal-section-head {margin-bottom:10px;}
  .portal-section-head h2 {font-size:21px;}
  .portal-section-head > a {font-size:11px;}
  .portal-departments {gap:10px 4px;}
  .portal-departments a {padding:8px 0;}
  .portal-departments a > span {width:54px;height:54px;border-radius:18px;margin-bottom:9px;}
  .portal-departments b {font-size:12px;letter-spacing:-.5px;}
  .home-discovery {grid-template-columns:minmax(0,1fr);gap:20px;}
  .home-discovery > section {padding:22px 18px;border-radius:20px;}
  .home-services .home-caption {font-size:13px;line-height:1.8;margin:0 0 16px;}
  .portal-service-links {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .portal-service-links a {padding:12px;gap:6px;min-height:72px;font-size:13px;font-weight:500;}
  .portal-service-links a span {width:22px;height:22px;font-size:12px;}
  .portal-region-links a {font-size:13px;}
  .portal-story {padding:22px;border-radius:18px;}
  .story-top {margin-bottom:12px;}
  .portal-story h3 {max-width:none;font-size:20px;}
  .portal-read-link {margin-top:18px;}
  .profile-header {padding:22px 20px;border-radius:20px;}
  .profile-header h1 {font-size:26px;letter-spacing:-1px;}
  .profile-address {font-size:14px;line-height:1.8;}
  .profile-section,.profile-contact {padding:22px 20px;border-radius:17px;}
  .profile-section .section-heading h2 {font-size:20px;}
  .profile-tabs {gap:4px 20px;}
  .profile-columns {gap:18px;}
  .profile-sidebar {gap:18px;}
  .bottom-nav {border-top:1px solid #dce8de;background:#ffffffed;backdrop-filter:blur(16px);}
  .bottom-nav a {font-size:11px;line-height:1.2;border-radius:12px;}
}
@media (prefers-reduced-motion:reduce) {.portal-departments a > span {transition:none;}}
.home-hospital-finder {grid-column:1/-1;background:#edf4ee!important;}
.hospital-finder-form {display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;margin-top:20px;}
.hospital-finder-form label {display:grid;gap:8px;font-size:13px;font-weight:600;min-width:0;}
.hospital-finder-form select {width:100%;min-width:0;min-height:48px;border:1px solid #ccdcd0;background:#fff;color:var(--ink);border-radius:10px;padding:10px;font:inherit;font-size:16px;}
.hospital-finder-form button {min-height:48px;}
.home-trust {display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding:24px 0;border-top:1px solid var(--line);font-size:13px;}
.home-trust > div {flex:1 1 440px;}
.home-trust strong {font-size:17px;}
.home-trust p {color:var(--muted);margin:8px 0;line-height:1.9;}
.home-trust > a {display:inline-flex;align-items:center;min-height:44px;color:var(--accent);}
.search-page > .comparison-panel {margin-top:24px;}
.location-map {margin-top:18px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#edf2ed;}
.location-map iframe {display:block;width:100%;height:340px;border:0;}
.map-caption {font-size:12px;color:var(--muted);margin:8px 0 0;}
.region-jump {display:flex;flex-wrap:wrap;gap:8px;}
.region-jump a {display:flex;align-items:center;padding:10px 15px;min-height:44px;border:1px solid var(--line);border-radius:24px;background:#fff;font-size:13px;}
.region-discovery {scroll-margin-top:20px;}
.region-discovery > p {color:var(--muted);line-height:1.9;max-width:80ch;}
.region-topic-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;}
.region-topic-grid a {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;min-height:68px;padding:14px 16px;background:#f0f6f0;border-radius:12px;}
.region-topic-grid strong {font-size:15px;word-break:keep-all;overflow-wrap:anywhere;}
.region-topic-grid span {font-size:13px;color:#547263;}
.region-topic-grid i {font-style:normal;margin-left:8px;}
.region-pharmacy {background:#f3f3fb!important;}
.region-hour-summary {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0;}
.region-hour-summary > div {display:grid;gap:6px;background:#fff;border-radius:12px;padding:16px;}
.region-hour-summary span {font-size:13px;color:var(--muted);}
.region-hour-summary strong {font-size:21px;}
.region-finder {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:18px;background:#e8f3eb;border-radius:16px;}
.region-finder label {display:grid;gap:7px;min-width:0;font-size:13px;font-weight:700;}
.region-finder input {width:100%;min-height:48px;padding:10px 14px;border:1px solid #cadacf;border-radius:10px;background:#fff;font:inherit;font-size:16px;}
.region-finder button {align-self:end;min-height:48px;padding:10px 22px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:700;}
.region-index-actions {display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.region-index-actions > a {display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border-radius:10px;background:#fff;color:#465777;font-size:13px;}
.region-index-actions > .primary-button {background:var(--accent);color:#fff;}
.region-preview .compact-list a:nth-child(n+7) {display:none;}
.region-index-footer {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 4px;border-top:1px solid var(--line);}
.region-index-footer p {margin:7px 0 0;color:var(--muted);font-size:13px;}
.region-index-footer a {flex-shrink:0;color:var(--accent);}
@media(max-width:760px) {.region-topic-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.region-topic-grid a {padding:12px;align-items:start;flex-direction:column;}.region-hour-summary {grid-template-columns:repeat(2,minmax(0,1fr));}.region-discovery h2 {font-size:21px;}.region-finder {grid-template-columns:minmax(0,1fr);}.region-finder button {width:100%;}.region-index-footer {align-items:flex-start;flex-direction:column;}}
@media(max-width:760px) {.location-map iframe {height:280px;}.location-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.location-links .primary-button {grid-column:1/-1;}}
@media(max-width:760px) {.hospital-finder-form {grid-template-columns:repeat(2,minmax(0,1fr));}.hospital-finder-form button {align-self:end;}.home-trust {padding:20px 4px;}}
