:root {
    --accent: color(display-p3 0.09 0.27 0.53); /*#184488*/
  }
  html, body {
      scroll-behavior: smooth;
      margin: 0;
  height: 100%;    
      font-family: sans-serif;
  }
  a {
      color: var(--accent);
      text-decoration: none;
      font-weight: bold;
  }
body {
      display: flex;
      flex-direction: column;
      height: 100%;			
      width: 100%;
      hyphens: auto;
  }
  header {
      display: flex;
      text-align: center;
      background: white;
      padding: 0.5rem;
  }
  h1 {
      flex: 1 1 auto;
      align-content: space-around;
      margin-block-start: 0;
      margin-block-end: 0;
  }
  h1 span {
      display: inline-block;
  }
  h1 span::first-letter {
      color: var(--accent);
  }
  .logo {
      float: left;
      align-content: space-around;
      vertical-align: middle;
      max-width: 50%;
      max-height: 100px;
  }

  .navbar {
      background-color: var(--accent);
      text-align: start;
      padding: 1rem;
  }
  .navbar a {
      color: white;
      padding-right: 1rem;
  }
  address {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  }
  address div {
      /*flex: 1 1 auto;*/
	  padding: .5rem;
  }
  a[href^="tel:"]:before {
    content: "\260E\FE0E";
    margin-right: 0.5em;
  }
  a[href^="mailto:"]:before {
    content: "\2709\FE0E";
    margin-right: 0.5em;
  }
article {
      flex: 1 1 auto;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
      padding-left: 1rem;
      padding-right: 1rem;
  }
@media (orientation: landscape) {
  article {
    overflow-y: initial;
  }
}
  .portrait {
      float: left;
      padding-right: 1rem;
      padding-left: 1rem;
  }
  .portrait img {
      border-radius: 50%;
      height: 7rem;
  }

  footer {
      background-color: var(--accent);
      padding: 1rem;
      margin-top: auto;
	  margin-left: -1rem;
	  margin-right: -1rem;
  }

  footer a {
      color: white;
      padding-right: 1rem;
  }