Redesign how-it-works section with custom PNG icons, olive green cards, and update carousel arrows

This commit is contained in:
Estelle Köhler 2026-03-29 19:20:36 +02:00
parent 9ffa0441bc
commit 1b1ea3952b
8 changed files with 89 additions and 60 deletions

BIN
assets/Plate icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
assets/add-event icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
assets/instagram.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
assets/register icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

View File

@ -1,3 +1,22 @@
/* Instagram and Invite logo in gallery info area */
.gallery__icon--instagram {
height: 32px;
width: 32px;
object-fit: contain;
border-radius: 8px;
background: none;
/* Olive green filter for PNG: #6b6b05 */
filter: brightness(0) saturate(100%) invert(27%) sepia(81%) saturate(749%) hue-rotate(24deg) brightness(90%) contrast(90%);
}
.gallery__icon--invite {
height: 56px;
width: 56px;
object-fit: contain;
margin-left: 0;
transform: translate(-4%, -1%);
position: relative;
}
* { box-sizing: border-box; }
:root {
@ -49,7 +68,7 @@ body {
.header__actions {
display: flex;
align-items: center;
gap: 16px;
gap: 6px;
}
.top-nav-wrap {
@ -165,7 +184,7 @@ body {
align-items: center;
gap: 16px;
padding: 28px 20px;
background: #ffffff;
background: #6B6B05;
border-radius: 28px;
box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}
@ -201,6 +220,46 @@ body {
text-align: center;
}
.how-step__icon--brown {
background: #66340d;
}
.how-step__label--brown {
color: #FFFDE3;
}
.how-step__label--big {
font-size: 1.25rem;
font-weight: 700;
}
.how-step--numbered {
position: relative;
}
.how-step__corner-number {
position: absolute;
top: 12px;
left: 16px;
font-size: 2.2rem;
font-weight: 700;
}
.how-step__corner-number--brown {
color: #FFFDE3;
}
.how-step__png {
width: 192px;
height: 192px;
object-fit: contain;
}
.how-step__png--brown {
filter: brightness(0) saturate(100%) invert(99%) sepia(6%) saturate(1200%) hue-rotate(10deg) brightness(104%) contrast(97%);
}
}
@media (max-width: 900px) {
.how-it-works__steps {
grid-template-columns: 1fr;
@ -292,55 +351,32 @@ body {
height: 48px;
display: grid;
place-items: center;
border-radius: 999px;
background: rgba(255, 255, 255, 0.55);
backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.55);
color: #221c1a;
border-radius: 0;
background: none;
backdrop-filter: none;
border: none;
color: #ffffff;
cursor: pointer;
transition: transform 0.2s ease, background-color 0.2s ease;
font-size: 1.6rem;
text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
transition: transform 0.2s ease, color 0.2s ease;
z-index: 2;
}
.gallery__arrow:hover {
transform: translateY(-50%) scale(1.05);
background: rgba(255, 255, 255, 0.8);
transform: translateY(-50%) scale(1.15);
color: #e5e1b7;
}
.gallery__arrow--prev {
left: 0;
left: 12px;
}
.gallery__arrow--next {
right: 0;
right: 12px;
}
/* Container for the dots to keep them in the middle */
.gallery__center-arrow {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 24px;
}
.gallery__arrow--center {
width: 48px;
height: 48px;
display: grid;
place-items: center;
border-radius: 999px;
background: rgba(255, 255, 255, 0.55);
backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.55);
color: #221c1a;
cursor: pointer;
box-shadow: 0 2px 8px rgba(102, 52, 13, 0.08);
transition: transform 0.2s ease, background-color 0.2s ease;
}
.gallery__arrow--center:hover {
background: rgba(255, 255, 255, 0.8);
transform: scale(1.05);
/* Center arrow removed using side arrows only */
}
@media (max-width: 900px) {

View File

@ -43,20 +43,20 @@
<h2>So funktioniert's</h2>
</div>
<div class="how-it-works__steps">
<article class="how-step">
<div class="how-step__icon"><i class="fas fa-user-plus" aria-hidden="true"></i></div>
<div class="how-step__number">1</div>
<p class="how-step__label">Anmelden</p>
<article class="how-step how-step--numbered">
<span class="how-step__corner-number how-step__corner-number--brown">1</span>
<img src="assets/register icon.png" alt="Register" class="how-step__png how-step__png--brown" />
<p class="how-step__label how-step__label--brown how-step__label--big">Anmelden</p>
</article>
<article class="how-step">
<div class="how-step__icon"><i class="fas fa-calendar-plus" aria-hidden="true"></i></div>
<div class="how-step__number">2</div>
<p class="how-step__label">Event erstellen</p>
<article class="how-step how-step--numbered">
<span class="how-step__corner-number how-step__corner-number--brown">2</span>
<img src="assets/add-event icon.png" alt="Event erstellen" class="how-step__png how-step__png--brown" />
<p class="how-step__label how-step__label--brown how-step__label--big">Event erstellen</p>
</article>
<article class="how-step">
<div class="how-step__icon"><i class="fas fa-utensils" aria-hidden="true"></i></div>
<div class="how-step__number">3</div>
<p class="how-step__label">Gemeinsam essen</p>
<article class="how-step how-step--numbered">
<span class="how-step__corner-number how-step__corner-number--brown">3</span>
<img src="assets/Plate icon.png" alt="Gemeinsam essen" class="how-step__png how-step__png--brown" />
<p class="how-step__label how-step__label--brown how-step__label--big">Gemeinsam essen</p>
</article>
</div>
</section>
@ -109,16 +109,11 @@
</button>
</div>
<div class="gallery__center-arrow">
<button type="button" class="gallery__arrow gallery__arrow--center" aria-label="Nächstes Bild">
<i class="fas fa-arrow-right"></i>
</button>
</div>
<div class="gallery__info">
<div class="gallery__handle" style="display: flex; align-items: center; gap: 16px;">
<img src="assets/vecteezy_instagram-social-media-icon-symbol-element-vector-illustration_8385736.jpg" alt="Instagram" style="height: 32px; width: 32px; object-fit: contain; border-radius: 8px; background: none;" />
<img src="assets/invite-logo.svg" alt="Invité Logo" style="height: 32px; width: auto; object-fit: contain;" />
<img src="assets/instagram.png" alt="Instagram" class="gallery__icon--instagram" />
<img src="assets/invite-logo.svg" alt="Invité Logo" class="gallery__icon--invite" />
</div>
</div>
</section>

View File

@ -1,7 +1,6 @@
const carouselTrack = document.querySelector('.gallery__track');
const prevArrow = document.querySelector('.gallery__arrow--prev');
const nextArrow = document.querySelector('.gallery__arrow--next');
const centerArrow = document.querySelector('.gallery__arrow--center');
if (carouselTrack) {
const items = Array.from(carouselTrack.querySelectorAll('.gallery__item'));
@ -36,7 +35,6 @@ if (carouselTrack) {
if (nextArrow) nextArrow.addEventListener('click', showNext);
if (prevArrow) prevArrow.addEventListener('click', showPrev);
if (centerArrow) centerArrow.addEventListener('click', showNext);
document.addEventListener('keydown', (event) => {
if (event.key === 'ArrowRight') {