3 Commits

Author SHA1 Message Date
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 95f0d01d60 Moving footer out of main, adding flexbox to body element,
changing divs to sections
2026-05-07 15:09:15 +02:00
sefaria 7530619aef Remove styling exclusively for feature branch 2026-05-02 13:20:21 +02:00
4 changed files with 77 additions and 260 deletions
+35 -223
View File
@@ -187,6 +187,10 @@ body {
font-size: 100%;
line-height: var(--line-relaxed);
letter-spacing: 0.025em;
display: flex;
flex-direction: column;
min-height: 100vh;
min-height: 100dvh; /* better on modern mobile browsers */
}
h1,
@@ -376,193 +380,11 @@ button:visited, .link-button:visited {
margin-right: 0.3em;
}
/* =======================
Menu styles
======================= */
.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;
}
.logo {
color: inherit;
text-decoration: none;
font-weight: 700;
}
.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: 767px) {
.desktop-nav {
display: none;
}
.menu-toggle {
display: inline-block;
}
}
@media (min-width: 768px) {
.menu-overlay,
.mobile-menu {
display: none;
}
}
/* =======================
Layout styles
======================= */
main {
main, footer {
max-width: 900px;
border: none;
margin-left:auto;
@@ -575,8 +397,36 @@ main {
justify-items: stretch;
justify-content: space-between;
row-gap: var(--spacing-4);
min-height: 100vh;
min-height: 100dvh; /* better on modern mobile browsers */
}
main {
flex: 1;
}
footer {
margin-top: var(--spacing-3);
padding-top: var(--spacing-4);
padding-bottom: var(--spacing-7);
padding-left: var(--spacing-5);
padding-right: var(--spacing-5);
font-family: "MD IO", monospace;
font-style: normal;
font-weight: 400;
font-size: var(--text-small);
line-height: var(--line-relaxed);
color: var(--color-text-secondary);
}
footer a {
color: var(--color-secondary);
}
footer a:hover {
color: var(--color-secondary-hover);
}
footer a:visited {
color: var(--color-secondary);
}
.align-left {
@@ -679,44 +529,6 @@ main {
color: var(--color-neutral-900);
}
footer {
margin-top: var(--spacing-3);
padding: var(--spacing-4) var(--spacing-5);
/* background: var(--color-neutral-800);
border: color-mix(in srgb, var(--color-neutral-600) 25%, transparent) solid;
border-width: var(--border-width-sm);
border-radius: var(--radius-md); */
box-sizing: border-box;
/* box-shadow: 0px 2px 12px 0px #00000080, 0px 1px 4px 0px #00000066; */
font-family: "MD IO", monospace;
font-style: normal;
font-weight: 400;
font-size: var(--text-small);
line-height: var(--line-relaxed);
color: var(--color-text-secondary);
z-index: 20;
}
footer a {
color: var(--color-secondary);
}
footer a:hover {
color: var(--color-secondary-hover);
}
footer a:visited {
color: var(--color-secondary);
}
/* .footer-fixed {
position: fixed;
left: auto;
right: auto;
bottom: 32px;
z-index: 20;
} */
.footer-content {
display: flex;
flex-direction: row;
+24 -22
View File
@@ -81,11 +81,11 @@
<!-- target="_blank" rel="noopener noreferrer" -->
<section class="content-box content-intro">
<header class="content-box content-intro">
<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.
</h1>
</section>
</header>
<div class="content-box content-text">
<p class="text">
@@ -99,27 +99,29 @@
<!-- <div class="footer-fade"></div> -->
<footer>
<div class="footer-content">
<span>© 2018<span id="year"></span> Lars Winter</span>
<div class="footer-links">
<div>
<a href="/legal-notice.html">Legal notice</a>
</div>
<div>
<a href="/privacy.html">Privacy</a>
</div>
<div>
<a href="/archive">Archived Portfolio</a>
</div>
</div>
<script>
document.getElementById('year').textContent = new Date().getFullYear();
</script>
</div>
</footer>
</main>
<footer>
<div class="footer-content">
<span>© 2018<span id="year"></span> Lars Winter</span>
<div class="footer-links">
<div>
<a href="/legal-notice.html">Legal notice</a>
</div>
<div>
<a href="/privacy.html">Privacy</a>
</div>
<div>
<a href="/archive">Archived Portfolio</a>
</div>
</div>
<script>
document.getElementById('year').textContent = new Date().getFullYear();
</script>
</div>
</footer>
<!-- Add your site or application content here -->
<script src="js/app.js"></script>
+4 -3
View File
@@ -26,7 +26,7 @@
<body>
<main>
<div class="align-left">
<section class="align-left">
<a class="link-button" href="/"><span></span>Home</a>
@@ -85,7 +85,9 @@
<p>Wir sind nicht bereit oder verpflichtet, an Streitbeilegungsverfahren vor einer Verbraucherschlichtungsstelle teilzunehmen.</p>
<p>Quelle: <a href="https://www.e-recht24.de">https://www.e-recht24.de</a></p>
</div>
</section>
</main>
<footer>
<div class="footer-content">
@@ -107,7 +109,6 @@
</div>
</footer>
</main>
<!-- Add your site or application content here -->
<script src="js/app.js"></script>
+24 -22
View File
@@ -26,7 +26,7 @@
<body>
<main>
<div class="align-left">
<section class="align-left">
<a class="link-button" href="/"><span></span>Home</a>
@@ -118,29 +118,31 @@
<h3>Anfrage per E-Mail, Telefon oder Telefax</h3> <p>Wenn Sie uns per E-Mail, Telefon oder Telefax kontaktieren, wird Ihre Anfrage inklusive aller daraus hervorgehenden personenbezogenen Daten (Name, Anfrage) zum Zwecke der Bearbeitung Ihres Anliegens bei uns gespeichert und verarbeitet. Diese Daten geben wir nicht ohne Ihre Einwilligung weiter.</p> <p>Die Verarbeitung dieser Daten erfolgt auf Grundlage von Art. 6 Abs. 1 lit. b DSGVO, sofern Ihre Anfrage mit der Erf&uuml;llung eines Vertrags zusammenh&auml;ngt oder zur Durchf&uuml;hrung vorvertraglicher Ma&szlig;nahmen erforderlich ist. In allen &uuml;brigen F&auml;llen beruht die Verarbeitung auf unserem berechtigten Interesse an der effektiven Bearbeitung der an uns gerichteten Anfragen (Art. 6 Abs. 1 lit. f DSGVO) oder auf Ihrer Einwilligung (Art. 6 Abs. 1 lit. a DSGVO) sofern diese abgefragt wurde; die Einwilligung ist jederzeit widerrufbar.</p> <p>Die von Ihnen an uns per Kontaktanfragen &uuml;bersandten Daten verbleiben bei uns, bis Sie uns zur L&ouml;schung auffordern, Ihre Einwilligung zur Speicherung widerrufen oder der Zweck f&uuml;r die Datenspeicherung entf&auml;llt (z.&nbsp;B. nach abgeschlossener Bearbeitung Ihres Anliegens). Zwingende gesetzliche Bestimmungen &ndash; insbesondere gesetzliche Aufbewahrungsfristen &ndash; bleiben unber&uuml;hrt.</p>
<p>Quelle: <a href="https://www.e-recht24.de">https://www.e-recht24.de</a></p>
</div>
<footer>
<div class="footer-content">
<span>© 2018<span id="year"></span> Lars Winter</span>
<div class="footer-links">
<div>
<a href="/legal-notice.html">Legal notice</a>
</div>
<div>
<a href="/privacy.html">Privacy</a>
</div>
<div>
<a href="/archive">Archived Portfolio</a>
</div>
</div>
<script>
document.getElementById('year').textContent = new Date().getFullYear();
</script>
</div>
</footer>
</section>
</main>
<footer>
<div class="footer-content">
<span>© 2018<span id="year"></span> Lars Winter</span>
<div class="footer-links">
<div>
<a href="/legal-notice.html">Legal notice</a>
</div>
<div>
<a href="/privacy.html">Privacy</a>
</div>
<div>
<a href="/archive">Archived Portfolio</a>
</div>
</div>
<script>
document.getElementById('year').textContent = new Date().getFullYear();
</script>
</div>
</footer>
<!-- Add your site or application content here -->
<script src="js/app.js"></script>