.cr-quote-form {
  --cr-form-paper: #f5f4ee;
  --cr-form-ink: #17201d;
  --cr-form-blue: #244be8;
  --cr-form-line: #69726b;
  box-sizing: border-box;
  color-scheme: light;
  padding: clamp(1.25rem, 4vw, 3rem);
  background: var(--cr-form-paper);
  color: var(--cr-form-ink);
  border: 1px solid var(--cr-form-line);
  font: 400 1rem/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-wrap: anywhere;
}
.cr-quote-form *, .cr-quote-form *::before, .cr-quote-form *::after { box-sizing: border-box; }
.cr-quote-form [hidden] { display: none !important; }
.cr-quote-form .cr-form-kicker { font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.cr-quote-form h1, .cr-quote-form h2 { margin: .5rem 0 1rem; color: inherit; font-size: clamp(1.8rem, 4vw, 2.7rem); line-height: 1.12; letter-spacing: -.035em; }
.cr-quote-form h3 { margin: 0 0 .5rem; color: inherit; font-size: 1.25rem; line-height: 1.4; }
.cr-quote-form p { margin: .5rem 0 1rem; }
.cr-quote-form a { color: #1936ab; text-decoration: underline; text-underline-offset: .2em; }
.cr-form-intro { margin-bottom: 2rem; max-width: 42rem; }
.cr-form-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.cr-form-field { min-width: 0; }
.cr-form-wide { grid-column: 1 / -1; }
.cr-quote-form label { display: block; margin-bottom: .45rem; font-weight: 600; }
.cr-quote-form input:not([type="checkbox"]):not([type="hidden"]), .cr-quote-form select, .cr-quote-form textarea {
  display: block;
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: .75rem .85rem;
  border: 1px solid var(--cr-form-line);
  border-radius: 0;
  background: #fff;
  color: var(--cr-form-ink);
  font: inherit;
  letter-spacing: normal;
}
.cr-quote-form textarea { min-height: 10rem; resize: vertical; }
.cr-quote-form .cr-form-consent { display: flex; align-items: flex-start; gap: .85rem; min-height: 44px; font-size: .9375rem; font-weight: 400; cursor: pointer; }
.cr-quote-form input[type="checkbox"] { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin: .2rem 0 0; accent-color: var(--cr-form-blue); }
.cr-quote-form .cr-form-hint { color: #48544d; font-size: .8125rem; line-height: 1.6; }
.cr-quote-form .cr-field-error { margin-top: .5rem; color: #9f201d; font-size: .875rem; font-weight: 600; }
.cr-quote-form [aria-invalid="true"] { border: 2px solid #9f201d !important; }
.cr-quote-form .cr-form-summary { margin: 0 0 2rem; padding: 1.25rem; border: 2px solid #9f201d; background: #fff; }
.cr-quote-form .cr-form-summary ul { margin: .5rem 0 0; padding-left: 1.25rem; }
.cr-quote-form .cr-form-summary li { margin: .5rem 0; }
.cr-form-summary a { display: inline-block; padding-block: .2rem; }
.cr-form-success { margin: 1rem 0; padding: 1.5rem; border: 1px solid #17201d; background: #d3f56a; font-weight: 600; }
.cr-quote-form .cr-form-submit { display: inline-flex; justify-content: space-between; align-items: center; gap: 2rem; min-height: 52px; max-width: 100%; margin-top: .5rem; padding: .9rem 1.25rem; border: 1px solid var(--cr-form-blue); border-radius: 0; background: var(--cr-form-blue); color: #fff; font: 600 1rem/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; cursor: pointer; }
.cr-quote-form .cr-form-submit:hover { background: #1936ab; }
.cr-quote-form .cr-form-submit:disabled { opacity: .7; cursor: wait; }
.cr-quote-form :focus-visible, .cr-form-summary:focus, .cr-form-success:focus { outline: 3px solid #244be8; outline-offset: 4px; }
.cr-quote-form input, .cr-quote-form select, .cr-quote-form textarea, .cr-form-summary { scroll-margin-block: 6rem; }
.cr-quote-form .cr-form-trap { position: absolute !important; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.cr-result-page { margin: 0; padding: 2rem 1rem; background: #e9e9e0; color: #17201d; font: 1rem/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.cr-result-main { max-width: 54rem; margin: 0 auto; }
.cr-result-back { display: inline-block; min-height: 44px; margin-bottom: 1rem; color: #1936ab; }
@media (max-width: 600px) {
  .cr-form-fields { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .cr-quote-form .cr-form-submit { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .cr-quote-form *, .cr-result-page { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
@media (forced-colors: active) {
  .cr-quote-form, .cr-quote-form .cr-form-summary, .cr-form-success { border-color: CanvasText; }
}
