/* Quote forms (lp, contact, location). Loaded after the layout stylesheet; selectors match its specificity. */
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field label{display:block;margin-bottom:6px;font-family:'Open Sans',system-ui,sans-serif;font-size:13.5px;line-height:18px;font-weight:600;letter-spacing:.005em;color:#36444E;text-transform:none}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field:has(:required) > label::after{content:' *';color:#B42318}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field input:not([type=file]),
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field select,
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field textarea{height:48px;margin-top:0;padding:11px 14px;background-color:#fff;border:1.5px solid #CBD5DD;border-radius:6px;box-shadow:none;font-family:'Open Sans',system-ui,sans-serif;font-size:16px;line-height:22px;font-weight:400;color:#141F38;transition:border-color .15s ease,box-shadow .15s ease}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field textarea{height:96px;resize:vertical}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field input:not([type=file]):hover,
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field select:hover,
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field textarea:hover{background-color:#fff;border-color:#94A3B8;box-shadow:none;font-weight:400}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field input:not([type=file]):focus,
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field select:focus,
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field textarea:focus{background-color:#fff;border-color:#3B6B9C;box-shadow:0 0 0 4px rgba(133,204,255,.4);outline:none;font-weight:400}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field ::placeholder{color:#8A96A3;opacity:1}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field.has-error :is(input,textarea){border-color:#B42318;box-shadow:0 0 0 4px rgba(180,35,24,.12)}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .field:not(:last-child){margin-bottom:16px}

/* submit */
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) button.send{border-radius:6px;box-shadow:0 6px 0 color-mix(in srgb, var(--colorDelta), #000 30%);letter-spacing:.02em;transition:background-color .15s ease,transform .1s ease,box-shadow .1s ease}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) button.send::after{content:'  →'}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) button.send:hover{transform:translateY(-1px)}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) button.send:active{transform:translateY(4px);box-shadow:0 2px 0 color-mix(in srgb, var(--colorDelta), #000 30%)}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .trust-signals span{font-family:'Open Sans',system-ui,sans-serif;font-size:12.5px;line-height:19px;color:#3F7A12}
:is(#dg_lp form, #dg_contact form, #dg_location .quote-form) .messaging :is(strong,p){font-family:'Open Sans',system-ui,sans-serif}

/* perks */
.dg-form-perks{list-style:none;margin:4px 0 22px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.dg-form-perks li{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 10px;border-radius:999px;background:#EEF7E8;color:#2F5F0D;font-family:'Open Sans',system-ui,sans-serif;font-size:13px;font-weight:600;line-height:1}
.dg-form-perks li::before{content:'';width:14px;height:14px;background:#4E9A1B;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}

/* proof */
.dg-form-proof{margin:22px 0 0;padding:16px 18px;border-left:4px solid var(--colorDelta);background:#F6F8FA;border-radius:0 6px 6px 0;text-align:left}
.dg-form-proof blockquote{margin:0 0 6px;font-family:'Open Sans',system-ui,sans-serif;font-size:14.5px;line-height:21px;font-style:italic;color:#141F38}
.dg-form-proof figcaption{font-family:'Open Sans',system-ui,sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5B6470}

/* card: lp form */
#dg_lp .hero .form-wrap{border-top:6px solid var(--colorDelta);border-radius:8px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
#dg_lp .hero .form-wrap > p{font-family:'Open Sans',system-ui,sans-serif;font-size:14px;line-height:20px;color:#36444E;padding-bottom:10px}

/* upload hint in Open Sans too */
:is(#dg_lp, #dg_contact, #dg_location) .dg-upload :is(p, .dg-upload-or, .dg-upload-list li, .opt){font-family:'Open Sans',system-ui,sans-serif}
