/* Contact Us Page Builder component and storefront page. */
body.theme-doncenmotor.cms-page-view:has(.dm-contact) .page-main { margin: 0; max-width: none; padding: 0; width: 100%; }
body.theme-doncenmotor.cms-page-view .column.main > .dm-contact { margin: 0; }
.dm-contact { background: #fff; color: #303943; font-size: 15px; line-height: 1.6; width: 100%; }
.dm-contact *, .dm-contact *::before, .dm-contact *::after { box-sizing: border-box; }
.dm-contact__wrap { margin-inline: auto; max-width: 800px; width: calc(100% - 48px); }
.dm-contact :is(h1, h2, p) { margin-top: 0; }
.dm-contact a:focus-visible { outline: 2px solid #0078d2; outline-offset: 3px; }

.dm-contact__hero { align-items: center; background: #26323d; color: #fff; display: flex; isolation: isolate; justify-content: center; min-height: clamp(300px, calc(278.8732px + 5.6338vw), 360px); overflow: hidden; padding: 32px 24px; position: relative; text-align: center; }
.dm-contact__hero-image { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; z-index: 0; }
.dm-contact__hero::before { background: #000; content: ''; inset: 0; opacity: .55; pointer-events: none; position: absolute; z-index: 1; }
.dm-contact__hero-content { max-width: 960px; position: relative; z-index: 2; }
.dm-contact__hero-eyebrow { color: #fff; font-size: 16px; font-weight: 500; line-height: 1.4; margin: 0 0 14px; text-transform: uppercase; }
body.theme-doncenmotor .dm-contact__hero-title, .pagebuilder-stage .dm-contact__hero-title { color: #fff; font-size: clamp(32px, calc(20.7324px + 3.0047vw), 64px); font-weight: 700; line-height: 1.12; margin: 0 auto; max-width: 850px; text-transform: none; }

.dm-contact__inquiry { padding-block: clamp(44px, 6vw, 78px) clamp(70px, 8vw, 110px); }
body.theme-doncenmotor .dm-contact__form-card h2, .pagebuilder-stage .dm-contact__form-card h2 { color: #26323d; font-size: clamp(25px, 2.4vw, 32px); font-weight: 700; line-height: 1.25; margin: 0 0 10px; }
.dm-contact__form-intro { color: #52606c; font-size: 15px; line-height: 1.65; margin: 0; }
.dm-contact .dm-contact__form.dichen-form { --dichen-form-accent: #0078d2; background: transparent; padding: 0; }
.dm-contact__form .dichen-form__form { margin-top: 30px; }
.dm-contact__form .dichen-form__success { background: #f7fbff; border: 1px solid #d5e5f2; border-radius: 5px; margin-top: 30px; min-height: 240px; padding: 36px 24px; }
.dm-contact__form .dichen-form__success-icon { height: 48px; margin-bottom: 16px; width: 48px; }
.dm-contact__form .dichen-form__success-action.action.secondary { border-radius: 5px; }
.dm-contact__form .dichen-form__feedback { margin-top: 24px; }
.dm-contact__form .dichen-form__fields { gap: 22px 18px; }
.dm-contact__form .dichen-form__label { color: #34414d; font-size: 14px; margin-bottom: 8px; }
.dm-contact__form .dichen-form__control, .dm-contact .dichen-form-select__trigger { border-color: #cbd3da; min-height: 46px; }
.dm-contact .dichen-form-select__trigger { border-radius: 5px; }
.dm-contact .dichen-form-select__option,
.dm-contact .dichen-form-select__option:hover,
.dm-contact .dichen-form-select__option:focus,
.dm-contact .dichen-form-select__option[aria-selected='true'] { border-radius: 5px; }
.dm-contact__form .dichen-form__submit.action.primary { border-radius: var(--dm-button-radius, 50vw); min-height: 48px; padding-inline: 26px; }
.dm-contact .dichen-form__consent > input[type='checkbox'] { flex: 0 0 14px; max-width: 14px; min-width: 14px; width: 14px; }

.dm-contact__form-preview { margin-top: 30px; pointer-events: none; }
.dm-contact__form-preview .dichen-form__form { margin-top: 0; }
.dm-contact__form-preview .dichen-form__control:disabled { background: #fff; color: #34414d; opacity: 1; }
.dm-contact__form-preview .dichen-form-select__trigger { color: #34414d; }
.dm-contact__form-preview .dichen-form__submit { align-items: center; color: #fff; display: inline-flex; justify-content: center; }
@media (max-width: 640px) {
    .dm-contact__wrap { width: calc(100% - 36px); }
    .dm-contact__hero { padding-inline: 18px; }
    .dm-contact__inquiry { padding-block: 48px 72px; }
}
@media (max-width: 480px) {
    .dm-contact__form .dichen-form__fields { grid-template-columns: 1fr; }
    .dm-contact__form .dichen-form__field { grid-column: 1 / -1; }
}
