.text-center { text-align: center; }

.button-container {
	display: flex;
	justify-content: center; /* beide Buttons zentrieren */
	gap: 20px; /* Abstand zwischen Buttons */
}

/* unvisited link */
a:link {
	color: lime;
}

/* visited link */
a:visited {
	color: lime;
}

/* mouse over link */
a:hover {
	color: red;
}

/* selected link */
a:active {
	color: blue;
}

.one,.two {
	background-color:#aaa;
	border:3px solid #444;
	color:#fff;
	font:bold 25px/75px arial;
	height:75px;
	margin:20px auto;
	text-align:center;
	width:250px;
}
.three {
	background-color:#aaa;
	border:5px solid #444;
	color:#fff;
	font:bold 25px/75px arial;
	height:75px;
	margin:20px auto;
	text-align:center;
	width:400px;
}
.one {
	-moz-transition:0.5s;
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	-ms-transition:0.5s;
	transition:0.5s;
	/* color:transparent; <- DIESE ZEILE ENTFERNEN */
	text-shadow:0 0 15px #fff;
}
.two {
	-moz-transition:0.5s;
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	-ms-transition:0.5s;
	transition:0.5s;
	text-shadow:60px 10px 6px rgba(0,0,0,0.5);
}
.three {
	-moz-transition:0.5s;
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	-ms-transition:0.5s;
	transition:0.5s;
	/* color:transparent; <- DIESE ZEILE ENTFERNEN */
	text-shadow:0 0 15px #fff;
}
.one:hover {
	border-radius:250px;
	box-shadow:0 10px 10px rgba(0,0,0,0.5);
	color:#fff;
	text-shadow:0 1px 2px rgba(0,0,0,0.5);
}
.two:hover {
	background-color:#ddd;
	border:3px solid #09f;
	text-shadow:-60px 10px 6px rgba(0,0,0,0.5);
	width:500px;
}
.three:hover {
	border-radius:250px;
	box-shadow:0 10px 10px rgba(0,0,0,0.5);
	color:#fff;
	text-shadow:0 1px 2px rgba(0,0,0,0.5);
}
.bilder {
	width: 225px;
	height: 300px;
	/* border: 3px solid transparent; */
	transition: border 0.3s;
	border-radius: 18px;
	/* opacity: 1; */
	transition-duration: 0.5s, 0.5s;
}
.bilder img {
	width: 100%;
	height: 100%;
	object-fit: fill;
	margin: 10px;
	cursor: pointer;
	border: 3px solid;
}
.bilder:hover{
	border-radius: 100px;
	border-color: #4CAF50;
	opacity: 1;
}
.bilder.active {
	border-color: #2196F3;
}

/* --- MODAL HINTERGRUND (Overlay) --- */
.modal-bg {
	display: none;              /* Standardmäßig unsichtbar */
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.85); /* Dunkler Hintergrund */
	backdrop-filter: blur(5px);      /* Verschwommener Hintergrund */
	-webkit-backdrop-filter: blur(5px);
	justify-content: center;
	align-items: center;
	z-index: 9999;              /* Über allem anderen */
}

/* Wird per JS hinzugefügt, um das Modal zu zeigen */
.modal-bg.open {
	display: flex;
}

/* --- DIE BOX SELBST --- */
.modal-box {
	display: block !important;  /* Zwingt Elemente untereinander */
	background-color: #1e1e1e;
	color: #e0e0e0;
	padding: 30px;
	border-radius: 8px;
	width: 90%;
	max-width: 450px;
	border: 1px solid #333;
	box-shadow: 0 15px 40px rgba(0,0,0,0.6);
	text-align: left;
	box-sizing: border-box;
	/* Damit die Box nicht unendlich groß wird */
	position: relative;
	max-height: 90vh; /* Maximal 90% der Bildschirmhöhe */
	overflow-y: auto; /* Scrollen, falls Bildschirm zu klein */
}

/* --- DAS FORMULAR LAYOUT (NEU HINZUGEFÜGT) --- */
/* Dies garantiert, dass alles untereinander steht */
#contactForm {
display: flex;
flex-direction: column;
gap: 5px; /* Kleiner Abstand zwischen den Elementen */
}

/* --- ÜBERSCHRIFT --- */
.modal-box h2 {
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 24px;
	color: #fff;
	border-bottom: 1px solid #333;
	padding-bottom: 15px;
	text-align: left; /* Sicherstellen, dass Titel links steht */
}

/* --- LABELS (Beschriftungen) --- */
.modal-box label {
	display: block;             /* Label steht über dem Feld */
	margin-bottom: 2px;
	margin-top: 10px;           /* Etwas Abstand nach oben zum vorigen Feld */
	font-size: 14px;
	font-weight: bold;
	color: #bbb;                /* Leicht abgedunkeltes Weiß */
}

/* --- EINGABEFELDER (Input & Textarea) --- */
.modal-box input[type="text"],
.modal-box input[type="email"],
.modal-box textarea {
	width: 100%;                /* Volle Breite */
	padding: 12px;
	margin-bottom: 0px;        /* Abstand wird jetzt eher über Label-Margin geregelt */
	background-color: #2b2b2b;  /* Feld ist etwas heller als Box */
	border: 1px solid #444;
	border-radius: 4px;
	color: #fff;
	font-size: 16px;            /* Gut lesbar */
	font-family: inherit;
	resize: vertical;           /* Textarea nur vertikal vergrößerbar */

	/* WICHTIG: Verhindert, dass Padding die Box sprengt */
	box-sizing: border-box;
	transition: border-color 0.3s;
}

/* Wenn man in das Feld klickt */
.modal-box input:focus,
.modal-box textarea:focus {
	outline: none;
	border-color: #00adb5;      /* Akzentfarbe (Türkis/Cyan) */
	background-color: #333;
}

/* --- BUTTON BEREICH --- */
.btn-row {
	display: flex;
	justify-content: flex-end;  /* Buttons nach rechts schieben */
	gap: 10px;                  /* Abstand zwischen Buttons */
	margin-top: 20px;
}

/* --- BUTTON STYLES --- */
.modal-box button {
	padding: 10px 20px;
	border-radius: 4px;
	font-size: 15px;
	cursor: pointer;
	font-weight: bold;
	border: none;
	transition: all 0.2s;
}

/* Senden Button (Primär) */
.modal-box button[type="submit"] {
	background-color: #e0e0e0;  /* Helles Grau/Weiß */
	color: #121212;             /* Dunkle Schrift */
}

.modal-box button[type="submit"]:hover {
	background-color: #fff;     /* Ganz Weiß beim Drüberfahren */
	transform: translateY(-1px);
}

/* Schließen Button (Sekundär) */
.secondary, #closeModal, #closeModalAfterSuccess {
	background-color: transparent;
	color: #aaa;
	border: 1px solid #444 !important; /* !important überschreibt globale Styles falls nötig */
}

.secondary:hover, #closeModal:hover {
	color: #fff;
	border-color: #fff !important;
}

/* --- HONEYPOT (Verstecken!) --- */
.hp-field {
	display: none !important;
}

/* --- MELDUNGEN (Erfolg / Fehler) --- */
.success-box {
	background: rgba(46, 204, 113, 0.15);
	border: 1px solid #2ecc71;
	color: #a0eec0;
	padding: 15px;
	border-radius: 4px;
	margin-bottom: 20px;
}

.error-box {
	background: rgba(231, 76, 60, 0.15);
	border: 1px solid #e74c3c;
	color: #ffcccc;
	padding: 15px;
	border-radius: 4px;
	margin-bottom: 20px;
}

.error-box ul {
	margin: 0;
	padding-left: 20px;
}
