/* ========================= Allgemeine Einstellungen ========================= */ * { margin: 0; padding: 0; box-sizing: border-box; } html { font-size: 16px; scroll-behavior: smooth; } body { font-family: Arial, Helvetica, sans-serif; line-height: 1.6; background-color: #f4f6f9; color: #222; } /* ========================= Layout ========================= */ .container { width: 90%; max-width: 1200px; margin: auto; padding: 20px; } /* ========================= Header ========================= */ header { background: #1e3a5f; color: white; padding: 20px 0; text-align: center; } header h1 { font-size: 2rem; } /* ========================= Navigation ========================= */ nav { background: #16324f; } nav ul { list-style: none; display: flex; justify-content: center; flex-wrap: wrap; } nav li { margin: 0; } nav a { display: block; padding: 15px 20px; color: white; text-decoration: none; transition: background 0.3s ease; } nav a:hover, nav a:focus { background: #28527a; outline: none; } /* ========================= Hauptbereich ========================= */ main { padding: 40px 0; } /* Flexbox-Layout */ .content { display: flex; gap: 20px; align-items: stretch; flex-wrap: wrap; } .card { flex: 1 1 300px; background: white; padding: 20px; border-radius: 10px; box-shadow: 0 3px 10px rgba(0,0,0,0.1); } /* ========================= Bilder / Medien ========================= */ img, video { max-width: 100%; height: auto; border-radius: 8px; } /* ========================= Tabellen ========================= */ .table-wrapper { overflow-x: auto; } table { width: 100%; border-collapse: collapse; background: white; } th, td { padding: 12px; border: 1px solid #ccc; text-align: left; } th { background-color: #1e3a5f; color: white; } /* ========================= Buttons ========================= */ button, .btn { background-color: #1e3a5f; color: white; border: none; padding: 12px 18px; border-radius: 6px; cursor: pointer; transition: background 0.3s ease; } button:hover, .btn:hover { background-color: #28527a; } /* ========================= Footer ========================= */ footer { background: #1e3a5f; color: white; text-align: center; padding: 20px; margin-top: 40px; } /* ========================= Accessibility ========================= */ a:focus, button:focus { outline: 3px solid #ffbf47; outline-offset: 2px; } /* ========================= Responsive Design ========================= */ /* Tablets */ @media (max-width: 992px) { header h1 { font-size: 1.7rem; } nav ul { justify-content: center; } .content { flex-direction: column; } } /* Smartphones */ @media (max-width: 600px) { body { font-size: 15px; } header { padding: 15px 10px; } header h1 { font-size: 1.4rem; } nav ul { flex-direction: column; } nav a { text-align: center; border-top: 1px solid rgba(255,255,255,0.1); } .container { width: 95%; } .card { padding: 15px; } } /* Große Bildschirme */ @media (min-width: 1400px) { body { font-size: 18px; } .container { max-width: 1400px; } }