html, body {
  height: 100%;
  margin: 0;
}

body {
  display: flex;
  flex-direction: column;
  height: 100vh;
}

body a,
body button {
  color: #7777ab
}

body a:hover {
  color: #4141a4
}

nav#top, footer {
  flex: 0 0 auto;
}

#body {
  flex-grow: 1;
}

body > nav + * {
  flex-grow: 1;
}



div.spacing {
  padding: 80px;
  margin: 8px;
}

@media (max-width: 1232px) {
    div.spacing {
    padding: 60px;
  }
}

@media (max-width: 520px) {
  div.spacing {
    padding: 50px;
  }
}

@media (max-width: 390px) {
  div.spacing {
    padding: 40px 20px 10px;
  }
}



div[itemtype="https://schema.org/Organization"] > a {
  white-space: pre-line;
  color: white;
}



div.side-note-form {
  padding: .375rem .75rem;
  font-size: .8rem;
  font-weight: bold;
  line-height: 1.5;
}


.tm-portfolio-description:has(.img.main) {
  width: calc(100% - 420px);
  padding: 20px 25px 20px 60px;
}


div[data-desktop-seq-no="6"]:has(iframe) {
  overflow: hidden;
}

@media (max-width: 820px) {
  div.tm-portfolio-item > img.main {
    width: 80%;
  }

  div.col-12.spacing > div.tm-portfolio-item > img {
    width: 90%;
  }


}
