14 Commits

Author SHA1 Message Date
sefaria 2b131f2b1f Adding menu css, styling logo 2026-05-22 22:00:08 +02:00
sefaria d799b3ce1c Merge branch 'main' into feature/add-menu-bar
# Conflicts:
#	404.html
2026-05-22 20:21:59 +02:00
sefaria 42324ff42c redesigned 404 page 2026-05-19 15:57:48 +02:00
sefaria 5b7cdf9e84 corrected copy 2026-05-19 10:21:55 +02:00
sefaria be9491f1e8 updated og image assets 2026-05-16 15:16:52 +02:00
sefaria 276b8eb510 Merge branch 'main' into feature/add-menu-bar
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2026-05-14 18:28:15 +02:00
sefaria ec54a1f3a2 add skiplink to all sites 2026-05-14 18:25:26 +02:00
sefaria aa1f270c59 change border radius button 2026-05-13 15:59:19 +02:00
sefaria 90a0f39790 Adding skipLink for better screen reader mode 2026-05-13 15:48:54 +02:00
sefaria 8dd4e034ee change div to section 2026-05-13 12:20:08 +02:00
sefaria 13ccaa8658 Changing license type adding license to README 2026-05-08 11:05:04 +02:00
sefaria 539b9a36fc Merge branch 'main' into feature/add-menu-bar, adding new footer and section structure 2026-05-08 09:38:45 +02:00
sefaria 43e9fbc5aa add app.js to subpages 2026-05-02 13:13:36 +02:00
sefaria f7e58040fa feat: add menu html code 2026-05-02 13:03:51 +02:00
7 changed files with 331 additions and 56 deletions
+47 -47
View File
@@ -3,59 +3,59 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Page Not Found</title>
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>Page Not Found</title>
<link rel="stylesheet" href="css/style.css">
<meta name="description" content="Creator of visual identities and digital interfaces">
<meta property="og:title" content="Lars Winter">
<meta property="og:description" content="Portfolio of Lars Winter">
<meta property="og:url" content="https://larswinter.me">
<meta property="og:image" content="https://larswinter.me/img/lw-og_image.png">
<meta property="og:image:alt" content="">
<meta name="fediverse:creator" content="@larswinter@mastodon.social">
<link rel="icon" href="img/favicon.ico" sizes="any">
<!-- <link rel="icon" href="img/icon.svg" type="image/svg+xml"> -->
<link rel="apple-touch-icon" href="img/lw.png">
<meta name="theme-color" content="#F7F7F7" media="(prefers-color-scheme: light)">
<meta name="theme-color" content="0f0f0f" media="(prefers-color-scheme: dark)">
<style> <style>
* { main {
line-height: 1.2; justify-content: center
margin: 0; }
} h1 {
font-size: clamp(7.25rem, 4.5rem + 1.1vw, 8rem);
html { color: light-dark(var(--color-orange-red-600), var(--color-orange-red-500));
color: #888; }
display: table;
font-family: sans-serif; h2 {
height: 100%; font-size: clamp(2.75rem, 2.5rem + 1.1vw, 4rem);
text-align: center; }
width: 100%;
} h1, h2, p {
text-align: center;
body { }
display: table-cell;
vertical-align: middle;
margin: 2em auto;
}
h1 {
color: #555;
font-size: 2em;
font-weight: 400;
}
p {
margin: 0 auto;
width: 280px;
}
@media only screen and (max-width: 280px) {
body,
p {
width: 95%;
}
h1 {
font-size: 1.5em;
margin: 0 0 0.3em;
}
}
</style> </style>
</head> </head>
<body> <body>
<h1>Page Not Found</h1>
<p>Sorry, but the page you were trying to view does not exist.</p> <div id="skipLink">
<a href="#siteContent">Skip to content</a>
</div>
<main>
<section>
<h1>4💀4</h1>
<h2>Page Not Found</h2>
<p>Sorry, but the page you were trying to view does not exist.</p>
</section>
</main>
</body> </body>
</html> </html>
+212 -4
View File
@@ -346,7 +346,7 @@ a:visited {
text-decoration-thickness: 0.175rem; text-decoration-thickness: 0.175rem;
} }
button, .link-button { button, .link-button, .logo {
min-height: 44px; min-height: 44px;
font-family: "MD IO", monospace; font-family: "MD IO", monospace;
font-style: normal; font-style: normal;
@@ -361,20 +361,39 @@ button, .link-button {
border-radius: var(--radius-xxl); border-radius: var(--radius-xxl);
box-shadow: var(--shadow-button); box-shadow: var(--shadow-button);
text-decoration: none; text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
} }
button:hover, .link-button:hover { .logo {
padding: 1rem;
aspect-ratio: 1/1;
}
.logo svg {
height: 1.75em;
width: 1.75em;
flex: none;
display: block;
}
.logo svg path {
fill: currentColor;
}
button:hover, .link-button:hover, .logo:hover {
background: var(--color-primary-button-hover); background: var(--color-primary-button-hover);
color: var(--color-text-button); color: var(--color-text-button);
} }
button:active, .link-button:active { button:active, .link-button:active, .logo:active {
background: var(--color-primary-button-active); background: var(--color-primary-button-active);
box-shadow: var(--shadow-button-active); box-shadow: var(--shadow-button-active);
color: var(--color-text-button-active); color: var(--color-text-button-active);
} }
button:visited, .link-button:visited { button:visited, .link-button:visited, .logo:visited {
color: var(--color-text-button); color: var(--color-text-button);
text-decoration: none; text-decoration: none;
} }
@@ -387,6 +406,195 @@ button:visited, .link-button:visited {
Layout styles Layout styles
======================= */ ======================= */
#skipLink a {
display: block;
position: absolute;
left: -999px;
top: -999px;
}
#skipLink a:focus {
left: 0;
top: 0;
padding: var(--spacing-2);
background: var(--color-background-content-box);
}
.site-header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
padding: 1rem 1.25rem;
border-bottom: 1px solid var(--border);
position: sticky;
top: 0;
background: rgb(255 255 255 / 0.88);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
z-index: 100;
}
.desktop-nav ul,
.mobile-menu ul {
list-style: none;
margin: 0;
padding: 0;
}
.desktop-nav ul {
display: flex;
gap: 1.25rem;
}
.desktop-nav a,
.mobile-menu a {
color: inherit;
text-decoration: none;
}
.menu-toggle,
.menu-close {
width: 44px;
height: 44px;
border: 1px solid var(--border);
border-radius: 0.75rem;
background: #fff;
color: inherit;
cursor: pointer;
}
.menu-toggle {
display: none;
position: relative;
}
.menu-toggle span {
position: absolute;
left: 50%;
width: 20px;
height: 2px;
background: currentColor;
border-radius: 999px;
transform-origin: center;
transition: transform 0.25s ease, opacity 0.25s ease;
}
.menu-toggle span:nth-child(1) {
top: 14px;
transform: translateX(-50%);
}
.menu-toggle span:nth-child(2) {
top: 21px;
transform: translateX(-50%);
}
.menu-toggle span:nth-child(3) {
top: 28px;
transform: translateX(-50%);
}
.menu-toggle.is-open span:nth-child(1) {
top: 21px;
transform: translateX(-50%) rotate(45deg);
}
.menu-toggle.is-open span:nth-child(2) {
opacity: 0;
}
.menu-toggle.is-open span:nth-child(3) {
top: 21px;
transform: translateX(-50%) rotate(-45deg);
}
.menu-overlay {
position: fixed;
inset: 0;
background: var(--overlay);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
opacity: 0;
pointer-events: none;
transition: opacity 0.25s ease;
z-index: 200;
}
.mobile-menu {
position: fixed;
inset: auto 1rem 1rem 1rem;
width: auto;
max-width: 24rem;
margin-inline: auto;
background: var(--panel);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border: 1px solid rgb(255 255 255 / 0.45);
border-radius: 1rem;
box-shadow: 0 20px 50px rgb(0 0 0 / 0.16);
padding: 1rem;
opacity: 0;
transform: translateY(1rem) scale(0.98);
pointer-events: none;
transition: opacity 0.25s ease, transform 0.25s ease;
z-index: 300;
}
.mobile-menu__header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 1rem;
}
.mobile-menu ul {
display: grid;
gap: 0.5rem;
}
.mobile-menu a {
display: block;
padding: 0.95rem 1rem;
border-radius: 0.75rem;
background: rgb(255 255 255 / 0.56);
}
/* .page-content {
padding: 3rem 1.25rem;
} */
.menu-open .menu-overlay {
opacity: 1;
pointer-events: auto;
}
.menu-open .mobile-menu {
opacity: 1;
transform: translateY(0) scale(1);
pointer-events: auto;
}
@media (max-width: 679px) {
.desktop-nav {
display: none;
}
.menu-toggle {
display: inline-block;
}
}
@media (min-width: 680px) {
.menu-overlay,
.mobile-menu {
display: none;
}
}
main, footer { main, footer {
max-width: 900px; max-width: 900px;
border: none; border: none;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 21 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

+59 -3
View File
@@ -25,13 +25,69 @@
<body> <body>
<main> <div id="skipLink">
<a href="#siteContent">Skip to content</a>
</div>
<header class="site-header">
<a class="logo" href="/">
<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 1080 1080"><path d="M1000.022 50H499.59c-20.565 0-34.827 20.502-27.676 39.783l146.561 395.171c8.419 22.699 40.635 22.382 48.605-.478l61.821-177.315c6.903-19.8 34.906-19.8 41.809 0l61.821 177.315c7.97 22.861 40.187 23.178 48.605.478l146.561-395.171c7.151-19.281-7.112-39.783-27.676-39.783Z"/><path d="M360 538V106c0-30.928-25.072-56-56-56H106c-30.928 0-56 25.072-56 56v868c0 30.928 25.072 56 56 56h868c30.928 0 56-25.072 56-56V650c0-30.928-25.072-56-56-56H416c-30.928 0-56-25.072-56-56"/></svg>
</a>
<nav class="desktop-nav" aria-label="Primary navigation">
<ul>
<li><a href="#" class="link-button">Home</a></li>
<li><a href="#" class="link-button">Work</a></li>
<li><a href="#" class="link-button">About</a></li>
</ul>
</nav>
<button
class="menu-toggle"
id="menuToggle"
type="button"
aria-expanded="false"
aria-controls="mobileMenu"
aria-haspopup="true"
aria-label="Open menu"
>
<span></span>
<span></span>
<span></span>
</button>
</header>
<div class="menu-overlay" id="menuOverlay" hidden></div>
<aside
class="mobile-menu"
id="mobileMenu"
aria-label="Mobile navigation"
aria-hidden="true"
>
<div class="mobile-menu__header">
<strong>Menu</strong>
<button class="menu-close" id="menuClose" type="button" aria-label="Close menu">
</button>
</div>
<nav aria-label="Mobile navigation">
<ul>
<li><a href="#" class="link-button">Home</a></li>
<li><a href="#" class="link-button">Work</a></li>
<li><a href="#" class="link-button">About</a></li>
</ul>
</nav>
</aside>
<main id="siteContent" class="page-content">
<!-- target="_blank" rel="noopener noreferrer" --> <!-- target="_blank" rel="noopener noreferrer" -->
<header class="content-box content-intro"> <header class="content-box content-intro">
<h1 class="headline size-h2"> <h1 class="headline size-h2">
Hey, I am Lars Winter, a graphic designer from Hamburg. I conceptualize and design projects with a focus on corporate design, design systems, icon design, web design, and editorial design. Hey, I am Lars Winter, a graphic designer from Hamburg. I conceptualize and design projects focused on UX/UI design, design systems, icon design, corporate design, and editorial design.
</h1> </h1>
</header> </header>
@@ -71,7 +127,7 @@
<!-- Add your site or application content here --> <!-- Add your site or application content here -->
<!-- <script src="js/app.js"></script> --> <script src="js/app.js"></script>
</body> </body>
+7 -1
View File
@@ -24,6 +24,12 @@
</head> </head>
<body> <body>
<div id="skipLink">
<a href="#siteContent">Skip to content</a>
</div>
<main> <main>
<section class="align-left"> <section class="align-left">
@@ -110,7 +116,7 @@
</footer> </footer>
<!-- Add your site or application content here --> <!-- Add your site or application content here -->
<!-- <script src="js/app.js"></script> --> <script src="js/app.js"></script>
</body> </body>
+6 -1
View File
@@ -24,6 +24,11 @@
</head> </head>
<body> <body>
<div id="skipLink">
<a href="#siteContent">Skip to content</a>
</div>
<main> <main>
<section class="align-left"> <section class="align-left">
@@ -144,7 +149,7 @@
<!-- Add your site or application content here --> <!-- Add your site or application content here -->
<!-- <script src="js/app.js"></script> --> <script src="js/app.js"></script>
</body> </body>