summaryrefslogtreecommitdiffhomepage
path: root/css/header.css
blob: 0e7ba08eeed70bdd15b1b16a07b1b17c86b1abfa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
:root {
  --heading-height: 15em;
}
header {
  position: fixed;
  width: 100%;
  height: var(--heading-height);
}

[data-theme="light"],
:root:not([data-theme="dark"]) {
  --header-border-color: black;
  --header-border-thickness: 0.3em;
}

@media only screen and (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --header-border-color: white;
    --header-border-thickness: 0.2em;
  }
}

[data-theme="dark"] {
  --header-border-color: white;
  --header-border-thickness: 0.2em;
}

header::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 6em;
  width: 100%;
  height: calc(var(--heading-height) + 10em);
  z-index: -1;
  transform: skewY(-3.5deg);
  background: 
    linear-gradient(225deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.65) 100%),
    var(--banner-url) no-repeat center var(--scroll-percent);
  background-size: cover;
  border-bottom: var(--header-border-thickness) solid var(--header-border-color);
}

h1 {
  font-size: calc(0.8em + 2.6vw);
  font-weight: 700;
  letter-spacing: .01em;
  text-shadow: .05em .05em #111;
  color: #fff;
}

body {
    min-height: 100vh;
}

body > main {
  padding: var(--heading-height) 4em 0;
}

.site-title {
  margin: 0;
}

.nav-list {
  list-style: none;
  display: flex;
  gap: 1.5rem;
  padding: 0;
  margin: 0;
}

.header-aside {
  margin-left: auto;
  position: absolute;
  top: 0;
  right: 0;
}

.theme-dropdown summary {
  cursor: pointer;
}

.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: top;
  position: relative;

}

.header-main {
  display: flex;
  flex-direction: column;
}

.main-nav {
  margin-top: 0.5rem;
}

.dropdown-menu {
  display: flex;
  flex-direction: column;
}

.dropdown summary {
  border: none;
}

nav.theme-selector {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1000;
}

.theme-selector details summary {
  border-width: 2px;
}

.theme-selector {
  margin-top: 1em;
}

@media (max-width: var(--breakpoint-sm)) {
  .theme-selector {
    margin-top: 0.5em;
  }
}