/* Contact form 52: local typography and the site's light/dark palette. */
.wz-contact { padding-block: 76px 104px; }
.wz-contact :where(h1,h2,p) { margin-block: 0; }
.wz-contact p { font-family: var(--wz-reading-font); font-size: 18px; font-weight: 400; line-height: 1.7; }
.wz-contact-heading { max-width: 760px; padding-bottom: 40px; }
.wz-contact .wz-contact-eyebrow { font-family: Manrope,sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .14em; margin-bottom: 20px; }
.wz-contact h1 { font-size: clamp(48px,6vw,80px); margin-bottom: 26px; }
.wz-contact .wz-contact-intro { font-size: 20px; line-height: 1.65; color: var(--wp--preset--color--contrast); }
.wz-contact-grid { border-top: 1px solid var(--wp--preset--color--line); padding-top: 32px; }
.wz-contact-details { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; padding-bottom: 32px; margin-bottom: 36px; border-bottom: 1px solid var(--wp--preset--color--line); }
.wz-contact-form { padding: clamp(24px,3.5vw,48px); border-radius: 14px; background: #2b2c45; color: #f8f7fb; --wp--preset--color--base: #34354e; --wp--preset--color--contrast: #f8f7fb; --wp--preset--color--muted: #d2cfdf; --wp--preset--color--line: #696980; --wp--preset--color--wash: #3d3e58; }
.wz-contact h2 { font-size: 27px; margin-bottom: 18px; }

.wz-contact .wz-contact-email { font-size: clamp(22px,2vw,26px); line-height: 1.4; }
.wz-contact-email a { text-decoration: none; }
.wz-contact a { text-underline-offset: 5px; }
.wz-contact .wz-contact-social { margin-top: 0; }
.wz-contact .wz-contact-hint, .wz-contact .wz-contact-privacy { font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--contrast); }
.wz-contact .wz-contact-privacy { margin-top: 24px; }
.wz-contact #forminator-module-52 { margin-top: 30px; }
#forminator-module-52.forminator-ui { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 24px; color: var(--wp--preset--color--contrast); font-family: var(--wz-reading-font); font-weight: 400; }
#forminator-module-52 > .forminator-row { grid-column: 1 / -1; margin-bottom: 24px; }
#forminator-module-52 > .forminator-row:has(#email-1), #forminator-module-52 > .forminator-row:has(#phone-1) { grid-column: auto; }
#forminator-module-52 > .forminator-response-message { grid-column: 1 / -1; }
#forminator-module-52 > p { display: none; }
#forminator-module-52 .forminator-field { margin-bottom: 0; }
#forminator-module-52 .forminator-row .forminator-row { display: flex; gap: 20px; margin: 0; }
#forminator-module-52 .forminator-row .forminator-row > .forminator-col { flex: 1; min-width: 0; padding: 0; }
#forminator-module-52 :where(.forminator-label,.forminator-checkbox-label) { color: var(--wp--preset--color--contrast); font-family: inherit; font-size: 16px; font-weight: 400; line-height: 1.6; }
#forminator-module-52 .forminator-label { display: block; margin-bottom: 8px; }
#forminator-module-52 :where(input.forminator-input,textarea.forminator-textarea) { display: block; width: 100%; border: 1px solid var(--wp--preset--color--line); border-radius: 6px; padding: 13px 15px; background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); font-family: inherit; font-size: 16px; font-weight: 400; line-height: 1.5; box-shadow: none; }
#forminator-module-52 textarea.forminator-textarea { min-height: 150px; resize: vertical; }
#forminator-module-52 :where(input,textarea)::placeholder { color: var(--wp--preset--color--contrast); opacity: 1; }
#forminator-module-52 :where(input,textarea):focus-visible { outline: 2px solid var(--wp--preset--color--contrast); outline-offset: 3px; }
#forminator-module-52 .forminator-required { color: var(--wp--preset--color--contrast); }
#forminator-module-52 :where(.forminator-description,.forminator-description p) { font-size: 14px; line-height: 1.5; color: var(--wp--preset--color--contrast); }
#forminator-module-52 #checkbox-1 .forminator-label { font-size: 14px; font-weight: 400; line-height: 1.65; }
#forminator-module-52 .forminator-checkbox { display: flex; align-items: center; gap: 10px; cursor: pointer; }
#forminator-module-52 .forminator-checkbox input { appearance: auto; opacity: 1; position: static !important; width: 20px !important; height: 20px !important; margin: 0 !important; clip: auto !important; clip-path: none !important; accent-color: #2b2c45; }
#forminator-module-52 .forminator-checkbox-box { display: none; }
#forminator-module-52 .forminator-button-submit { border: 1px solid transparent; border-radius: 6px; padding: 15px 24px; background: #f1a0dc; color: #2b2c45; font-family: Manrope,sans-serif; font-size: 16px; font-weight: 600; line-height: 1.5; cursor: pointer; }
#forminator-module-52 .forminator-button-submit:hover { filter: brightness(.95); }
#forminator-module-52 .forminator-button-submit:disabled { opacity: .65; cursor: wait; }
#forminator-module-52 :where(.forminator-error-message,.forminator-response-message) { display: block; font-size: 16px; line-height: 1.5; padding: 10px 12px; margin-top: 10px; color: var(--wp--preset--color--contrast); background: var(--wp--preset--color--wash); border-left: 3px solid var(--wp--preset--color--contrast); }
#forminator-module-52 .forminator-response-message:empty { display: none; }
@media (max-width: 760px) {
  .wz-contact { padding-block: 48px 64px; }
  .wz-contact-heading { padding-bottom: 36px; }
  .wz-contact p { font-size: 16px; }
  .wz-contact .wz-contact-intro { font-size: 18px; }
  .wz-contact-details { grid-template-columns: minmax(0,1fr); gap: 24px; }
  #forminator-module-52.forminator-ui { grid-template-columns: minmax(0,1fr); }
  .wz-contact h2 { font-size: 25px; }
  #forminator-module-52 .forminator-row .forminator-row { flex-direction: column; gap: 0; }
  #forminator-module-52 .forminator-row .forminator-row > .forminator-col + .forminator-col { margin-top: 24px; }
  #forminator-module-52 :where(input.forminator-input,textarea.forminator-textarea) { font-size: 16px; }
}
