/* Hier ist die wichtige Änderung für das Nebeneinanderstehen */ .projects, .tech-features { display: grid; /* Erzeugt so viele Spalten wie nebeneinander passen (mind. 300px breit) */ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin-top: 3rem; } .project-card, .tech-card { background-color: var(--card-bg); border-radius: 15px; padding: 2.5rem; box-shadow: 0 10px 30px var(--card-shadow); border: 1px solid var(--border-color); text-align: center; transition: transform 0.3s ease, background-color 0.3s; /* Flexbox Korrektur */ display: flex; flex-direction: column; justify-content: flex-start; /* Schiebt alles nach oben */ height: 100%; /* Sorgt dafür, dass alle Karten in einer Reihe gleich hoch sind */ } .project-card h3, .tech-card h3 { color: var(--accent); margin-bottom: 1.2rem; /* Abstand zwischen Überschrift und Text */ font-size: 1.5rem; } .project-card p, .tech-card p { color: var(--text-muted); line-height: 1.6; margin-bottom: 0; /* Verhindert unnötigen Platz nach unten */ } .project-card:hover, .tech-card:hover { transform: translateY(-5px); } @media (max-width: 950px) { .hamburger { display: flex !important; /* Hamburger nur auf Chat-Mobile zeigen */ } .nav-links { position: absolute; top: 100%; left: 0; width: 100%; background-color: var(--header-bg); flex-direction: column; max-height: 0; overflow: hidden; transition: max-height 0.4s ease; } .nav-links li { border-bottom: 1px solid var(--border-color); } .nav-links.mobile-open { display: flex !important; position: absolute; max-height: 300px; top: 100%; right: 0; background: var(--header-bg); width: 200px; flex-direction: column; box-shadow: 0 5px 15px var(--card-shadow); } }