/* Red Apple Studio – enquiry form. */

.ras-enquiry { font-family: var(--ras-body); color: var(--ras-ink); }
.ras-enquiry *, .ras-enquiry *::before, .ras-enquiry *::after { box-sizing: border-box; }

.ras-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

.ras-enquiry__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; }
.ras-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ras-field--full { grid-column: 1 / -1; }
.ras-field label { font-family: var(--ras-head); font-weight: 600; font-size: 14px; color: var(--ras-ink); }
.ras-field label span { color: var(--ras-red); }

.ras-enquiry input[type="text"], .ras-enquiry input[type="email"], .ras-enquiry input[type="tel"],
.ras-enquiry input[type="date"], .ras-enquiry select, .ras-enquiry textarea {
	width: 100%; min-height: 48px; margin: 0; padding: 12px 16px; border: 1px solid rgba(43, 0, 1, 0.18);
	border-radius: 12px; background: var(--ras-white); color: var(--ras-ink); font: 15px/1.5 var(--ras-body);
	box-shadow: none; transition: border-color 0.15s, box-shadow 0.15s;
}
.ras-enquiry textarea { min-height: 150px; resize: vertical; }
.ras-enquiry input::placeholder, .ras-enquiry textarea::placeholder { color: #9A8079; }
.ras-enquiry input:focus, .ras-enquiry select:focus, .ras-enquiry textarea:focus {
	outline: none; border-color: var(--ras-ink); box-shadow: 0 0 0 3px rgba(231, 32, 36, 0.18);
}
.ras-enquiry [aria-invalid="true"] { border-color: var(--ras-red); }
.ras-enquiry input[type="file"] {
	padding: 12px; border: 1.5px dashed rgba(43, 0, 1, 0.25); border-radius: 12px; background: var(--ras-cream);
	font: 14px var(--ras-body); color: var(--ras-muted); cursor: pointer;
}
.ras-enquiry input[type="file"]::file-selector-button {
	margin-right: 12px; padding: 8px 14px; border: 1.5px solid var(--ras-ink); border-radius: 999px;
	background: var(--ras-white); color: var(--ras-ink); font: 600 13px var(--ras-head); cursor: pointer;
}
.ras-field__hint { margin: 0; font-size: 13px; color: var(--ras-muted); }
.ras-field__error { margin: 0; font-size: 13px; font-weight: 600; color: #B8161A; }

.ras-enquiry__privacy { margin: 18px 0 0; font-size: 13px; color: var(--ras-muted); }
.ras-enquiry__privacy a { color: var(--ras-muted); text-decoration: underline; text-underline-offset: 3px; }

.ras-enquiry .ras-enquiry__submit {
	display: inline-flex; align-items: center; justify-content: center; min-height: 54px; margin-top: 18px;
	padding: 0 34px; border: 0; border-radius: 999px; background: var(--ras-red); color: var(--ras-white);
	font: 600 16px var(--ras-head); text-transform: none; letter-spacing: normal; cursor: pointer;
	transition: background-color 0.15s;
}
.ras-enquiry .ras-enquiry__submit:hover, .ras-enquiry .ras-enquiry__submit:focus { background: var(--ras-red-dark); color: var(--ras-white); }
.ras-enquiry .ras-enquiry__submit:focus-visible { outline: 2px solid var(--ras-ink); outline-offset: 3px; }

.ras-enquiry__notice { margin-bottom: 20px; padding: 16px 20px; border-radius: 14px; }
.ras-enquiry__notice p { margin: 0; font-size: 15px; line-height: 1.6; }
.ras-enquiry__notice-title { font-family: var(--ras-head); font-weight: 600; margin-bottom: 2px !important; }
.ras-enquiry__notice--ok { background: #E6F2DA; color: #2E5C14; }
.ras-enquiry__notice--error { background: #FCE8E8; color: #8A1014; }

@media (max-width: 640px) {
	.ras-enquiry__grid { grid-template-columns: 1fr; }
	.ras-enquiry .ras-enquiry__submit { width: 100%; }
}
