* {
  margin: 0;
  padding: 0;
}
.wrap {
  padding-left: var(--wp--preset--spacing--normal);
  padding-right: var(--wp--preset--spacing--normal);
}
@media (max-width: 480px) {
  .wrap {
    padding-left: var(--wp--preset--spacing--small);
    padding-right: var(--wp--preset--spacing--small);
  }
}
.wrapper {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}
.wrapper-wide {
  max-width: var(--wp--style--global--wide-size);
  margin-left: auto;
  margin-right: auto;
}
/* ########## Header ########## */
#header {
  position: sticky;
  top: 0;
  z-index: 1000;
}
#roof {
  background-color: #FFFFFF;
  height: 40px;
}
#roof a {
  text-decoration: none;
  font-family: var(--wp--preset--font-family--tertiary);
  font-size: 16px;
  color: var(--wp--preset--color--gray);
}
#roof a:hover {
  color: var(--wp--preset--color--primary);
}
#roof .wrapper-wide {
  height: 100%;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 30px;
}
#logo {
  background-color: var(--wp--preset--color--peach);
  height: 140px;
}
#logo .wrapper {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 640px) {
  #logo {
    height: 100px;
  }
}
/* ########## Main ########## */
#main > * {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}
#main > *.alignwide {
  max-width: var(--wp--style--global--wide-size);
}
#main > *.alignfull {
  max-width: none;
  margin-left: -30px;
  margin-right: -30px;
}
@media (max-width: 480px) {
  #main > *.alignfull {
    margin-left: -15px;
    margin-right: -15px;
  }
}
/* ########## Footer ########## */
#footer {
  background-color: #FFFFFF;
  padding-top: 20px;
  padding-bottom: 20px;
}
#footer .wrapper-wide {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 30px;
}
@media (max-width: 640px) {
  #footer .wrapper-wide {
    flex-direction: column;
    align-items: center;
  }
}
