/* Zusätzliche Styles für die Login-Seite */
.login-container {
max-width: 800px;
margin: 0 auto;
padding: 20px;
}

.login-box {
background: rgba(255, 255, 255, 0.95);
border-radius: 20px;
padding: 40px;
box-shadow: 0 20px 40px rgba(0,0,0,0.05);
margin-bottom: 30px;
}

.login-box h1 {
font-family: 'Playfair Display', serif;
font-size: 2.5em;
font-weight: 700;
color: #a87e4d;
text-align: center;
margin-bottom: 10px;
text-shadow: 0 1px 2px rgba(0,0,0,0.1);
}

.login-box h2 {
font-family: 'Playfair Display', serif;
font-size: 1.3em;
font-weight: 500;
color: #b08d57;
text-align: center;
margin-bottom: 30px;
font-style: italic;
}

.login-box > p {
	text-align: center;
}

.info-section {
background: rgba(255, 255, 255, 0.95);
border-radius: 20px;
padding: 30px;
box-shadow: 0 20px 40px rgba(0,0,0,0.05);
margin-bottom: 30px;
}

.info-section h2 {
font-family: 'Playfair Display', serif;
font-size: 1.8em;
font-weight: 700;
color: #a87e4d;
margin-bottom: 20px;
border-bottom: 2px solid #e7c065;
padding-bottom: 10px;
}

.info-section h3 {
font-family: 'Playfair Display', serif;
font-size: 1.4em;
font-weight: 500;
color: #b08d57;
margin-bottom: 15px;
margin-top: 25px;
}

.info-section p {
line-height: 1.6;
margin-bottom: 15px;
}

.info-section ul {
margin-left: 20px;
margin-bottom: 15px;
}

.info-section li {
margin-bottom: 8px;
line-height: 1.5;
}

.info-section a {
color: #b08d57;
text-decoration: none;
font-weight: 500;
}

.info-section a:hover {
color: #a87e4d;
text-decoration: underline;
}

.price-table {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 30px;
margin-bottom: 20px;
}

.price-column {
background: rgba(212, 175, 55, 0.1);
padding: 20px;
border-radius: 10px;
}

.price-column h3 {
margin-top: 0;
}

.login-form {
text-align: center;
margin-top: 30px;
}

.login-form h2 {
font-family: 'Playfair Display', serif;
font-size: 1.5em;
font-weight: 500;
color: #a87e4d;
margin-bottom: 20px;
}

.login-form input[type="password"] {
width: 100%;
max-width: 300px;
padding: 12px 16px;
border: 2px solid #e7c065;
border-radius: 10px;
font-size: 16px;
font-family: 'Lato', sans-serif;
margin-bottom: 20px;
background: rgba(255, 255, 255, 0.9);
color: #5a4e4e;
transition: border-color 0.3s ease;
}

.login-form input[type="password"]:focus {
outline: none;
border-color: #b08d57;
}

.login-form button {
background: linear-gradient(145deg, #d4af37, #e7c065);
color: white;
border: none;
padding: 12px 30px;
border-radius: 10px;
cursor: pointer;
font-size: 16px;
font-weight: 600;
font-family: 'Lato', sans-serif;
transition: all 0.3s ease;
box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}

.login-form button:hover {
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(0,0,0,0.2);
}

.error {
color: #d32f2f;
background: rgba(255, 235, 238, 0.8);
padding: 10px;
border-radius: 8px;
margin-top: 15px;
font-weight: 500;
}

.photographers {
text-align: center;
font-style: italic;
color: #b08d57;
margin-top: 30px;
}

.photographers a {
color: #b08d57;
text-decoration: none;
}

.photographers a:hover {
text-decoration: underline;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
.login-container {
	padding: 10px;
}

.login-box {
	padding: 25px;
}

.login-box h1 {
	font-size: 2em;
}

.login-box h2 {
	font-size: 1.1em;
}

.info-section {
	padding: 20px;
}

.info-section h2 {
	font-size: 1.5em;
}

.info-section h3 {
	font-size: 1.2em;
}

.price-table {
	grid-template-columns: 1fr;
	gap: 20px;
}

.price-column {
	padding: 15px;
}
}

@media (max-width: 480px) {
.login-box h1 {
	font-size: 1.8em;
}

.login-box h2 {
	font-size: 1em;
}

.info-section h2 {
	font-size: 1.3em;
}
}