.ebu-estimate-form {
	margin: 0 0 2rem;
	padding: clamp(1.25rem, 4vw, 2.25rem);
	border: 1px solid var(--border, #d8e0ea);
	border-top: 4px solid var(--yellow, #f5c842);
	border-radius: var(--radius2, 14px);
	background: #fff;
	box-shadow: 0 12px 32px rgba(15, 39, 68, .07);
	color: var(--text, #1c1c1e);
}
.ebu-estimate-form *, .ebu-estimate-confirmation * { box-sizing: border-box; }
.ebu-estimate-form .ebu-form-eyebrow {
	margin: 0 0 .5rem;
	color: var(--red, #c8390a);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.ebu-estimate-form h2 { margin: 0 0 .75rem; color: var(--navy, #0f2744); line-height: 1.2; }
#ebu-estimate-heading { scroll-margin-top: 8rem; }
#ebu-estimate-help { margin: 0 0 1.5rem; color: var(--muted, #52606d); line-height: 1.6; }
.ebu-estimate-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.15rem 1.25rem; }
.ebu-estimate-form .form-group { min-width: 0; margin: 0; }
.ebu-estimate-form label { display: block; margin: 0 0 .5rem; color: var(--navy, #0f2744); font-size: .9rem; font-weight: 700; line-height: 1.45; }
.ebu-estimate-form .form-control {
	display: block;
	width: 100%;
	min-width: 0;
	min-height: 48px;
	padding: .8rem .9rem;
	border: 1px solid #748397;
	border-radius: 6px;
	background: #fff;
	color: #152334;
	font: inherit;
	font-size: 1rem;
	line-height: 1.45;
}
.ebu-estimate-form textarea.form-control { min-height: 126px; resize: vertical; }
.ebu-estimate-form .form-control:focus-visible,
.ebu-estimate-form input[type="checkbox"]:focus-visible,
.ebu-estimate-form button:focus-visible,
.ebu-estimate-form a:focus-visible,
.ebu-estimate-confirmation a:focus-visible {
	outline: 3px solid #1565c0;
	outline-offset: 3px;
}
.ebu-estimate-form [aria-invalid="true"] { border-color: #a61b1b; }
.ebu-estimate-form #ebu-estimate-details-help { margin: 0 0 .65rem; color: var(--muted, #52606d); font-size: .85rem; line-height: 1.55; }
.ebu-estimate-form .ebu-consent-label { display: grid; grid-template-columns: 1.4rem minmax(0, 1fr); gap: .7rem; align-items: start; min-height: 48px; margin: 0; padding: .35rem 0; font-size: .85rem; font-weight: 400; }
.ebu-estimate-form input[type="checkbox"] { width: 1.25rem; height: 1.25rem; margin: .1rem 0 0; accent-color: var(--navy, #0f2744); }
.ebu-estimate-form .ebu-form-submit button { display: flex; justify-content: center; width: 100%; min-height: 52px; padding: .9rem 1.25rem; background: var(--red, #c8390a); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.ebu-estimate-form .ebu-form-submit button:hover { background: #a83009; }
#ebu-estimate-privacy { margin: .8rem 0 0; color: var(--muted, #52606d); font-size: .8rem; line-height: 1.55; }
.ebu-estimate-feedback { margin: 0 0 1.25rem; padding: 1rem 1.2rem; border-left: 4px solid var(--navy, #0f2744); background: var(--light, #f4f6f9); scroll-margin-top: 8rem; }
.ebu-estimate-feedback p:last-child, .ebu-estimate-feedback ul:last-child { margin-bottom: 0; }
.ebu-estimate-feedback a { display: inline-flex; align-items: center; min-height: 44px; color: var(--navy, #0f2744); text-decoration: underline; }
.ebu-estimate-confirmation { max-width: 780px; padding: clamp(1.25rem, 4vw, 2rem); border: 1px solid var(--border, #d8e0ea); border-radius: var(--radius2, 14px); background: #fff; }
.ebu-estimate-confirmation h2 { margin-top: 0; }
.ebu-confirmation-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.5rem; }
.ebu-estimate-confirmation .btn-primary { min-height: 48px; color: #fff; text-decoration: none; }
.ebu-estimate-confirmation .btn-outline { min-height: 48px; text-decoration: none; }
@media (min-width: 640px) {
	.ebu-estimate-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ebu-estimate-fields .ebu-field-full { grid-column: 1 / -1; }
}


