Files
2025-07-30 13:12:22 +02:00

179 lines
2.9 KiB
CSS

/* CSS reset */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* consistent whitespace */
ul,
ol,
figure,
pre {
margin: 2em 0;
}
html {
min-height: 100%;
overflow-x: hidden;
--max-width: 1400px;
}
html,
body {
display: flex;
}
html,
body,
body > main {
width: 100%;
}
body,
body > main {
flex: 1;
}
.hidden {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
border: 0;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
z-index: 1;
}
/* page layout */
body {
margin: 0 auto;
flex-direction: column;
font-size: 14px;
--border-radius: 8px;
--padding-section: 2em 1em;
--active-background-color: var(--dark-30);
--active-background: initial;
> main {
> article {
background: var(--active-background);
background-color: var(--active-background-color);
z-index: 2;
position: relative;
transition: background 0.6s ease, background-color 0.6s ease,
background-blend-mode 0.6s ease;
}
}
> header {
position: sticky;
top: 0;
z-index: 3;
&.is-fixed {
background: rgba(255, 255, 255, 0.9);
transform: translate3d(0, -100%, 0);
}
&.can-animate {
transition: transform 0.3s ease, visibility 0s 0.3s linear;
}
&.scroll-up {
transform: translate3d(0, 0, 0);
}
.logo {
color: white;
}
/* @media (max-width: 800px) { */
/* } */
}
section {
display: flex;
flex-direction: column;
justify-content: center;
margin-left: auto;
margin-right: auto;
z-index: 1;
position: relative;
overflow: hidden;
/* @media (min-width: 1001px) { */
min-height: 100vh;
/* } */
&:not(.fluid) {
padding: var(--padding-section);
max-width: var(--max-width);
margin-left: auto;
margin-right: auto;
}
&.fluid {
padding: var(--padding-section);
}
> header {
font-family: "Azeret Mono", monospace;
font-optical-sizing: auto;
font-style: normal;
font-weight: 400;
font-size: 0.85em;
line-height: 1.2em;
p {
margin: 0;
}
span {
color: var(--subheader-color, var(--grey-70));
}
}
&.fluid {
> header,
> main,
> footer {
padding: var(--padding-section);
max-width: var(--max-width);
margin-right: auto;
margin-left: auto;
width: 100%;
}
> main {
display: flex;
}
}
}
.navigation-end-desktop {
display: none;
@media (min-width: 801px) {
display: flex;
justify-content: space-between;
width: 100%;
}
}
.navigation-end {
> div:not(.navigation-end-desktop) {
display: none;
@media (max-width: 800px) {
display: flex;
justify-content: space-between;
width: 100%;
}
}
}
}