diff --git a/main.css b/main.css
index 5b14ead..ae19729 100644
--- a/main.css
+++ b/main.css
@@ -60,6 +60,10 @@ a {
flex-wrap: wrap;
}
+.menu-toggle {
+ display: none;
+}
+
.site-nav > a,
.nav-trigger {
font-size: 0.92rem;
@@ -406,15 +410,50 @@ a {
@media (max-width: 720px) {
.site-header {
- flex-direction: column;
- align-items: flex-start;
+ display: grid;
+ grid-template-columns: 1fr auto;
+ align-items: center;
+ }
+
+ .menu-toggle {
+ display: inline-grid;
+ gap: 5px;
+ width: 44px;
+ height: 44px;
+ place-content: center;
+ border: 1px solid #e5e7eb;
+ border-radius: 8px;
+ background: #fff;
+ cursor: pointer;
+ }
+
+ .menu-toggle span {
+ display: block;
+ width: 20px;
+ height: 2px;
+ background: #111827;
}
.site-nav {
+ display: flex;
+ grid-column: 1 / -1;
width: 100%;
flex-direction: column;
align-items: stretch;
gap: 4px;
+ max-height: 0;
+ overflow: hidden;
+ padding-top: 0;
+ opacity: 0;
+ pointer-events: none;
+ transition: max-height 0.25s ease, opacity 0.2s ease, padding-top 0.2s ease;
+ }
+
+ .site-nav.is-open {
+ max-height: 700px;
+ padding-top: 12px;
+ opacity: 1;
+ pointer-events: auto;
}
.site-nav > a,
diff --git a/main.js b/main.js
index 390560a..e5cafd0 100644
--- a/main.js
+++ b/main.js
@@ -16,6 +16,12 @@ function renderSiteHeader(root) {
Telecommunications, Networking, Linux, Embedded
+
+