/* Manon Abschluss 2025 - Stylesheet */

body { margin: 0; font-family: 'Poppins', sans-serif; background: linear-gradient(135deg, #fffdfc, #fff0f5); color: #333; overflow-x: hidden; }

header { text-align: center; background: linear-gradient(90deg, #ffd1dc, #ffe6f0); padding: 2rem 1rem; box-shadow: 0 4px 20px rgba(255, 105, 180, 0.3); border-bottom: 4px solid #ff99cc; position: relative; }

header::after { content: '🎓🎉👩‍🏫'; font-size: 2rem; position: absolute; right: 1rem; top: 1rem; }

header h1 { font-size: 2.8rem; color: #d63384; margin: 0; text-shadow: 2px 2px 8px rgba(255, 105, 180, 0.3); }

.subline { font-size: 1.1rem; color: #6c757d; margin-top: 0.5rem; }

.intro { text-align: center; padding: 2rem 1rem 1rem; font-size: 1.3rem; color: #444; max-width: 800px; margin: 0 auto; position: relative; }

.intro::before { content: '💖📸🌟'; position: absolute; top: -1.5rem; left: 50%; transform: translateX(-50%); font-size: 1.5rem; }

.gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; padding: 2rem; max-width: 1200px; margin: 0 auto; position: relative; }

.gallery::before { content: '🌸'; position: absolute; top: 1rem; left: 1rem; font-size: 2rem; opacity: 0.2; }

.gallery img { width: 100%; border-radius: 16px; box-shadow: 0 4px 15px rgba(255, 105, 180, 0.4); transition: transform 0.3s ease, box-shadow 0.3s ease; cursor: pointer; border: 4px solid #fff; background: #fff; }

.gallery img:hover { transform: scale(1.05); box-shadow: 0 6px 25px rgba(255, 105, 180, 0.6); }

#lightbox { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.85); justify-content: center; align-items: center; z-index: 1000; }

#lightbox img { max-width: 90%; max-height: 90%; border-radius: 20px; box-shadow: 0 0 30px rgba(255, 255, 255, 0.9); animation: pop 0.3s ease; }

@keyframes pop { from { transform: scale(0.8); opacity: 0; } to { transform: scale(1); opacity: 1; } }

footer { text-align: center; background: linear-gradient(90deg, #ffe6f0, #ffd1dc); padding: 1.5rem 1rem; margin-top: 2rem; border-top: 4px solid #ff99cc; box-shadow: 0 -4px 15px rgba(255, 182, 193, 0.2); }

footer p { margin: 0; color: #d63384; font-weight: 600; font-size: 1.1rem; }

