/* layout: main */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --page-bg: #ececec;
  --paper: #fff;
  --text: #888;
  --heading: #666;
  --link: #aaa;
  --rule: #ccc;
  --accent: #bfd914;
  --on-accent: #fff;
  --font-body: Tahoma, Arial, Helvetica, sans-serif;
  --font-heading: 'Lucida Grande', 'Lucida Sans Unicode', Tahoma, Arial, sans-serif;
  --gutter: 10px;
}

html { -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 21px;
  background: var(--page-bg);
  color: var(--text);
}

a, a:visited, a:hover, a:active { color: var(--link); }
a:focus-visible { outline: 1px dotted; }

img { max-width: 100%; height: auto; border: 0; }
iframe { max-width: 100%; border: 0; }

p, ul, ol, table, dl, address, h1, h2, h3, h4, h5, h6 { margin-bottom: 20px; }
ul { list-style: disc; }
ol { list-style: decimal; }
li { margin-left: 30px; }
b, strong { font-weight: bold; }

h1, h2, h3 {
  color: var(--heading);
  font-weight: normal;
  font-family: var(--font-heading);
}
h1 { font-size: 20px; }
h2 { font-size: 18px; }
h3 { font-size: 14px; }

.site {
  max-width: 980px;
  margin: 0 auto;
  padding: 15px;
  background: var(--paper);
}

.site-logo {
  display: block;
  margin-bottom: 10px;
  color: var(--link);
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 21px;
  font-weight: normal;
}
.site-logo:visited, .site-logo:hover, .site-logo:active { color: var(--link); }

.site-menu__list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin-bottom: 10px;
  line-height: 20px;
}
.site-menu__item { margin: 0; list-style: none; }
.site-menu__item a {
  display: block;
  padding: 10px;
  font-size: 14px;
  text-decoration: none;
}
.site-menu__item:hover, .site-menu__item.is-active { background: var(--accent); }
.site-menu__item:hover a, .site-menu__item.is-active a { color: var(--on-accent); }

.site-spacer {
  height: 30px;
  margin: 10px 0;
  background-image: url('https://sites.hamstercdn.com/y46beg1n9xdz/assets/59648b56f827f4124a53cccfc0c8532b7e2c7f4e10668b3abb41e5d5cff88c3e/images/lines.png');
}

.content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.site-footer {
  margin-top: 20px;
  font-size: 11px;
  text-align: right;
}

@media (min-width: 768px) {
  .site {
    margin-top: 40px;
    padding: 10px;
  }
  .site-header {
    display: grid;
    grid-template-columns: minmax(0, 380fr) minmax(0, 540fr);
    column-gap: 20px;
    padding-right: 20px;
  }
  .site-logo { margin-bottom: 20px; }
  .site-menu__list { justify-content: flex-end; margin-bottom: 20px; }
  .site-menu__list:only-child { margin-bottom: 40px; }
  .content {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .site-footer { margin-top: 0; }
}
/* block: footer-links */
.footer-links__list { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0; list-style: none; margin: 0; }
.footer-links__item { margin: 0; }
.footer-links__item + .footer-links__item { margin-left: 4px; }
/* block: map-consent */
.map-consent { min-width: 0; margin-bottom: 20px; }
.map-consent [hidden] { display: none; }
.map-consent__text { margin-bottom: 20px; }
.map-consent__frame { display: block; width: 100%; height: 350px; border: 0; }
@media (min-width: 768px) {
  .map-consent { grid-column: span 12; margin: 21px 10px; }
  .map-consent__frame { height: 500px; }
}
/* block: picture */
.picture { min-width: 0; margin-bottom: 20px; }
.picture img { display: block; max-width: 100%; height: auto; }
.picture__caption { margin-top: 5px; text-align: right; }
.picture__caption p { margin-bottom: 0; }
@media (min-width: 768px) {
  .picture { margin: 0 10px; }
  .picture--w4 { grid-column: span 4; }
  .picture--w8 { grid-column: span 8; }
}
/* block: profile */
.profile { min-width: 0; margin-bottom: 20px; }
.profile__figure { margin-bottom: 20px; }
.profile img { display: block; max-width: 100%; height: auto; }
.profile__text > :last-child { margin-bottom: 0; }
@media (min-width: 768px) {
  .profile { grid-column: span 12; margin: 0 10px 20px; }
  .profile__body { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: 10px; }
  .profile__figure { margin-bottom: 0; }
}
/* block: section-break */
.section-break { height: 0; }
@media (min-width: 768px) {
  .section-break { grid-column: span 12; height: 21px; }
}
/* block: text */
.text { min-width: 0; }
.text--right { text-align: right; }
.text__heading:last-child { margin-bottom: 0; }
.text__body table { width: 100%; border-collapse: collapse; }
.text__body table, .text__body td, .text__body th { border: 1px solid var(--rule); }
.text__body td, .text__body th { padding: 4px; }
.text__body tr:nth-child(odd) { background: var(--page-bg); }
.text__body blockquote { margin: 0 0 20px 30px; }
@media (min-width: 768px) {
  .text { margin: 0 10px; }
  .text--justify .text__body { text-align: justify; }
  .text--w4 { grid-column: span 4; }
  .text--w6 { grid-column: span 6; }
  .text--w8 { grid-column: span 8; }
  .text--w12 { grid-column: span 12; }
  .text--right.text--w4 { grid-column: 9 / span 4; }
}