* {
box-sizing: border-box;
}
html,
body {
margin: 0;
padding: 0;
}
html {
color: #313131;
font-family: "Open Sans";
font-size: 22px;
line-height: 1.5rem;
}
@media(max-width: 70rem) {
html {
font-size: 18px;
}
}
body {
background-color: #f5f5f5;
}
a {
color: #404c9e;
transition: color .2s ease-in-out;
}
a:hover {
color: #7586f0;
text-decoration: none;
}
h1, h2, h3 {
margin-top: 0;
margin-bottom: 0.5rem;
word-wrap: break-word;
}
h1 {
margin-bottom: 1.75rem;
}
h1 { font-size: 2rem; line-height: 2.5rem; }
h2 { font-size: 1.5rem; line-height: 2rem; }
h3 { font-size: 1rem; line-height: 1.5rem; }
* + h1,
* + h2,
* + h3 {
margin-top: 1.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
p:last-child {
margin-bottom: 0;
}
ul, ol, dl {
margin-top: 0;
margin-bottom: 1rem;
}
ul:last-child,
ol:last-child,
dl:last-child {
margin-bottom: 0;
}
p + ul,
p + ol,
p + dl {
margin-top: -.5rem;
}
small {
font-size: .8em;
line-height: 1em;
}
strong {
font-weight: bold;
}
img {
max-width: 100%;
height: auto;
}
.app-page-header {
padding-top: .5rem;
padding-bottom: .5rem;
margin-bottom: 2rem;
box-shadow: 0 0 1px #313131;
}
.app-page-header .container {
display: flex;
align-items: center;
}
.app-page-header .container > * {
flex-grow: 0;
}
.app-page-header .container > .separator {
flex-grow: 1;
}
@media(max-width: 70rem) {
.app-page-header .container {
flex-direction: column;
}
}
.app-page-header h1 a {
color: #313131;
text-decoration: none;
}
.app-page-header .app-page-header-title {
margin-bottom: 0;
font-size: 1.5rem;
line-height: 2rem;
}
.app-page {
padding-bottom: 10rem;
}
@media(max-width: 70rem) {
.app-page {
padding-bottom: 5rem;
}
}
.container {
max-width: 70rem;
margin-left: auto;
margin-right: auto;
padding-left: .5rem;
padding-right: .5rem;
}
.galleries {
display: flex;
flex-wrap: wrap;
justify-content: space-evenly;
}
.gallery-cover {
width: 20rem;
max-width: 100%;
margin-bottom: 2rem;
margin-right: .5rem;
}
.gallery-cover a {
text-decoration: none;
}
.gallery-cover img {
width: 100%;
height: 12rem;
border-radius: 0.25rem;
}
.gallery-cover .gallery-cover-name {
display: block;
font-size: 1rem;
font-weight: bold;
overflow: hidden;
text-overflow: ellipsis;
}
.gallery-photos {
display: flex;
flex-wrap: wrap;
justify-content: space-evenly;
margin-top: 2rem;
}
.photo {
width: 20rem;
max-width: 100%;
margin-right: .5rem;
margin-bottom: 2rem;
}
.photo img {
width: 100%;
height: 12rem;
}
.to-the-top {
position: fixed;
bottom: 2rem;
right: 2rem;
padding: .25rem .5rem;
color: #fff;
text-decoration: none;
font-size: .9rem;
background-color: #404c9e;
border-radius: .25rem;
transition: background .2s ease-in-out;
}
.to-the-top:hover {
color: #fff;
background-color: #7586f0;
}