.lwik-contact-form { width: 100%; max-width: none; margin: 0 0 4rem; padding: clamp(2.75rem, 6vw, 4.5rem) 0 0; background: transparent; border: 0; border-top: 1px solid #dce3e9; border-radius: 0; box-shadow: none; }
.lwik-contact-form h2 { margin: 0 0 2rem; color: #0a3255; font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 500; letter-spacing: -.025em; line-height: 1.1; }
.lwik-contact-form form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }
.lwik-contact-form form > p:nth-of-type(n+5) { grid-column: 1 / -1; }
.lwik-contact-form p { margin-bottom: 1.25rem; }
.lwik-contact-form label { display: block; color: #1e2d3b; font-weight: 500; }
.lwik-contact-form form > p { min-width: 0; }
.lwik-contact-form input:not([type="checkbox"]), .lwik-contact-form select, .lwik-contact-form textarea { display: block; width: 100%; max-width: 100%; min-height: 48px; margin-top: .4rem; padding: .7rem .8rem; color: #1e2d3b; background: #fff; border: 1px solid #aebdca; border-radius: 5px; box-shadow: none; }
.lwik-contact-form textarea { min-height: 160px; resize: vertical; }
.lwik-contact-form input[type="checkbox"] { width: 22px; height: 22px; margin: .15rem .65rem 0 0; accent-color: #0a3255; flex: 0 0 22px; }
.lwik-contact-form label:has(input[type="checkbox"]) { display: flex; min-height: 44px; align-items: flex-start; font-weight: 400; }
.lwik-contact-form input:focus-visible, .lwik-contact-form select:focus-visible, .lwik-contact-form textarea:focus-visible { outline: 3px solid rgba(245,135,20,.38); outline-offset: 2px; border-color: #f58714; }
.lwik-contact-form input:user-invalid, .lwik-contact-form select:user-invalid, .lwik-contact-form textarea:user-invalid { border-color: #a71930; }
.lwik-contact-form button[type="submit"] { min-height: 48px; padding: .75rem 1.25rem; color: #061f36; background: #f58714; border: 2px solid #f58714; border-radius: 999px; font-weight: 700; }
.lwik-contact-form button[type="submit"]:hover { background: #ff9b2e; border-color: #ff9b2e; }
.lwik-contact-form button[type="submit"]:focus-visible { outline: 3px solid rgba(245,135,20,.4); outline-offset: 3px; }
.lwik-contact-form .lwik-form-errors { padding: .85rem 1rem; color: #781124; background: #fff1f3; border-left: 4px solid #a71930; }
.lwik-contact-form .lwik-form-success { padding: .85rem 1rem; color: #164b2f; background: #effaf3; border-left: 4px solid #258552; }
.lwik-contact-form .lwik-hp { position: absolute; left: -10000px; }
@media (max-width: 767px) {
  .lwik-contact-form { margin-bottom: 3rem; padding-top: 2.75rem; }
  .lwik-contact-form form { grid-template-columns: minmax(0, 1fr); }
  .lwik-contact-form form > p { grid-column: 1; }
}
