/* Presentation rules inherited from the original HTML. */
:where(.align-center) { text-align: center; }
:where(.align-left) { text-align: left; }
:where(.align-right) { text-align: right; }
:where(.bgcolor-00ff99) { background-color: #00ff99; }
:where(.bgcolor-ffffff) { background-color: #ffffff; }
:where(.block-align-center) { margin-inline: auto; }
:where(.border-0) { border-width: 0; }
:where(.cellpadding-0 > :is(thead, tbody, tfoot) > tr > :is(td, th)) { padding: 0px; }
:where(.cellpadding-2 > :is(thead, tbody, tfoot) > tr > :is(td, th)) { padding: 2px; }
:where(.cellpadding-3 > :is(thead, tbody, tfoot) > tr > :is(td, th)) { padding: 3px; }
:where(.cellpadding-4 > :is(thead, tbody, tfoot) > tr > :is(td, th)) { padding: 4px; }
:where(.cellpadding-5 > :is(thead, tbody, tfoot) > tr > :is(td, th)) { padding: 5px; }
:where(.cellspacing-0) { border-spacing: 0px; }
:where(.cellspacing-2) { border-spacing: 2px; }
:where(.cellspacing-3) { border-spacing: 3px; }
:where(.cellspacing-8) { border-spacing: 8px; }
:where(.image-align-absmiddle) { vertical-align: middle; }
:where(.image-align-baseline) { vertical-align: baseline; }
:where(.image-align-middle) { vertical-align: middle; }
:where(.valign-baseline) { vertical-align: baseline; }
:where(.valign-bottom) { vertical-align: bottom; }
:where(.valign-middle) { vertical-align: middle; }
:where(.valign-top) { vertical-align: top; }

/* Shared typography for the clinic pages and legacy notice viewer. */
.large,
.largen {
  font-size: 14px;
}

.large {
  line-height: 18px;
}

.largen {
  line-height: 24px;
}

.text,
.textn {
  font-size: 12px;
}

.text {
  line-height: 17px;
}

.textn,
.small {
  line-height: 15px;
}

.small,
.smalln {
  font-size: 10px;
}

.smalln {
  line-height: 12px;
}

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: underline;
}

a:visited {
  color: #c60;
}

a:hover {
  color: #00f;
}

a:active {
  color: #ff0;
}

a:link {
  color: #f60;
}

/* Text styles carried over from the original pages. */
.text-large { font-size: large; }
.text-x-large { font-size: x-large; }
.text-xx-large { font-size: xx-large; }
.text-color-00748d { color: #00748d; }
.text-color-663333 { color: #663333; }
.text-color-cc6600 { color: #cc6600; }

.footer-services {
  max-width: 44rem;
  margin: 0 auto 12px;
}

.footer-services h2 {
  margin: 0 0 6px;
}

.footer-services ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-services li {
  display: flex;
  justify-content: center;
  min-width: 0;
}

.footer-services a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  color: inherit;
  font-weight: bold;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .footer-services ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

footer.clinic-footer {
  padding: 24px clamp(12px, 4vw, 36px) 12px;
  border-color: #00748d;
  background: #eaf8f5;
  color: #064f58;
  text-align: center;
}

.clinic-footer .footer-services {
  margin-bottom: 20px;
}

.clinic-footer .footer-services h2 {
  margin-bottom: 12px;
}

.clinic-footer .footer-services ul {
  gap: 6px 8px;
}

.clinic-footer .footer-services li {
  display: grid;
}

.clinic-footer .footer-services a {
  display: flex;
  box-sizing: border-box;
  padding: 5px 8px;
  border: 1px solid #c4e2dd;
  border-radius: 6px;
  background: #fff;
  color: #064f58;
  text-decoration: none;
}

.clinic-footer .footer-services a:is(:hover, :focus-visible) {
  background: #d5eee9;
  text-decoration: underline;
}

.clinic-footer .footer-contact {
  display: grid;
  justify-items: center;
  gap: 4px;
}

.clinic-footer .footer-contact a {
  color: #064f58;
}

.clinic-footer .footer-copyright {
  margin: 14px 0 0;
  padding-top: 10px;
  border-top: 1px solid #c4e2dd;
  color: #365b60;
}

.clinic-footer .footer-contact address span {
  display: inline-block;
}
