.page { display: flex; flex-direction: column; height: 100%; } .page__header-wrap { width: 100%; } .page__header { @include center; background-image: url("../media/images/background-a.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; color: $white; padding-right: env(safe-area-inset-right); padding-left: env(safe-area-inset-left); position: relative; width: 100%; } .page__header__title { font-weight: 300; text-shadow: 1px 1px 2px rgba($black, 0.3); @media (min-width: 901px) { font-size: 3rem; line-height: 6.5rem; } @media (max-width: 900px) { font-size: 2rem; line-height: 1; padding-top: 1rem; padding-bottom: 1rem; } } .page__content { background-image: url("../media/images/grid.png"); background-repeat: repeat; background-size: 32px; flex: 1; padding-top: 2rem; padding-bottom: 2rem; padding-right: env(safe-area-inset-right); padding-left: env(safe-area-inset-left); h1 { margin-bottom: 0.25rem; @media (min-width: 901px) { font-size: 3rem; } @media (max-width: 900px) { font-size: 2rem; } + h2 { margin-bottom: 2rem; } } h2 { @media (min-width: 901px) { font-size: 2rem; } @media (max-width: 900px) { font-size: 1.5rem; } + h3 { margin-bottom: 1rem; padding-top: 0.25rem; } } h3 { @media (min-width: 901px) { font-size: 1.5rem; } @media (max-width: 900px) { font-size: 1.25rem; } + table { top: 0.25rem; } } h4 { letter-spacing: 0.05rem; text-transform: uppercase; @media (min-width: 901px) { font-size: 1.25rem; } @media (max-width: 900px) { font-size: 1.15rem; } } h5 { font-size: 1rem; } p, ol, ul, table { code { background-color: $black; border-radius: 3px; color: $white; font-size: 60%; letter-spacing: 0.05rem; padding: 0.3rem 0.5rem; vertical-align: middle; @media (max-width: 900px) { position: relative; top: -1px; } } } p, ol, ul { position: relative; @media (min-width: 901px) { font-size: 1.25rem; line-height: 1.6; } @media (max-width: 900px) { font-size: 1.05rem; line-height: 1.55; } } ol, ul { padding-top: 0.5rem; li { &:not(:last-of-type) { margin-bottom: 0.25rem; } } + h2, + h3, + h4, + h5 { padding-top: 2rem; } } ol { list-style-type: lower-roman; padding-left: 1.6rem; } ul { padding-left: 1.25rem; } p { margin-bottom: 2rem; img { float: right; } + ol, + ul { top: -2rem; } } a:not(.button) { color: $teal; position: relative; &::after { width: 100%; height: 1px; background-color: currentColor; content: ""; left: 0; position: absolute; transition: all 0.2s; } &:not(:hover)::after { bottom: 0; opacity: 0; } &:hover::after { bottom: 3px; opacity: 1; } } pre { margin-bottom: 2rem; padding: 2rem; border-radius: 3px; font-size: 1rem; line-height: 1.33; overflow-x: auto; overflow-y: hidden; &:not([class]), &.language-text { background-color: $black; color: $white; } &.language-yaml { background-color: #27273f; color: #ffe066; .atrule { color: #f083ac; } .important { color: #ffa94d; } .punctuation { color: $white; } } } table { background-color: $white; border: 1px solid rgba($gray, 0.3); border-spacing: 0; margin-bottom: 2rem; position: relative; width: 100%; @media (max-width: 1030px) { display: inline-grid; thead { display: none; } tbody, tr, td { display: block; } tbody tr:last-of-type td:not(:last-of-type) { border-bottom: 1px solid rgba($gray, 0.3); } } thead { background-color: $black; color: $white; cursor: default; position: relative; tr { position: relative; z-index: 1; } &::after { width: calc(100% + 2px); height: calc(100% + 2px); top: -1px; left: -1px; background-color: $black; content: ""; position: absolute; z-index: 0; } } tbody { line-height: 1.55; } tr:nth-of-type(even) { background-color: rgba($black, 0.025); } th, td { padding: 0.5rem 1rem; } th { font-size: 0.8rem; letter-spacing: 0.1rem; text-transform: uppercase; } tbody tr:not(:last-of-type) td { border-bottom: 1px solid rgba($gray, 0.3); } td { font-size: 1rem; } } }