/* AdvaTech native lead form (replaces the Bigin embed). Brand: #FF3E25, black, white. */
.atl-form-embed { width: 100%; max-width: 820px; margin: 1rem auto 0; font-family: Montserrat, Arial, sans-serif; }
.atl-form, .clean-block.clean-form form.atl-form { max-width: none; margin: 0; padding: 0; background: #fff; color: #111; border-radius: 12px; overflow: hidden; border-top: 6px solid #FF3E25 !important; box-shadow: 0 6px 24px rgba(0,0,0,.08); text-align: left; }
.atl-head { background: #111; color: #fff; padding: 22px 24px 18px; }
.atl-title { font-size: 1.35rem; font-weight: 700; margin: 0 0 6px; color: inherit; }
.atl-head .atl-title { color: #fff; }
.atl-desc { margin: 0; color: #d9d9d9; font-size: .95rem; line-height: 1.45; }
.atl-body { padding: 22px 24px 24px; }
.atl-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.atl-full { grid-column: 1 / -1; }
@media (max-width: 575px) { .atl-grid { grid-template-columns: 1fr; } }
.atl-field label { display: block; font-weight: 600; font-size: .9rem; margin-bottom: 5px; color: #111; }
.atl-req { color: #FF3E25; }
.atl-field input, .atl-field textarea, .atl-field select { width: 100%; box-sizing: border-box; border: 1.5px solid #cfcfcf; border-radius: 8px; padding: 10px 12px; font: inherit; font-size: 1rem; color: #111; background: #fff; transition: border-color .15s, box-shadow .15s; }
.atl-field textarea { resize: vertical; min-height: 120px; }
.atl-field input:focus, .atl-field textarea:focus, .atl-field select:focus { outline: none; border-color: #FF3E25; box-shadow: 0 0 0 3px rgba(255,62,37,.18); }
.atl-field.atl-invalid input, .atl-field.atl-invalid textarea, .atl-field.atl-invalid select { border-color: #c4200c; }
.atl-field-msg { display: block; color: #c4200c; font-size: .82rem; margin-top: 4px; }
.atl-help { display: block; color: #666; font-size: .8rem; margin-top: 5px; }
.atl-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.atl-turnstile { margin: 16px 0 4px; min-height: 0; }
.atl-privacy { font-size: .8rem; color: #666; margin: 10px 0 14px; }
.atl-error { background: #fff1ef; border: 1px solid #FF3E25; color: #8a1606; border-radius: 8px; padding: 10px 12px; font-size: .9rem; margin-bottom: 14px; }
.atl-btn { display: inline-block; background: #FF3E25; color: #fff; border: 2px solid #FF3E25; border-radius: 8px; padding: 12px 26px; font-weight: 700; font-size: 1rem; cursor: pointer; transition: background .15s, color .15s; }
.atl-btn:hover, .atl-btn:focus { background: #111; border-color: #111; color: #fff; }
.atl-btn[disabled] { opacity: .65; cursor: wait; }
.atl-alt { margin: 12px 0 0; font-size: .88rem; color: #444; }
.atl-alt a, .atl-thanks a { color: #FF3E25; font-weight: 600; }
.atl-thanks { padding: 36px 28px 40px; text-align: center; }
.atl-thanks:focus { outline: none; }
.atl-check { width: 64px; height: 64px; line-height: 64px; margin: 0 auto 14px; border-radius: 50%; background: #FF3E25; color: #fff; font-size: 34px; font-weight: 700; }
.atl-thanks p { color: #333; max-width: 460px; margin: 6px auto 0; }
.atl-form.atl-done .atl-head, .atl-form.atl-done .atl-body { display: none; }
.atl-field select { appearance: none; -webkit-appearance: none; padding-right: 40px; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23FF3E25' stroke-width='2.2' fill='none'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; }
.atl-field select:invalid { color: #777; }
.atl-field select option { color: #111; }
.atl-field[hidden] { display: none; }
/* File uploads */
.atl-opt { font-weight: 400; color: #777; }
.atl-drop { position: relative; border: 2px dashed #bdbdbd; border-radius: 10px; background: #fafafa; padding: 22px 16px; text-align: center; transition: border-color .15s, background .15s; }
.atl-drop:hover, .atl-drop.atl-drag, .atl-drop:focus-within { border-color: #FF3E25; background: #fff5f3; }
.atl-file-input, .atl-field input.atl-file-input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; padding: 0; border: 0; }
.atl-drop-inner { pointer-events: none; display: flex; flex-direction: column; align-items: center; gap: 6px; color: #111; font-size: .98rem; }
.atl-drop-link { color: #FF3E25; text-decoration: underline; }
.atl-file-list { list-style: none; margin: 10px 0 0; padding: 0; }
.atl-file { display: grid; grid-template-columns: 1fr auto 34px; align-items: center; gap: 4px 10px; padding: 9px 10px 10px 12px; border: 1.5px solid #e2e2e2; border-left: 4px solid #111; border-radius: 8px; margin-top: 8px; background: #fff; }
.atl-file-done { border-left-color: #FF3E25; }
.atl-file-err { border-color: #c4200c; border-left-color: #c4200c; }
.atl-file-name { font-weight: 600; font-size: .92rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.atl-file-meta { font-size: .82rem; color: #666; white-space: nowrap; }
.atl-file-x { width: 30px; height: 30px; border-radius: 50%; border: 0; background: #f1f1f1; color: #111; font-size: 20px; line-height: 30px; padding: 0; cursor: pointer; }
.atl-file-x:hover, .atl-file-x:focus { background: #111; color: #fff; outline: none; }
.atl-file-x[disabled] { opacity: .35; cursor: default; }
.atl-bar { grid-column: 1 / -1; height: 6px; background: #eee; border-radius: 3px; overflow: hidden; }
.atl-bar-fill { display: block; height: 100%; width: 0; background: #FF3E25; transition: width .2s; }
.atl-file-err .atl-bar-fill { background: #c4200c; }
.atl-field.atl-invalid .atl-drop { border-color: #c4200c; }
@media (max-width: 575px) { .atl-drop { padding: 18px 12px; } .atl-file { grid-template-columns: 1fr 34px; } .atl-file-meta { grid-column: 1; grid-row: 2; } .atl-file-x { grid-column: 2; grid-row: 1 / span 2; } }
/* Desktop layout: paired fields line up even when one label wraps */
.atl-grid > .atl-field { display: flex; flex-direction: column; min-width: 0; }
.atl-grid > .atl-field > label { flex: 1 0 auto; }
.atl-grid > .atl-field[hidden] { display: none; }
@media (min-width: 992px) {
  .atl-head { padding: 26px 32px 22px; }
  .atl-body { padding: 26px 32px 30px; }
  .atl-grid { gap: 16px 20px; }
  .proposal-form .atl-form-embed { max-width: none; margin: 1.25rem 0 0; }
}
/* Landing pages: form beside the "Prefer to talk" column */
.proposal-form .lp-form-row .atl-form-embed { flex: 1 1 0; min-width: 0; max-width: none; margin: 0; }
@media (max-width: 991.98px) { .proposal-form .lp-form-row .atl-form-embed { flex: none; width: 100%; } }
/* /contact: map + contact details on the left, form on the right */
.atl-ctx-right .atl-form-embed { max-width: none; margin: 0; }
.atl-ctx-info { margin-top: 18px; }
.atl-ctx-info > .d-flex { padding: 10px 0 !important; }
@media (min-width: 992px) {
  .atl-ctx-left { text-align: left; }
  .atl-ctx-left h1 { margin-top: 0; }
  .atl-ctx-left .ratio { border-radius: 12px; overflow: hidden; box-shadow: 0 6px 24px rgba(0,0,0,.08); }
}
@media (max-width: 991.98px) { .atl-ctx-left { text-align: center; } .atl-ctx-info { align-items: stretch !important; text-align: left; } }
@media (min-width: 992px) { .atl-ctx-left .ratio { --bs-aspect-ratio: 112%; } }
/* Landing pages, desktop: "Prefer to talk" becomes a strip above a full-width form (no empty side column) */
@media (min-width: 992px) {
  .proposal-form .lp-form-row { flex-direction: column; align-items: stretch; gap: 1.25rem; }
  .proposal-form .lp-form-side { flex: none; display: grid; grid-template-columns: 1.15fr 1.5fr .85fr; gap: 28px; align-items: start;
    padding: 18px 24px; border: 1px solid rgba(255,255,255,.14); border-left: 4px solid #FF3E25; border-radius: 10px; background: rgba(255,255,255,.03); }
  .proposal-form .lp-form-side > * { margin: 0; }
  .proposal-form .lp-form-row .atl-form-embed { flex: none; width: 100%; margin: 0; }
}
