/* Individual provider guides and the healthcare hub's guide directory. */
.hc-reference.hc-provider-guide {
  --hcg-blue: #075fcf;
  --hcg-title: #123f82;
  --hcg-text: #294b70;
  --hcg-muted: #526985;
  --hcg-border: #d1e1f3;
  --hcg-pale: #f3f8ff;
  color: var(--hcg-text);
}
.hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: min(1400px,calc(100% - 48px)); margin-inline: auto; }
.hc-provider-guide .hcg-wrap > :is(.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: 100%; }
.hc-provider-guide :is(.hcg-breadcrumb,.hc-breadcrumb) { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; padding-block: 17px 11px; color: #4c6483; font-size: 12px; font-weight: 400; line-height: 1.4; }
.hc-provider-guide :is(.hcg-breadcrumb,.hc-breadcrumb) a { color: #0755b5; }
.hc-provider-guide .hcg-hero { display: grid; grid-template-columns: minmax(0,.45fr) minmax(0,.55fr); align-items: stretch; overflow: hidden; border: 1px solid var(--hcg-border); border-radius: 9px; background: linear-gradient(120deg,#eef6ff,#fff 80%); }
.hc-provider-guide .hcg-hero-photo { display: block; width: 100%; height: 100%; min-height: 310px; object-fit: cover; background: #e7f0fa; }
.hc-provider-guide .hcg-hero-photo img { display: block; width: 100%; height: 100%; min-height: 310px; object-fit: cover; }
.hc-provider-guide figure.hcg-hero-photo { display: flex; flex-direction: column; }
.hc-provider-guide figure.hcg-hero-photo img { flex: 1; height: 0; }
.hc-provider-guide .hcg-hero-photo figcaption { padding: 8px 10px; border-top: 1px solid var(--hcg-border); background: #f8fbff; color: #4f6682; font-size: 10px; line-height: 1.4; }
.hc-provider-guide .hcg-hero-photo figcaption a { text-decoration: underline; }
.hc-provider-guide .hcg-hero-content { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; padding: 28px 30px; }
.hc-provider-guide .hcg-hero h1 { margin: 8px 0 10px; color: #103b79; font-size: clamp(28px,2.8vw,43px); font-weight: 750; line-height: 1.08; letter-spacing: -.04em; text-wrap: balance; }
.hc-provider-guide .hcg-hero-content > p { max-width: 660px; color: #45617d; font-size: 14px; line-height: 1.6; }
.hc-provider-guide .hcg-hero-content > p[lang] { margin-bottom: 8px; color: #375776; font-size: 18px; line-height: 1.4; }
.hc-provider-guide :is(.hcg-eyebrow,.hcg-category) { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 5px 9px; border: 1px solid #bfd8f5; border-radius: 20px; background: #e9f3ff; color: #1755a1; font-size: 11px; font-weight: 600; line-height: 1.3; }
.hc-provider-guide .hcg-hero .hc-actions { margin-top: 17px; }
.hc-provider-guide .hcg-hero .hc-button { min-height: 37px; font-size: 12px; }
.hc-provider-guide .hcg-hero-note { margin-top: 12px; color: #60718a; font-size: 11px; line-height: 1.5; }
.hc-provider-guide .hcg-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 17px; width: 100%; margin-top: 16px; padding: 0; list-style: none; }
.hc-provider-guide .hcg-facts > :is(div,li) { min-width: 0; padding: 10px 0; border-top: 1px solid var(--hcg-border); }
.hc-provider-guide .hcg-facts dt { color: #5d728c; font-size: 10px; font-weight: 600; letter-spacing: .035em; line-height: 1.4; text-transform: uppercase; }
.hc-provider-guide .hcg-facts dd { margin: 4px 0 0; color: #254a75; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.hc-provider-guide .hcg-facts strong { color: #264c78; font-size: 12px; line-height: 1.4; }
.hc-provider-guide .hcg-facts small { display: block; margin-top: 3px; color: #5b6e87; font-size: 11px; line-height: 1.4; }
.hc-provider-guide .hcg-jumps { display: flex; flex-wrap: wrap; gap: 7px; padding-block: 14px; border-bottom: 1px solid var(--hcg-border); }
.hc-provider-guide .hcg-jumps a { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 35px; padding: 8px 12px; border: 1px solid #c2d7f0; border-radius: 5px; background: #fff; color: #18539f; font-size: 12px; line-height: 1.3; text-align: center; }
.hc-provider-guide .hcg-jumps a:hover { border-color: #6d9cd8; background: #edf5ff; text-decoration: none; }
.hc-provider-guide .hcg-layout { display: grid; grid-template-columns: minmax(0,1fr) 280px; align-items: start; gap: 16px; padding-block: 16px 22px; }
.hc-provider-guide :is(.hcg-main,.hcg-side) { display: grid; align-content: start; gap: 14px; min-width: 0; }
.hc-provider-guide .hcg-section { min-width: 0; padding: 20px; border: 1px solid var(--hcg-border); border-radius: 8px; background: #fff; }
.hc-provider-guide .hcg-section:target { border-color: #72a1df; box-shadow: 0 0 0 3px #dcecff; }
.hc-provider-guide .hcg-section > h2 { margin-bottom: 10px; color: var(--hcg-title); font-size: 23px; line-height: 1.2; }
.hc-provider-guide .hcg-section > h3 { margin-block: 17px 7px; color: #234d80; font-size: 16px; line-height: 1.3; }
.hc-provider-guide .hcg-section > h3:first-child { margin-top: 0; }
.hc-provider-guide .hcg-section > p, .hc-provider-guide .hcg-section > :is(ul,ol) > li { color: #365574; font-size: 13px; line-height: 1.65; }
.hc-provider-guide .hcg-section > :is(p,ul,ol,dl,details) + :is(p,ul,ol,dl,details) { margin-top: 11px; }
.hc-provider-guide .hcg-section > :is(ul,ol) { padding-left: 20px; }
.hc-provider-guide .hcg-section > :is(ul,ol) > li + li { margin-top: 7px; }
.hc-provider-guide .hcg-section > :is(ul,ol) > li::marker { color: #477bad; }
.hc-provider-guide .hcg-section a:not(.hc-button) { text-underline-offset: 3px; }
.hc-provider-guide .hcg-section a:not(.hc-button):hover { text-decoration: underline; }
.hc-provider-guide .hcg-section > .hc-heading { margin-bottom: 13px; }
.hc-provider-guide .hcg-section > .hc-heading h2 { color: var(--hcg-title); font-size: 22px; }
.hc-provider-guide .hcg-section > .hc-heading p { color: var(--hcg-muted); font-size: 12px; line-height: 1.5; }
.hc-provider-guide .hcg-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 13px; padding: 0; list-style: none; }
.hc-provider-guide .hcg-services > :is(article,li,div,a) { min-width: 0; padding: 13px; border: 1px solid #d6e5f6; border-radius: 6px; background: #f6faff; }
.hc-provider-guide .hcg-services h3 { margin-bottom: 6px; color: #224d82; font-size: 14px; line-height: 1.3; }
.hc-provider-guide .hcg-services :is(p,li) { color: #506783; font-size: 12px; line-height: 1.5; }
.hc-provider-guide .hcg-services > a:hover { border-color: #81abe0; text-decoration: none; }
.hc-provider-guide .hcg-note { padding: 12px 14px; border: 1px solid #d3e3f6; border-left: 3px solid #5991d8; border-radius: 5px; background: #f2f7ff; color: #355a83; font-size: 12px; line-height: 1.55; }
.hc-provider-guide .hcg-note :is(p,li) { color: inherit; font-size: inherit; line-height: inherit; }
.hc-provider-guide .hcg-note > p + p { margin-top: 7px; }
.hc-provider-guide .hcg-note[data-tone="warning"] { border-color: #eadcbf; border-left-color: #a67922; background: #fffaf0; color: #6a522c; }
.hc-provider-guide .hcg-note[data-tone="green"] { border-color: #cce6dc; border-left-color: #36836b; background: #f0faf5; color: #2e6554; }
.hc-provider-guide .hcg-side .hcg-section { padding: 15px; background: linear-gradient(135deg,#f5f9ff,#fff); }
.hc-provider-guide .hcg-side .hcg-section > h2 { margin-bottom: 10px; font-size: 17px; }
.hc-provider-guide .hcg-side .hcg-section .hc-heading h2 { font-size: 17px; }
.hc-provider-guide .hcg-side :is(p,li,dd) { font-size: 12px; line-height: 1.55; }
.hc-provider-guide .hcg-side .hcg-facts { grid-template-columns: minmax(0,1fr); margin-top: 0; }
.hc-provider-guide .hcg-side .hcg-facts > :first-child { padding-top: 0; border-top: 0; }
.hc-provider-guide .hcg-contact { display: grid; gap: 9px; min-width: 0; }
.hc-provider-guide .hcg-contact > a { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 35px; max-width: 100%; padding: 8px 10px; border: 1px solid #abc8ed; border-radius: 5px; background: #fff; color: #1453a6; font-size: 12px; font-weight: 600; line-height: 1.35; text-align: center; overflow-wrap: anywhere; }
.hc-provider-guide .hcg-contact > a:hover { background: #edf5ff; text-decoration: none; }
.hc-provider-guide .hcg-contact > a[href^="tel:"] { background: #eaf3ff; border-color: #8fb7e9; color: #174b94; }
.hc-provider-guide .hcg-source-list { display: grid; gap: 10px; margin: 0; padding-left: 19px; }
.hc-provider-guide .hcg-source-list li { color: #4d6581; font-size: 12px; line-height: 1.55; overflow-wrap: anywhere; }
.hc-provider-guide .hcg-source-list a { color: #1057ad; text-decoration: underline; }
.hc-provider-guide .hcg-source-list small { display: block; margin-top: 2px; color: #64778f; font-size: 10px; line-height: 1.4; }
.hc-provider-guide .hcg-location-card { min-width: 0; padding: 13px; border: 1px solid #cddff3; border-radius: 6px; background: #f6faff; }
.hc-provider-guide .hcg-location-card h3 { margin-bottom: 7px; color: #214f86; font-size: 15px; line-height: 1.3; }
.hc-provider-guide .hcg-location-card p { color: #45617d; font-size: 12px; line-height: 1.55; }
.hc-provider-guide .hcg-location-card p + p { margin-top: 7px; }
.hc-provider-guide .hcg-location-card > a { display: inline-flex; align-items: center; gap: 6px; margin-top: 9px; font-size: 12px; font-weight: 600; }
.hc-provider-guide .hcg-related { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; margin-block: 0 22px; }
.hc-provider-guide .hcg-related > :is(h2,p,header) { grid-column: 1 / -1; }
.hc-provider-guide .hcg-related > h2 { color: #153f7c; font-size: 23px; line-height: 1.2; }
.hc-provider-guide .hcg-related > p { color: #58708a; font-size: 12px; line-height: 1.5; }
.hc-provider-guide .hcg-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-column: 1 / -1; gap: 11px; }
.hc-provider-guide .hcg-related > :is(a,article), .hc-provider-guide .hcg-related-grid > :is(a,article) { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; min-width: 0; overflow: hidden; padding: 12px; border: 1px solid #d3e3f6; border-radius: 6px; background: #fff; }
.hc-provider-guide .hcg-related :is(a,article) > img { display: block; width: calc(100% + 24px); max-width: none; height: 110px; margin: -12px -12px 2px; object-fit: cover; background: #edf4fc; }
.hc-provider-guide .hcg-related :is(strong,h3) { color: #174d95; font-size: 13px; line-height: 1.3; }
.hc-provider-guide .hcg-related :is(small,p,span) { color: #536b86; font-size: 11px; line-height: 1.45; }
.hc-provider-guide .hcg-related > a:hover, .hc-provider-guide .hcg-related-grid > a:hover { border-color: #7da7dc; background: #f7fbff; text-decoration: none; }
.hc-provider-guide .hcg-main > .hcg-related { width: 100%; margin-bottom: 0; }
.hc-provider-guide :is(.hcg-table-scroll,.hcg-section .hc-table-scroll) { max-width: 100%; overflow-x: auto; border: 1px solid #d6e4f5; border-radius: 5px; }
.hc-provider-guide .hcg-table-scroll table { width: 100%; min-width: 640px; border-collapse: collapse; color: #375778; font-size: 12px; line-height: 1.5; text-align: left; }
.hc-provider-guide .hcg-table-scroll :is(th,td) { padding: 10px 11px; border-bottom: 1px solid #dce7f5; vertical-align: top; }
.hc-provider-guide .hcg-table-scroll th { color: #244f83; background: #edf5ff; }
.hc-provider-guide .hcg-table-scroll tr:last-child > * { border-bottom: 0; }
.hc-provider-guide .hcg-section summary { cursor: pointer; color: #1c559d; font-size: 13px; font-weight: 600; line-height: 1.4; }
.hc-provider-guide .hcg-section details[open] > summary { margin-bottom: 9px; }

/* The hub's provider guide groups share the guide accent, without affecting maps. */
.hc-reference .hc-provider-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.hc-reference .hc-provider-groups > :is(header,h2,p) { grid-column: 1 / -1; }
.hc-reference .hc-provider-group { min-width: 0; padding: 15px; border: 1px solid #d1e2f5; border-radius: 7px; background: linear-gradient(135deg,#f3f8ff,#fff); }
.hc-reference .hc-provider-group > :is(h2,h3) { margin-bottom: 6px; color: #17488d; font-size: 18px; line-height: 1.25; }
.hc-reference .hc-provider-group > .hc-heading h2, .hc-reference .hc-provider-group > header h3 { color: #17488d; font-size: 18px; line-height: 1.25; }
.hc-reference .hc-provider-group > p { margin-bottom: 10px; color: #58708b; font-size: 12px; line-height: 1.5; }
.hc-reference .hc-provider-group :is(nav,ul,.hc-provider-group-links) { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.hc-reference .hc-provider-group > a, .hc-reference .hc-provider-group :is(nav,li,.hc-provider-group-links) > a { display: block; min-width: 0; margin-top: 7px; padding: 11px; border: 1px solid #d4e3f5; border-radius: 5px; background: #fff; color: #164f9a; font-size: 12px; line-height: 1.4; }
.hc-reference .hc-provider-group :is(nav,li,.hc-provider-group-links) > a { margin-top: 0; }
.hc-reference .hc-provider-group :is(a:hover,a:focus-visible) { border-color: #81a9de; background: #f2f7ff; text-decoration: none; }
.hc-reference .hc-provider-group a strong { display: block; color: #174b91; font-size: 13px; line-height: 1.35; }
.hc-reference .hc-provider-group a small { display: block; margin-top: 3px; color: #5b6f88; font-size: 11px; line-height: 1.45; }
.hc-reference .hc-provider-guide-link, .hc-reference .hc-card-actions .hc-provider-guide-link { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 30px; padding: 6px 8px; border: 1px solid #92b6e6; border-radius: 4px; background: #eef5ff; color: #154d9d; font-size: 11px; font-weight: 600; line-height: 1.3; text-align: center; }
.hc-reference .hc-provider-guide-link:hover { background: #e1edff; border-color: #4b83cf; text-decoration: none; }

@media (max-width: 1279px) {
  .hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: calc(100% - 32px); }
  .hc-provider-guide .hcg-hero-content { padding: 23px; }
  .hc-provider-guide .hcg-hero h1 { font-size: 34px; }
  .hc-provider-guide .hcg-layout { gap: 13px; }
  .hc-provider-guide .hcg-section { padding: 17px; }
  .hc-provider-guide .hcg-services { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 999px) {
  .hc-provider-guide .hcg-layout { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-side { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; }
  .hc-provider-guide .hcg-hero { grid-template-columns: minmax(0,.42fr) minmax(0,.58fr); }
  .hc-provider-guide .hcg-hero h1 { font-size: 31px; }
  .hc-provider-guide .hcg-hero-content { padding: 20px; }
  .hc-provider-guide .hcg-facts { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-related, .hc-provider-guide .hcg-related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: calc(100% - 24px); }
  .hc-provider-guide .hcg-hero { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-hero-photo, .hc-provider-guide .hcg-hero-photo img { height: 230px; min-height: 230px; max-height: 230px; }
  .hc-provider-guide figure.hcg-hero-photo { height: auto; max-height: none; }
  .hc-provider-guide figure.hcg-hero-photo img { flex: none; }
  .hc-provider-guide .hcg-hero-content { padding: 19px; }
  .hc-provider-guide .hcg-hero h1 { margin-top: 9px; font-size: 30px; line-height: 1.1; }
  .hc-provider-guide .hcg-facts { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; }
  .hc-provider-guide .hcg-layout { padding-block: 12px 18px; }
  .hc-provider-guide .hcg-section { padding: 15px; }
  .hc-provider-guide .hcg-section > h2, .hc-provider-guide .hcg-section .hc-heading h2 { font-size: 21px; }
  .hc-provider-guide .hcg-services { gap: 8px; }
  .hc-reference .hc-provider-groups { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 600px) {
  .hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: calc(100% - 20px); }
  .hc-provider-guide :is(.hcg-breadcrumb,.hc-breadcrumb) { padding-block: 13px 10px; font-size: 11px; }
  .hc-provider-guide .hcg-hero-photo, .hc-provider-guide .hcg-hero-photo img { height: 205px; min-height: 205px; max-height: 205px; }
  .hc-provider-guide .hcg-hero-content { padding: 17px; }
  .hc-provider-guide .hcg-hero h1 { font-size: clamp(26px,7vw,31px); }
  .hc-provider-guide .hcg-hero-content > p { font-size: 13px; line-height: 1.55; }
  .hc-provider-guide .hcg-hero-content > p[lang] { font-size: 16px; }
  .hc-provider-guide .hcg-hero .hc-button { min-height: 44px; flex: 1 1 125px; font-size: 12px; }
  .hc-provider-guide .hcg-hero .hc-actions { width: 100%; gap: 7px; }
  .hc-provider-guide .hcg-jumps { gap: 6px; padding-block: 11px; }
  .hc-provider-guide .hcg-jumps a { flex: 1 1 125px; min-height: 44px; padding: 8px; font-size: 11px; }
  .hc-provider-guide .hcg-section { padding: 13px; }
  .hc-provider-guide .hcg-section > p, .hc-provider-guide .hcg-section > :is(ul,ol) > li { font-size: 14px; line-height: 1.6; }
  .hc-provider-guide .hcg-services { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-services > :is(article,li,div,a) { padding: 12px; }
  .hc-provider-guide .hcg-side { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-contact > a { min-height: 44px; }
  .hc-provider-guide :is(.hcg-location-card,.hcg-side) .hc-button { min-height: 44px; }
  .hc-provider-guide .hcg-section summary { min-height: 44px; padding-block: 12px; }
  .hc-provider-guide .hcg-related, .hc-provider-guide .hcg-related-grid { grid-template-columns: minmax(0,1fr); gap: 9px; }
  .hc-provider-guide .hcg-related :is(a,article) > img { height: 135px; }
  .hc-reference .hc-provider-group { padding: 13px; }
  .hc-reference .hc-provider-guide-link, .hc-reference .hc-card-actions .hc-provider-guide-link { min-height: 44px; font-size: 11px; }
}
@media (max-width: 359px) {
  .hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: calc(100% - 16px); }
  .hc-provider-guide .hcg-hero-content { padding: 14px; }
  .hc-provider-guide .hcg-facts { grid-template-columns: minmax(0,1fr); }
  .hc-provider-guide .hcg-hero h1 { font-size: 26px; }
}
@media print {
  .hc-provider-guide :is(.hcg-wrap,.hcg-breadcrumb,.hcg-hero,.hcg-jumps,.hcg-layout,.hcg-related) { width: 100%; }
  .hc-provider-guide .hcg-hero { grid-template-columns: 180px minmax(0,1fr); border-color: #aaa; background: #fff; }
  .hc-provider-guide .hcg-hero-photo, .hc-provider-guide .hcg-hero-photo img { height: 160px; min-height: 160px; max-height: 160px; }
  .hc-provider-guide .hcg-hero-content { padding: 12px; }
  .hc-provider-guide .hcg-hero h1 { font-size: 22pt; }
  .hc-provider-guide .hcg-layout { display: block; }
  .hc-provider-guide .hcg-section { margin-bottom: 12px; border-color: #aaa; background: #fff; }
  .hc-provider-guide .hcg-jumps { display: none; }
  .hc-provider-guide .hcg-side { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 12px; }
  .hc-provider-guide .hcg-related, .hc-provider-guide .hcg-related-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .hc-provider-guide .hcg-related :is(a,article) { break-inside: avoid; }
  .hc-provider-guide .hcg-table-scroll { overflow: visible; }
  .hc-provider-guide .hcg-table-scroll table { min-width: 0; font-size: 9pt; }
  .hc-reference .hc-provider-guide-link, .hc-reference .hc-card-actions .hc-provider-guide-link { border-color: #aaa; background: #fff; color: #111; }
}
