/* Wegot – formulaire de domiciliation (terracotta / anthracite) */
.wd-wrap {
	--wd-terra: #C0633F;
	--wd-terra-dark: #A04E2F;
	--wd-terra-soft: #F6E7E0;
	--wd-anthra: #2E3134;
	--wd-muted: #6F6A66;
	--wd-line: #E3DDD8;
	--wd-bg: #FFFFFF;
	--wd-bg-alt: #FAF7F5;
	--wd-error: #B3261E;
	--wd-ok: #2E7D4F;
	max-width: 760px;
	margin: 0 auto;
	color: var(--wd-anthra);
	font-size: 16px;
	line-height: 1.5;
}
.wd-wrap *, .wd-wrap *::before, .wd-wrap *::after { box-sizing: border-box; }

.wd-form {
	background: var(--wd-bg);
	border: 1px solid var(--wd-line);
	border-radius: 14px;
	padding: 28px;
}
@media (max-width: 600px) { .wd-form { padding: 20px 16px; } }

.wd-offer {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px;
	background: var(--wd-anthra); color: #fff;
	border-radius: 10px; padding: 16px 20px; margin-bottom: 24px;
	border-left: 5px solid var(--wd-terra);
}
.wd-offer-label { font-weight: 600; }
.wd-offer-price { font-size: 1.5em; font-weight: 700; color: #F2B59C; }
.wd-offer-price small { font-size: .55em; font-weight: 400; color: #ddd; }
.wd-offer-addr { width: 100%; font-size: .9em; color: #cfcfcf; }

.wd-form fieldset { border: 0; padding: 0; margin: 0 0 28px; min-width: 0; }
.wd-form legend {
	display: flex; align-items: center; gap: 10px;
	font-size: 1.1em; font-weight: 700; padding: 0; margin-bottom: 14px;
}
.wd-step {
	display: inline-grid; place-items: center;
	width: 28px; height: 28px; border-radius: 50%;
	background: var(--wd-terra); color: #fff; font-size: .85em;
}

.wd-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
@media (max-width: 600px) { .wd-grid { grid-template-columns: 1fr; } .wd-spacer { display: none; } }
.wd-full { grid-column: 1 / -1; }

.wd-field { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.wd-label { font-size: .9em; font-weight: 600; }
.wd-form em { color: var(--wd-terra); font-style: normal; }

.wd-form input[type=text], .wd-form input[type=email], .wd-form input[type=tel],
.wd-form input[type=date], .wd-form select, .wd-form textarea {
	width: 100%; font: inherit; color: inherit;
	background: var(--wd-bg); border: 1px solid #CFC7C1; border-radius: 8px;
	padding: 10px 12px; min-height: 44px;
	transition: border-color .15s, box-shadow .15s;
}
.wd-form textarea { resize: vertical; }
.wd-form input:focus, .wd-form select:focus, .wd-form textarea:focus {
	outline: none; border-color: var(--wd-terra); box-shadow: 0 0 0 3px rgba(192,99,63,.18);
}
.wd-form .wd-invalid { border-color: var(--wd-error) !important; }

.wd-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
@media (max-width: 600px) { .wd-choices { grid-template-columns: 1fr; } }
.wd-choice { position: relative; cursor: pointer; margin: 0; }
.wd-choice input { position: absolute; opacity: 0; }
.wd-choice span {
	display: block; padding: 11px 14px; border: 1px solid #CFC7C1; border-radius: 8px;
	font-size: .95em; transition: all .15s;
}
.wd-choice input:checked + span { border-color: var(--wd-terra); background: var(--wd-terra-soft); font-weight: 600; }
.wd-choice input:focus-visible + span { box-shadow: 0 0 0 3px rgba(192,99,63,.3); }

.wd-intro { color: var(--wd-muted); font-size: .9em; margin: -6px 0 12px; }
.wd-docs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 600px) { .wd-docs { grid-template-columns: 1fr; } }
.wd-drop {
	position: relative; display: flex; flex-direction: column; gap: 4px; height: 100%;
	padding: 16px; border: 1.5px dashed #CDBFB7; border-radius: 10px;
	background: var(--wd-bg-alt); cursor: pointer; margin: 0;
	transition: border-color .15s, background .15s;
}
.wd-drop:hover, .wd-drop.is-drag { border-color: var(--wd-terra); background: var(--wd-terra-soft); }
.wd-drop.has-file { border-style: solid; border-color: var(--wd-ok); background: #F1F8F3; }
.wd-drop.wd-invalid { border-color: var(--wd-error); }
.wd-drop input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.wd-drop:focus-within { box-shadow: 0 0 0 3px rgba(192,99,63,.3); }
.wd-doc-title { font-weight: 600; }
.wd-doc-help { font-size: .85em; color: var(--wd-muted); }
.wd-doc-btn {
	align-self: flex-start; margin-top: 8px; font-size: .85em; font-weight: 600;
	color: var(--wd-terra-dark); border-bottom: 1px solid currentColor;
}
.wd-doc-files { font-size: .85em; color: var(--wd-ok); word-break: break-all; }
.wd-doc-files .wd-err { color: var(--wd-error); }

.wd-consent { display: flex; gap: 10px; align-items: flex-start; font-size: .88em; color: var(--wd-muted); margin: 0 0 20px; cursor: pointer; }
.wd-consent input { margin-top: 4px; accent-color: var(--wd-terra); width: 18px; height: 18px; flex: none; }

.wd-submit {
	display: block; width: 100%; min-height: 52px; border: 0; border-radius: 10px;
	background: var(--wd-terra); color: #fff; font: inherit; font-size: 1.05em; font-weight: 700;
	cursor: pointer; transition: background .15s;
}
.wd-submit:hover { background: var(--wd-terra-dark); }
.wd-submit:disabled { opacity: .7; cursor: wait; }
.wd-note { font-size: .85em; color: var(--wd-muted); text-align: center; margin: 10px 0 0; }

.wd-errors, .wd-client-errors {
	background: #FCEDEC; border: 1px solid #F0C4C0; color: var(--wd-error);
	border-radius: 10px; padding: 14px 18px; margin-bottom: 20px; font-size: .92em;
}
.wd-errors ul, .wd-client-errors ul { margin: 6px 0 0 18px; padding: 0; }
.wd-errors .wd-note { text-align: left; color: var(--wd-error); }

.wd-success {
	background: #F1F8F3; border: 1px solid #BFDCC9; border-left: 5px solid var(--wd-ok);
	border-radius: 12px; padding: 24px 28px;
}
.wd-success h3 { margin: 0 0 8px; color: var(--wd-ok); }
.wd-success p { margin: 0; }

.wd-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.wd-wrap .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
