/* Orion Career Enquiry Form — careers.html "Enquiry Form" section.
   Breakpoints: sm=640, md=769, lg=992, xl=1199, 1xl=1380, 2xl=1752. */

.orion-career-enquiry {
	position: relative;
	margin-bottom: 32px;
	scroll-margin-top: 100px;
}
@media (min-width: 769px)  { .orion-career-enquiry { margin-bottom: 50px; } }
@media (min-width: 992px)  { .orion-career-enquiry { margin-bottom: 60px; } }
@media (min-width: 1380px) { .orion-career-enquiry { margin-bottom: 80px; } }
@media (min-width: 1752px) { .orion-career-enquiry { margin-bottom: 100px; } }

.orion-career-enquiry__container {
	width: 100%;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}
@media (min-width: 640px)  { .orion-career-enquiry__container { max-width: 640px; } }
@media (min-width: 769px)  { .orion-career-enquiry__container { max-width: 769px; } }
@media (min-width: 992px)  { .orion-career-enquiry__container { max-width: 992px; } }
@media (min-width: 1199px) { .orion-career-enquiry__container { max-width: 1199px; } }
@media (min-width: 1380px) { .orion-career-enquiry__container { max-width: 1380px; } }
@media (min-width: 1752px) { .orion-career-enquiry__container { max-width: 1752px; } }

/* HTML global h2 schedule (beats Customizer --orion-h1-size). */
h2.orion-career-enquiry__title {
	margin: 0 0 20px;
	font-family: var(--orion-font-heading, "El Messiri", serif);
	font-weight: 500;
	color: #000;
	font-size: 26px;
	line-height: 36px;
}
@media (min-width: 640px)  { h2.orion-career-enquiry__title { font-size: 30px; line-height: 40px; } }
@media (min-width: 769px)  { h2.orion-career-enquiry__title { margin-bottom: 28px; font-size: 35px; line-height: 40px; } }
@media (min-width: 1199px) { h2.orion-career-enquiry__title { margin-bottom: 40px; font-size: 40px; line-height: 50px; } }
@media (min-width: 1380px) { h2.orion-career-enquiry__title { font-size: 46px; line-height: 55px; } }
@media (min-width: 1752px) { h2.orion-career-enquiry__title { font-size: 60px; line-height: 70px; } }

/* CF7 wraps each field in <p>; hide auto <br> between label and control. */
.orion-career-enquiry__form-wrap .wpcf7-form > p > br { display: none; }

.orion-career-enquiry__form-wrap .wpcf7-form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}
@media (min-width: 640px)  { .orion-career-enquiry__form-wrap .wpcf7-form { grid-template-columns: repeat(2, 1fr); gap: 24px; } }
@media (min-width: 1199px) { .orion-career-enquiry__form-wrap .wpcf7-form { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1380px) { .orion-career-enquiry__form-wrap .wpcf7-form { gap: 30px; } }

.orion-career-enquiry__form-wrap .wpcf7-form > p {
	position: relative;
	margin: 0;
	grid-column: span 1;
}
.orion-career-enquiry__form-wrap .wpcf7-form > p:has(textarea),
.orion-career-enquiry__form-wrap .wpcf7-form > p:has(.wpcf7-acceptance),
.orion-career-enquiry__form-wrap .wpcf7-form > p:has(input[type="submit"]) {
	grid-column: 1 / -1;
}

.orion-career-enquiry__form-wrap label {
	display: block;
	margin-bottom: 6px;
	color: #000;
	font-family: var(--orion-font-body, Lexend, sans-serif);
	font-weight: 300;
	font-size: 14px;
	line-height: 23px;
}
@media (min-width: 992px)  { .orion-career-enquiry__form-wrap label { font-size: 15px; line-height: 25px; } }
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap label {
		margin-bottom: 12px;
		line-height: 26px;
	}
}
@media (min-width: 1380px) { .orion-career-enquiry__form-wrap label { line-height: 28px; } }
@media (min-width: 1752px) { .orion-career-enquiry__form-wrap label { font-size: 18px; line-height: 32px; } }

/* HTML form controls use 16px (browser/form default), not the fluid p schedule. */
.orion-career-enquiry__form-wrap input[type="text"],
.orion-career-enquiry__form-wrap input[type="email"],
.orion-career-enquiry__form-wrap input[type="tel"],
.orion-career-enquiry__form-wrap select,
.orion-career-enquiry__form-wrap select.wpcf7-select,
.orion-career-enquiry__form-wrap textarea {
	width: 100%;
	display: block;
	border: 1px solid #000;
	border-width: 1px;
	border-style: solid;
	border-color: #000;
	outline: none;
	font-family: Lexend, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
	background-color: #fff;
	color: #000;
	border-radius: 0;
	box-sizing: border-box;
	transition: border-color 0.2s ease;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}
@media (min-width: 640px) {
	.orion-career-enquiry__form-wrap input[type="text"],
	.orion-career-enquiry__form-wrap input[type="email"],
	.orion-career-enquiry__form-wrap input[type="tel"],
	.orion-career-enquiry__form-wrap select {
		padding: 10px 8px;
	}
}
@media (min-width: 992px) {
	.orion-career-enquiry__form-wrap input[type="text"],
	.orion-career-enquiry__form-wrap input[type="email"],
	.orion-career-enquiry__form-wrap input[type="tel"],
	.orion-career-enquiry__form-wrap select,
	.orion-career-enquiry__form-wrap textarea {
		font-size: 16px;
		line-height: 24px;
	}
}
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap input[type="text"],
	.orion-career-enquiry__form-wrap input[type="email"],
	.orion-career-enquiry__form-wrap input[type="tel"],
	.orion-career-enquiry__form-wrap select {
		padding-left: 12px;
		padding-right: 12px;
	}
}
@media (min-width: 1752px) {
	.orion-career-enquiry__form-wrap input[type="text"],
	.orion-career-enquiry__form-wrap input[type="email"],
	.orion-career-enquiry__form-wrap input[type="tel"],
	.orion-career-enquiry__form-wrap select {
		padding-top: 14px;
		padding-bottom: 14px;
		font-size: 16px;
		line-height: 24px;
	}
	.orion-career-enquiry__form-wrap textarea {
		font-size: 16px;
		line-height: 24px;
	}
}

.orion-career-enquiry__form-wrap select,
.orion-career-enquiry__form-wrap select.wpcf7-select {
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 8px center;
	background-size: 18px;
	padding-right: 36px;
	min-height: 40px;
	cursor: pointer;
}
/* If Quotation JS ever wraps these, keep the visible trigger boxed like inputs. */
.orion-career-enquiry__form-wrap .orion-qt__dropdown-selected {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	padding: 8px;
	border: 1px solid #000;
	background: #fff;
	color: rgba(0, 0, 0, 0.5);
	cursor: pointer;
	font-family: Lexend, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
	min-height: 40px;
}
.orion-career-enquiry__form-wrap .orion-qt__dropdown-selected.has-value {
	color: #000;
}
.orion-career-enquiry__form-wrap .orion-qt__custom-dropdown select.orion-qt__native-select {
	position: absolute;
	opacity: 0;
	pointer-events: none;
	width: 1px;
	height: 1px;
	min-height: 0;
	border: 0;
	padding: 0;
}

.orion-career-enquiry__form-wrap textarea {
	min-height: 90px;
	height: 90px;
	resize: vertical;
	padding: 8px;
	field-sizing: fixed;
}
@media (min-width: 640px)  {
	.orion-career-enquiry__form-wrap textarea {
		min-height: 100px;
		height: 100px;
		padding: 10px 8px;
	}
}
@media (min-width: 992px)  {
	.orion-career-enquiry__form-wrap textarea {
		min-height: 130px;
		height: 130px;
	}
}
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap textarea {
		min-height: 148px;
		height: 148px;
		padding-left: 12px;
		padding-right: 12px;
	}
}
@media (min-width: 1380px) {
	.orion-career-enquiry__form-wrap textarea {
		min-height: 160px;
		height: 160px;
	}
}

.orion-career-enquiry__form-wrap input:focus,
.orion-career-enquiry__form-wrap select:focus,
.orion-career-enquiry__form-wrap textarea:focus,
.orion-career-enquiry__form-wrap .orion-qt__dropdown-selected:focus,
.orion-career-enquiry__form-wrap .orion-qt__dropdown-selected.active {
	border-color: var(--orion-primary);
}

.orion-career-enquiry__form-wrap .wpcf7-not-valid-tip {
	color: #d21c1c;
	font-size: 13px;
	margin: 6px 0 0;
	display: block;
}

.orion-career-enquiry__file {
	position: relative;
	width: 100%;
	display: flex;
	align-items: stretch;
	border: 1px solid #000;
	/* HTML: py-[7px] px-2 / md:py-[9px] / xl:py-2 xl:px-3 / 2xl:py-2.5 */
	padding: 7px 8px;
	box-sizing: border-box;
	/* Match HTML wrapper inherited control text (body defaults). */
	font-family: Lexend, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
	color: #000;
}
@media (min-width: 769px)  { .orion-career-enquiry__file { padding: 9px 8px; } }
@media (min-width: 1199px) { .orion-career-enquiry__file { padding: 8px 12px; } }
@media (min-width: 1752px) { .orion-career-enquiry__file { padding: 10px 12px; } }

.orion-career-enquiry__file .wpcf7-form-control-wrap {
	position: absolute;
	inset: 0;
}
.orion-career-enquiry__form-wrap .orion-career-enquiry__file input[type="file"] {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	z-index: 1;
	padding: 0;
	border: 0;
}

.orion-career-enquiry__file-btn {
	padding: 4px 16px;
	background: color-mix(in srgb, var(--orion-primary) 26%, transparent);
	color: #000;
	font-size: 13px;
	font-weight: 400;
	text-transform: uppercase;
	white-space: nowrap;
	border: 0;
	line-height: 1.4;
}
@media (min-width: 1199px) { .orion-career-enquiry__file-btn { font-size: 14px; padding-top: 5px; padding-bottom: 5px; } }
@media (min-width: 1380px) { .orion-career-enquiry__file-btn { padding-top: 6px; padding-bottom: 6px; } }

.orion-career-enquiry__file-label {
	padding: 0 16px;
	margin: auto 0;
	color: #000;
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: Lexend, sans-serif;
	font-weight: 300;
	font-size: 14px;
}

.orion-career-enquiry__hint {
	margin: 4px 0 0;
	color: #4b5563;
	font-family: var(--orion-font-body, Lexend, sans-serif);
	font-weight: 300;
	font-size: 13px;
	line-height: 1.4;
	display: block;
}
@media (min-width: 769px)  { .orion-career-enquiry__hint { margin-top: 8px; } }
@media (min-width: 992px)  { .orion-career-enquiry__hint { margin-top: 12px; } }

.orion-career-enquiry__form-wrap .wpcf7-acceptance {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	/* Grid gap already separates this row from the fields above
	   (HTML puts acceptance outside the field grid with its own mt). */
	margin-top: 0;
}
@media (min-width: 640px)  { .orion-career-enquiry__form-wrap .wpcf7-acceptance { align-items: center; } }

/* Tighten accept→submit to HTML xl:mt-9 / sm:mt-7 / mt-5.5 after grid gap. */
.orion-career-enquiry__form-wrap .wpcf7-form > p:has(.wpcf7-acceptance) {
	margin-top: -6px; /* gap 18 ≈ HTML mt-3 12 */
}
@media (min-width: 640px) {
	.orion-career-enquiry__form-wrap .wpcf7-form > p:has(.wpcf7-acceptance) {
		margin-top: -4px; /* gap 24 ≈ HTML mt-5 20 */
	}
}
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap .wpcf7-form > p:has(.wpcf7-acceptance) {
		margin-top: 0; /* gap 30 = HTML xl:mt-[30px] */
	}
}

.orion-career-enquiry__form-wrap .wpcf7-acceptance input {
	width: 24px;
	height: 24px;
	accent-color: var(--orion-primary);
	flex-shrink: 0;
	margin: 0;
}
@media (min-width: 1380px) { .orion-career-enquiry__form-wrap .wpcf7-acceptance input { width: 28px; height: 28px; } }

.orion-career-enquiry__form-wrap .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}
.orion-career-enquiry__form-wrap .wpcf7-acceptance label,
.orion-career-enquiry__form-wrap .wpcf7-acceptance .wpcf7-list-item-label {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	color: #000;
	font-family: var(--orion-font-body, Lexend, sans-serif);
	font-weight: 300;
	font-size: 14px;
	line-height: 23px;
}
@media (min-width: 992px) {
	.orion-career-enquiry__form-wrap .wpcf7-acceptance label,
	.orion-career-enquiry__form-wrap .wpcf7-acceptance .wpcf7-list-item-label {
		font-size: 15px;
		line-height: 25px;
	}
}
@media (min-width: 1752px) {
	.orion-career-enquiry__form-wrap .wpcf7-acceptance label,
	.orion-career-enquiry__form-wrap .wpcf7-acceptance .wpcf7-list-item-label {
		font-size: 18px;
		line-height: 32px;
	}
}

.orion-career-enquiry__form-wrap input[type="submit"],
.orion-career-enquiry__form-wrap .orion-career-enquiry__submit {
	/* Grid gap is the base; add the remainder to reach HTML mt-5.5/7/9. */
	margin-top: 4px; /* 18+4=22 */
	cursor: pointer;
	width: auto;
}
@media (min-width: 640px)  {
	.orion-career-enquiry__form-wrap input[type="submit"],
	.orion-career-enquiry__form-wrap .orion-career-enquiry__submit {
		margin-top: 4px; /* 24+4=28 */
	}
}
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap input[type="submit"],
	.orion-career-enquiry__form-wrap .orion-career-enquiry__submit {
		margin-top: 6px; /* 30+6=36 */
	}
}

.orion-career-enquiry__form-wrap .wpcf7-response-output {
	margin: 16px 0 0;
	padding: 10px 14px;
	border: 1px solid var(--orion-primary);
	font-size: 14px;
	grid-column: 1 / -1;
}
.orion-career-enquiry__form-wrap form.invalid .wpcf7-response-output { border-color: #d21c1c; color: #d21c1c; }
.orion-career-enquiry__form-wrap form.sent .wpcf7-response-output { border-color: var(--orion-primary); color: var(--orion-primary); }

/* intl-tel-input — layout in orion-intl-tel-input.css */
.orion-career-enquiry__form-wrap .iti--allow-dropdown input,
.orion-career-enquiry__form-wrap .iti--allow-dropdown input[type="tel"] {
	padding-left: 70px;
}
.orion-career-enquiry__form-wrap .iti__flag-container {
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	padding: 8px;
	box-sizing: border-box;
	pointer-events: none;
}
.orion-career-enquiry__form-wrap .iti__flag-container .iti__selected-flag {
	pointer-events: auto;
	display: flex;
	align-items: center;
	height: 100%;
	width: 55px;
	border-right: 1px solid rgba(0, 0, 0, 0.3);
	background: transparent;
}
@media (min-width: 1199px) {
	.orion-career-enquiry__form-wrap .iti__flag-container .iti__selected-flag { width: 60px; }
}
