body {
  margin: 0; padding: 0; 
}

* {
  font-family: Montserrat, sans-serif;
}

.header {
  height: 4em;
  background-color: #e6f7f7;
  overflow: auto;
}

.header > .logo {
  float: left;
  margin-top: .5em;
}

.header > .logo > img {
  height: 3em;
}

.header > .menu {
  float: right;
  margin: 1.25em .5em 0 0;
}

.header > .menu > ul {
  list-style: none;
  padding: 0; margin: 0;
}

.header > .menu > ul > li {
  float: left;
  text-transform: uppercase;
  margin: 0 .375em 0 .375em;
}

.m-link {
  text-decoration: none;
  color: #355F61;
  font-size: 70%;
}

.board {
  margin: 0 auto;
  margin-top: 2em;
  width: 100%;
  max-width: 960px;
}

.board > img {
  width: 100%;
}

.presentation {
  overflow: auto;
  margin: 0 auto;
  width: 100%;
  max-width: 960px;
}

.presentation > .person {
  float: left;
  margin-right: 1em;
}

.presentation > .person > img {
  max-height: 50vh;
}

.presentation > .about {
  float: left;
  margin-top: 2em;
  padding: 1em;
  max-width: 960px;
}

.presentation > .about > .title {
  display: block;
  font-size: 175%;
  color: #79193e;
  font-weight: bold;
  padding-bottom: 1em;
  text-align: center;
}

.presentation > .about > p {
  padding: 0 0 .75em; margin: 0;
  text-align: justify;
  line-height: 1.5;
  color: #79193e;
}

.services {
  overflow: auto;
  width: 100%;
  max-width: 960px;
  margin-top: 1em;
  margin: 0 auto;
}

.services > .title {
  display: block;
  font-size: 175%;
  color: #5facae;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}

.services > .portfolio {
  padding: 1em;
  overflow: auto;
}

.services > .portfolio > .p-item {
  float: left;
  overflow: auto;
  margin: .25em .25em 1.5em .25em;
  width: 18em;
}

.services > .portfolio > .p-item > .p-icon {
  float: left;
}

.services > .portfolio > .p-item > .p-content {
  float: left;
  margin-left: .5em;
  overflow: auto;
  width: 15em;
}

.services > .portfolio > .p-item > .p-content > .p-title {
  font-weight: 500;
  color: #263333;
}

.services > .portfolio > .p-item > .p-content > .p-desc {
  font-size: 75%;
  color: #263333;
}

.contact {
  overflow: auto;
  width: calc(100% - 3em);
  max-width: 960px;
  margin-top: 1em;
  margin: 0 auto;
  padding: 0 1.5em;
}

.contact-title {
  display: block;
  font-size: 175%;
  color: #196678;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}


.contact-box {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em;
}

.contact-zbox {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 300px;
}

.contact-item {
  display: flex;
  flex-grow: nowrap;
  gap: .5em;
  margin-bottom: 1em;
}

.contact-item-icon {
  width: 15px;
}

.contact-item-content {
  display: inline-block;
  text-decoration: none;
  color: #263333;
  font-size: 75%;
}

.footer {
  width: 100%;
  margin-top: 2em;
  background-color: #194978;
  height: 5em;
}
