* {
  box-sizing: border-box;
}
html {
  display: flex;
  align-items: center;
  flex-direction: column;
}
body {
  background: #111 url('bg_body.png') top left repeat-x;
  font: 16px Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 0;
  color: #CCC;
  display: flex;
  align-items: stretch;
  align-content: stretch;
  flex-wrap: wrap;
  max-width: 960px;
}
body > header {
  flex: 1 0 100%;
  background: rgba(4, 4, 4, 0.61) url("ban.jpg") no-repeat center center;
  background-size: cover;
  height: 400px;
  margin: 40px 0 0 0;
}
body > header::before {
  width: 100%;
  height: 20px;
  background: rgba(4, 4, 4, 0.61);
  content: "";
  display: block;
  margin-top: -20px;
}
body > header a {
  text-decoration: none;
}
body > header h1 {
  position: relative;
  top: 280px;
  left: 80px;
  font-weight: normal;
  font-style: italic;
  font-size: 2.5rem;
  display: inline;
  color: #FFF;
}
body > header h1::before {
  content: "\21E5";
  margin-right: 20px;
  color: #00A0B4;
  font-style: normal;
}
body section.articles {
  background-color: rgba(4, 4, 4, 0.61);
  padding: 3rem;
  flex: 1;
  max-width: 768px;
  margin-bottom: 40px;
}
body section.articles nav {
  text-align: center;
  margin-top: 40px;
}
body section.articles nav a {
  color: #00A0B4;
  margin: 0 20px;
  text-decoration: none;
}
body section.articles nav a:hover {
  text-decoration: underline;
}
body nav.galleries {
  background-color: rgba(4, 4, 4, 0.61);
  flex: 0 0 192px;
  margin-bottom: 40px;
}
body nav.galleries h2 {
  border-top: 2px solid #027a89;
  font-size: 16px;
  color: #00a0b4;
  text-transform: uppercase;
  padding: 4px 8px 4px 0;
  margin: 3rem 20px 20px 0;
}
body nav.galleries ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
body nav.galleries ul li::before {
  content: "\25B6";
  font-size: 0.8em;
  margin-right: 10px;
  color: #00a0b4;
}
body nav.galleries ul li a {
  color: #555;
  text-decoration: none;
}
body nav.galleries ul li a:hover {
  color: #00a0b4;
}
body div.license {
  margin-right: 20px;
  color: #555;
}
body div.license a {
  color: #CCC;
  text-decoration: none;
}
body div.license a:hover {
  color: #00a0b4;
}
.articles article {
  padding: 1rem;
  border-top: 2px solid #027a89;
  background-color: #111;
  margin: 0 0 1rem 0;
}
.articles article header h2 a {
  color: #CCC;
  text-decoration: none;
}
.articles article header h2 a:hover {
  color: #00a0b4;
}
.articles article section p:first-child {
  text-align: center;
}
.articles article section p:first-child img {
  max-width: 100%;
  max-height: 80vh;
}
