/* Theme-adapted styles for X-Files contact form */
.xfiles-contact-form {
	max-width: 800px;
	margin: 0 auto;
	font-family: 'simplon-bp-regular', sans-serif;
	color: #01518B;
}

.xfiles-contact-form { padding: 2rem 0 3rem; }

/* Grid for form fields: 4 equal columns (quarters) */
#form-wrapper{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem 2rem;
	align-items: start;
}

/* Field spans: half (col-1/col-2), full width */
.field { grid-column: span 4; }
.field.col-1 { grid-column: span 2; }
.field.col-2 { grid-column: span 2; }
.field.full { grid-column: 1 / -1; }
.field.break { height: 0; margin: 0; padding: 0; }

@media screen and (max-width: 990px) {
	#form-wrapper { grid-template-columns: 1fr; gap: 1rem; }
	.field { grid-column: 1 / -1; }
}

/* Inputs / selects */
.xfiles-contact-form .contact-two,
.xfiles-contact-form .Unterkategorie,
.xfiles-contact-form textarea,
.xfiles-contact-form select,
.xfiles-contact-form input[type="text"],
.xfiles-contact-form input[type="email"],
.xfiles-contact-form input[type="tel"] {
	width: 100%;
	padding: 1.1rem 1.3rem;
	box-sizing: border-box;
	border: 1px solid rgba(1,81,139,0.08);
	border-radius: 14px;
	font-size: 1rem;
	line-height: 1.5;
	background: #ffffff;
	transition: box-shadow .18s ease, border-color .18s ease;
	min-height: 58px;
}

.xfiles-contact-form select, .xfiles-contact-form option { text-transform: uppercase; font-size: 1rem; height: 58px; }

.xfiles-contact-form textarea { min-height: 320px !important; resize: vertical; padding-top:1.3rem; font-size: 1rem; line-height: 1.6; }

.xfiles-contact-form .submit-row { margin-top: 1.75rem; }

/* Button style like Bild3: full width, thin border, centered text */
.xfiles-contact-form button#submit_message,
.xfiles-contact-form #submit_message {
	display: block;
	width: 100%;
	padding: 0.85rem 1rem;
	border: 1px solid rgba(1,81,139,0.18);
	border-radius: 6px;
	background: transparent;
	color: #01518B;
	font-family: 'simplon-bp-medium', 'simplon-bp-bold', sans-serif;
	text-align: center;
	font-size: 0.95rem;
}

.xfiles-contact-form button#submit_message:hover { background: rgba(1,81,139,0.04); }

#xfiles-response { margin-top:12px; font-weight:600; }

/* Consent */
.xfiles-contact-form .consent { margin-top: 1rem; font-size: 0.95rem; }

/* Small helpers */
.xfiles-contact-form .contact-two:focus,
.xfiles-contact-form textarea:focus,
.xfiles-contact-form select:focus { outline: none; box-shadow: 0 6px 18px rgba(1,81,139,0.06); border-color: #01518B; }

/* Placeholder styling like Bild3 */
.xfiles-contact-form ::-webkit-input-placeholder { color: #01518B; text-transform: uppercase; opacity:0.95; font-size: 1rem;}
.xfiles-contact-form ::-moz-placeholder { color: #01518B; text-transform: uppercase; opacity:0.95; font-size: 1rem;}
.xfiles-contact-form ::placeholder { color: #01518B; text-transform: uppercase; opacity:0.95; font-size: 1rem;}

/* Ensure large spacing between form rows */
.xfiles-contact-form .cell-wrapper + .cell-wrapper { margin-top: 1.5rem; }
