/* Own demo form (inc/bd-demo-form.php). Light card look; Urbanist text, JetBrains Mono labels, coral button. */
.bdf { --bdf-ink: #11193f; --bdf-ink2: #4a5173; --bdf-line: rgb(17 25 63 / .16); --bdf-coral: #ff5247; font-family: var(--bd-font-body, 'Urbanist', 'Helvetica Neue', Arial, sans-serif); color: var(--bdf-ink); text-align: left; }
.bdf *, .bdf *::before, .bdf *::after { box-sizing: border-box; }
.bdf__form { display: grid; gap: 16px; }
.bdf__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.bdf__f { display: grid; gap: 7px; min-width: 0; }
.bdf__l { font-family: var(--bd-font-mono, 'JetBrains Mono', ui-monospace, monospace); font-size: 11.5px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--bdf-ink2); }
.bdf__l b { color: var(--bdf-coral); font-weight: 500; }
.bdf input[type=text], .bdf input[type=email], .bdf select { width: 100%; height: 52px; padding: 0 16px; border: 0; border-radius: 8px; background: #f3f5fa; box-shadow: inset 0 0 0 1px var(--bdf-line); color: var(--bdf-ink); font-family: inherit; font-size: 16px; font-weight: 500; line-height: 1.2; transition: box-shadow .2s ease, background .2s ease; -webkit-appearance: none; appearance: none; }
.bdf textarea { width: 100%; min-height: 132px; padding: 14px 16px; border: 0; border-radius: 8px; background: #f3f5fa; box-shadow: inset 0 0 0 1px var(--bdf-line); color: var(--bdf-ink); font-family: inherit; font-size: 16px; font-weight: 500; line-height: 1.5; resize: vertical; transition: box-shadow .2s ease, background .2s ease; -webkit-appearance: none; appearance: none; }
.bdf input[type=tel] { width: 100%; height: 52px; padding: 0 16px; border: 0; border-radius: 8px; background: #f3f5fa; box-shadow: inset 0 0 0 1px var(--bdf-line); color: var(--bdf-ink); font-family: inherit; font-size: 16px; font-weight: 500; -webkit-appearance: none; appearance: none; }
.bdf select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' fill='none' stroke='%2311193f' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M1 1l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; padding-right: 40px; }
.bdf input::placeholder { color: rgb(17 25 63 / .4); }
.bdf input:focus, .bdf select:focus, .bdf textarea:focus { outline: 0; background-color: #fff; box-shadow: inset 0 0 0 2px var(--bdf-coral); }
.bdf [aria-invalid=true] { box-shadow: inset 0 0 0 2px var(--bdf-coral); background-color: #fff; }
.bdf__chk { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.5; color: var(--bdf-ink2); cursor: pointer; }
.bdf__chk input { flex: none; width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--bdf-coral); }
.bdf__legal { margin: 0; font-size: 13px; line-height: 1.5; color: var(--bdf-ink2); }
.bdf__legal a { color: var(--bdf-ink); text-decoration: underline; text-underline-offset: 2px; }
.bdf__go { height: 54px; border: 0; border-radius: 8px; background: var(--bdf-coral); color: #fff; font-family: inherit; font-size: 17px; font-weight: 600; line-height: 1; cursor: pointer; transition: background .2s ease, transform .2s ease; }
.bdf__go:hover { background: var(--bdf-ink); }
.bdf__go:disabled { opacity: .6; cursor: progress; }
.bdf__msg { margin: 0; font-size: 14px; line-height: 1.45; font-weight: 500; color: #b3261e; }
.bdf__msg.ok { color: var(--bdf-ink2); }
.bdf__done { display: grid; gap: 10px; justify-items: start; padding: 8px 0; }
.bdf__done[hidden], .bdf__msg[hidden] { display: none; }
.bdf__done b { font-size: 28px; font-weight: 500; letter-spacing: -.02em; }
.bdf__done p { margin: 0; font-size: 16px; line-height: 1.55; color: var(--bdf-ink2); }
.bdf__tick { width: 44px; height: 44px; border-radius: 50%; background: var(--bdf-coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11.500l4 4 8-9'/%3E%3C/svg%3E") center / 22px no-repeat; }
.bdf.is-fallback .bdf__form { display: none; }
@media (max-width: 520px) { .bdf__row { grid-template-columns: 1fr; } }

/* Home page: the shared form sits in a white card on the dark band */
.bd-homeform { width: 100%; max-width: 560px; margin: 8px auto 0; padding: clamp(20px, 3vw, 32px); background: #fff; border-radius: 12px; text-align: left; box-shadow: 0 24px 60px rgb(0 3 19 / .35); }
/* spam trap: out of sight for people, still in the page for bots */
.bdf__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
html body .bd-homeform .bdf__legal { color: #4a5173; }
html body .bd-homeform .bdf__legal a { color: #11193f; background: none; text-decoration: underline; text-underline-offset: 3px; padding: 0; box-shadow: none; }
html body .bd-homeform .bdf__chk span { color: #11193f; }
