div#karten_container{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
div#karten_container_infos{
	width: 50%;
	padding-right: 25px;
	box-sizing: border-box;
}

div#karten_container_pictures{
	position: relative;
	width: 50%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
div#karten_container_pictures h2{
	width: 100%;
	margin-bottom: 0px;
}

div#karten_container_pictures img{
	width: 50%;
	height: auto;
	border: 10px solid white;
	box-sizing: border-box;
}
div#karten_logo{
	position: relative;
	width: 100%;
	display: flex;
	justify-content: space-around;
	align-items: flex-end;
	font-weight: bold;
}
div#karten_logo img{	
	width: 150px;
	height: auto;
}
img#karten_hubsteigerland_logo{
	width: 250px !important;
}
img#karten_hausmeister_logo{
	background: #E62229;
	padding: 20px;
}





.order_error{
	position: relative;
	width: 100%;
	padding: 20px;
	border: 5px solid red;
	box-sizing: border-box;
}





form#form_order_card{
	position: relative;
	width: calc(100% - 60px);
	margin: 30px;
}

form#form_order_card fieldset{
	border-radius: 40px;
	padding: 40px;
	background: #EEEEEE;
}
form#form_order_card legend{
	font-size: 14pt;
}

form#form_order_card input, form#form_order_card select{
	border-radius: 5px;
}

#order_submit {
	background-color: #0D2B88;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	padding: 12px 24px;
	border: none;
	border-radius: 5px;
	cursor: pointer;
	box-shadow: 0 4px 6px -1px rgba(13, 43, 136, 0.3), 0 2px 4px -2px rgba(13, 43, 136, 0.2);
	transition: background-color 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;
}

/* Hover-Zustand (etwas heller/kräftiger) */
#order_submit:hover {
	background-color: #1237AA;
	box-shadow: 0 6px 12px -1px rgba(13, 43, 136, 0.4);
}

/* Klick-Zustand (etwas dunkler) */
#order_submit:active {
	transform: scale(0.98);
	background-color: #091E60;
}

/* Tastatur-Fokus */
#order_submit:focus-visible {
	outline: 2px solid #4D72E5;
	outline-offset: 2px;
}





div.order_card{
	position: relative;
	width: calc(100% - 20px);
	display: flex;
	align-items: flex-start;
	padding: 5px;
	box-sizing: border-box;
	margin-left: 10px;
}
.order_card.selected {
	background-color: #f0f7ff;
	border: 1px solid #4a90e2;
}
div.order_card_data{
	padding-left: 20px;
}
input.order_card_radio{
	margin-top: 5px;
}

div.order_card select{
	width: 100px;
	padding: 4px;
	box-sizing: border-box;
}
input.second_person{
	width: 300px;	
	padding: 4px;
	box-sizing: border-box;
}