/**
 * AJ-Forms - Frontend Luxury Styler
 * Dark luxury aesthetic matching AANIYAH JEWELS brand standards:
 * - Fixes vertical cropping on <select> dropdown text by locking height, line-height, and padding.
 * - Injects a custom SVG Warm Gold chevron arrow on all select dropdowns.
 * - Scoped under .aj-forms-scope to prevent Elementor or Astra from forcing white input boxes or yellow buttons.
 */

.aj-forms-scope {
	width: 100% !important;
	box-sizing: border-box !important;
}

.aj-forms-scope * {
	box-sizing: border-box !important;
}

.aj-form-container {
	max-width: 900px !important;
	margin: 0 auto !important;
	padding: 20px !important;
}

/* PRE-FILLED PRODUCT PREVIEW CARD */
.aj-product-preview-card {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	background: #111111 !important;
	border: 1px solid #806B40 !important;
	border-radius: 4px !important;
	padding: 16px !important;
	margin-bottom: 24px !important;
}

.aj-preview-thumb img {
	width: 70px !important;
	height: 70px !important;
	object-fit: cover !important;
	border-radius: 4px !important;
	display: block !important;
}

.aj-preview-tag {
	font-size: 10px !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	color: #D8BD7A !important;
	font-weight: 700 !important;
	display: block !important;
}

.aj-preview-title {
	font-family: 'Playfair Display', serif !important;
	font-size: 18px !important;
	color: #ffffff !important;
	margin: 2px 0 4px !important;
}

.aj-preview-meta {
	font-size: 12px !important;
	color: #A5A5A5 !important;
}

/* HEADLINE BOX */
.aj-bespoke-headline-box {
	text-align: center !important;
	margin-bottom: 30px !important;
}

.aj-bespoke-eyebrow {
	font-size: 11px !important;
	letter-spacing: 3px !important;
	text-transform: uppercase !important;
	font-weight: 800 !important;
	display: block !important;
	margin-bottom: 8px !important;
}

.aj-bespoke-title {
	font-family: 'Playfair Display', serif !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	margin: 0 0 10px !important;
}

.aj-bespoke-desc {
	font-size: 13.5px !important;
	max-width: 650px !important;
	margin: 0 auto !important;
	line-height: 1.6 !important;
}

/* FORM CARD & FIELDS */
.aj-form-card {
	background: #080808 !important;
	border: 1px solid #3B3327 !important;
	border-radius: 4px !important;
	padding: 35px 30px !important;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8) !important;
}

.aj-card-header h2 {
	font-family: 'Playfair Display', serif !important;
	font-size: 24px !important;
	margin: 0 0 6px !important;
}

.aj-card-header p {
	font-size: 13px !important;
	margin: 0 0 20px !important;
}

.aj-form-grid-2 {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
}

@media screen and (max-width: 680px) {
	.aj-form-grid-2 {
		grid-template-columns: 1fr !important;
	}
}

.aj-form-field {
	margin-bottom: 18px !important;
}

.aj-form-field label {
	font-size: 10.5px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	font-weight: 700 !important;
	display: block !important;
	margin-bottom: 7px !important;
}

/* INPUTS & TEXTAREAS */
.aj-form-field input[type="text"],
.aj-form-field input[type="email"],
.aj-form-field input[type="tel"],
.aj-form-field textarea {
	width: 100% !important;
	background-color: #111111 !important;
	background: #111111 !important;
	border: 1px solid #3B3327 !important;
	color: #FFFFFF !important;
	padding: 12px 14px !important;
	border-radius: 2px !important;
	font-size: 13.5px !important;
	box-sizing: border-box !important;
	transition: all 0.2s ease !important;
	outline: none !important;
	height: auto !important;
}

/* DROPDOWN SELECT FIX: VERTICAL CENTERING AND UNCLIPPED TEXT */
.aj-form-field select {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	line-height: 46px !important;
	background-color: #111111 !important;
	background: #111111 !important;
	border: 1px solid #3B3327 !important;
	color: #FFFFFF !important;
	padding: 0 38px 0 14px !important;
	border-radius: 2px !important;
	font-size: 13.5px !important;
	box-sizing: border-box !important;
	transition: all 0.2s ease !important;
	outline: none !important;
	cursor: pointer !important;
	display: block !important;
	vertical-align: middle !important;

	/* Custom Gold SVG Chevron */
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23D8BD7A%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	background-size: 14px 14px !important;
}

.aj-form-field select::-ms-expand {
	display: none !important;
}

/* DROPDOWN OPTIONS */
.aj-form-field select option {
	background-color: #141414 !important;
	background: #141414 !important;
	color: #FFFFFF !important;
	padding: 12px 14px !important;
	font-size: 13px !important;
}

/* FOCUS RINGS */
.aj-form-field input:focus,
.aj-form-field select:focus,
.aj-form-field textarea:focus {
	border-color: #806B40 !important;
	background-color: #141414 !important;
	box-shadow: 0 0 10px rgba(216, 189, 122, 0.25) !important;
}

/* BUTTON */
.aj-form-submit-btn {
	width: 100% !important;
	padding: 16px 30px !important;
	border: 1px solid #806B40 !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	margin-top: 10px !important;
	box-shadow: none !important;
}

.aj-form-submit-btn:hover {
	box-shadow: 0 4px 15px rgba(222, 60, 20, 0.4) !important;
}

.aj-form-alert {
	margin-top: 16px !important;
	padding: 14px 18px !important;
	border-radius: 4px !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

.aj-form-alert.success {
	background: #111111 !important;
	border: 1px solid #27ae60 !important;
	color: #27ae60 !important;
}

.aj-form-alert.error {
	background: #111111 !important;
	border: 1px solid #DE3C14 !important;
	color: #DE3C14 !important;
}