/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --font-sans: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --color-blue-600: oklch(54.6% 0.245 262.881);
  --color-black: #000;
  --color-white: #fff;
  --spacing: 4px;
  --text-xs: 12px;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 14px;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 16px;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 18px;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-xl: 20px;
  --text-xl--line-height: calc(1.75 / 1.25);
  --font-weight-normal: 400;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --tracking-normal: 0em;
  --leading-tight: 1.25;
  --leading-snug: 1.375;
  --leading-normal: 1.5;
  --leading-relaxed: 1.625;
  --radius-md: 6px;
  --radius-lg: 8px;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --color-abc-ink: #0a2540;
  --color-abc-muted: #425466;
  --color-abc-soft: #6b7c93;
  --color-abc-line: #e6ebf1;
  --color-abc-blue: #2563eb;
}
.lingostack-embedded-quote-form {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 12);
  display: grid;
  width: min(calc(100% - 40px), 1200px);
  gap: calc(var(--spacing) * 6);
  border-radius: var(--radius-lg);
  --tw-gradient-position: to bottom right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: #1b3a5c;
  --tw-gradient-to: var(--color-abc-ink);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  padding: calc(var(--spacing) * 6);
  color: var(--color-white);
  --tw-shadow: 0 18px 45px var(--tw-shadow-color, rgba(50, 50, 93, 0.12)), 0 6px 18px var(--tw-shadow-color, rgba(0, 0, 0, 0.06));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  @media (width >= 768px) {
    padding: calc(var(--spacing) * 10);
  }
}
.lingostack-embedded-quote-form .lingostack-contact-form-header h2, .lingostack-embedded-quote-form .lingostack-contact-form-header p {
  color: var(--color-white);
}
.lingostack-embedded-quote-form .lingostack-contact-form-header p {
  color: color-mix(in srgb, #fff 85%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 85%, transparent);
  }
}
.lingostack-embedded-quote-form .abc-native-contact-form label, .lingostack-embedded-quote-form .abc-native-contact-form legend, .lingostack-embedded-quote-form .abc-native-contact-form .radio-inline, .lingostack-embedded-quote-form .abc-native-contact-form .form-consent {
  color: var(--color-white);
}
.lingostack-embedded-quote-form-wrap {
  margin-inline: auto;
  max-width: 760px;
}
.lingostack-contact-form-header {
  margin-bottom: calc(var(--spacing) * 6);
}
.lingostack-contact-form-header h2 {
  margin: 0px;
  font-size: clamp(25.6px, 3vw, 32px);
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  --tw-tracking: var(--tracking-normal);
  letter-spacing: var(--tracking-normal);
  color: var(--color-abc-ink);
}
.lingostack-contact-form-header p {
  margin-top: calc(var(--spacing) * 2);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-abc-ink);
}
.abc-native-contact-form {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 5);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.abc-native-contact-form label, .abc-native-contact-form legend {
  margin-bottom: var(--spacing);
  display: block;
  font-size: 13.12px;
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  --tw-tracking: 0.04em;
  letter-spacing: 0.04em;
  color: var(--color-abc-ink);
  text-transform: uppercase;
}
.abc-native-contact-form input[type="text"], .abc-native-contact-form input[type="email"], .abc-native-contact-form input[type="tel"], .abc-native-contact-form select, .abc-native-contact-form textarea {
  min-height: 46px;
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: #aab7c7;
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 3.5);
  padding-block: calc(var(--spacing) * 2.5);
  font-family: var(--font-sans);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  color: var(--color-abc-ink);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-outline-style: none;
  outline-style: none;
  &:hover {
    @media (hover: hover) {
      border-color: #7f8da3;
    }
  }
  &:focus {
    border-color: var(--color-abc-blue);
  }
  &:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  &:focus {
    --tw-ring-color: color-mix(in srgb, #2563eb 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-abc-blue) 20%, transparent);
    }
  }
}
.abc-native-contact-form textarea {
  min-height: 150px;
  resize: vertical;
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.abc-native-contact-form input[type="file"] {
  min-height: 42px;
  width: 100%;
  cursor: pointer;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: #aab7c7;
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-abc-ink);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-outline-style: none;
  outline-style: none;
  &:focus {
    border-color: var(--color-abc-blue);
  }
  &:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  &:focus {
    --tw-ring-color: color-mix(in srgb, #2563eb 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-abc-blue) 20%, transparent);
    }
  }
}
.abc-native-contact-form input[type="file"]::file-selector-button {
  margin-right: calc(var(--spacing) * 2);
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-abc-ink);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-abc-blue);
    }
  }
}
.abc-native-contact-form .form-group {
  margin: 0px;
}
@media (width >= 768px) {
  .abc-native-contact-form .form-group--wide, .abc-native-contact-form .submit-contact, .abc-native-contact-form .form-consent {
    grid-column: span 2 / span 2;
  }
}
.abc-native-contact-form fieldset {
  border-style: var(--tw-border-style);
  border-width: 0px;
  padding: 0px;
}
.abc-native-contact-form .radio-inline {
  margin-right: calc(var(--spacing) * 4);
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  --tw-tracking: var(--tracking-normal);
  letter-spacing: var(--tracking-normal);
  color: var(--color-abc-ink);
  text-transform: none;
}
.abc-native-contact-form .radio-inline input {
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  accent-color: var(--color-abc-blue);
}
.abc-native-contact-form .form-help {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-abc-muted);
}
.abc-native-contact-form .form-consent {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  --tw-tracking: var(--tracking-normal);
  letter-spacing: var(--tracking-normal);
  color: var(--color-abc-ink);
  text-transform: none;
}
.abc-native-contact-form .form-consent input {
  margin-top: var(--spacing);
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  flex-shrink: 0;
  accent-color: var(--color-abc-blue);
}
.abc-native-contact-form .btn-primary {
  display: flex;
  min-height: 52px;
  width: 100%;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-abc-blue);
  padding-inline: calc(var(--spacing) * 10);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  --tw-shadow: 0 10px 30px var(--tw-shadow-color, rgba(37,99,235,.45));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      background-color: #1d4ed8;
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 14px 40px var(--tw-shadow-color, rgba(37,99,235,.55));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
}
.abc-native-contact-form .btn-primary:disabled {
  cursor: not-allowed;
  opacity: 70%;
}
.abc-native-contact-form input.is-invalid, .abc-native-contact-form textarea.is-invalid {
  border-color: #c0392b;
}
.abc-native-contact-form fieldset.quote-type.is-invalid legend {
  color: #c0392b;
}
.btn-outline {
  display: inline-flex;
  min-height: calc(var(--spacing) * 11);
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-abc-line);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-abc-ink);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      border-color: var(--color-abc-blue);
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-abc-blue);
    }
  }
}
.field-error {
  margin: 0px;
  margin-top: var(--spacing);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 1.5);
  font-size: 13.6px;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #c0392b;
}
.field-error::before {
  content: "⚠";
  flex-shrink: 0;
}
.form-consent .req {
  color: #c0392b;
}
.ls-alert--error {
  margin-bottom: calc(var(--spacing) * 5);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: #eac4c0;
  background-color: #fdecea;
  padding: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: #a94442;
  @media (width >= 768px) {
    grid-column: span 2 / span 2;
  }
}
.ls-alert--error strong {
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
}
.ls-dropzone {
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 2px;
  --tw-border-style: dashed;
  border-style: dashed;
  border-color: #d7e3ef;
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 5);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.ls-dropzone.is-dragover {
  border-color: var(--color-abc-blue);
  background-color: #eef7ff;
}
.ls-dropzone > strong {
  display: block;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-abc-ink);
}
.dropzone-hint {
  margin: 0px;
  margin-top: var(--spacing);
  margin-bottom: calc(var(--spacing) * 2);
  font-size: 14.4px;
  color: var(--color-abc-muted);
}
.ls-file-list {
  margin: 0px;
  margin-bottom: calc(var(--spacing) * 3);
  display: grid;
  list-style-type: none;
  padding: 0px;
}
.ls-file-list li {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(var(--spacing) * 2);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-abc-line);
  padding-block: calc(var(--spacing) * 1.5);
}
.file-meta {
  display: flex;
  min-width: 0px;
  flex-direction: column;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  word-break: break-all;
  color: var(--color-abc-ink);
}
.file-size {
  margin-left: 0px;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  color: var(--color-abc-soft);
}
.file-err {
  display: flex;
  align-items: center;
  gap: var(--spacing);
  font-size: 0.85em;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  --tw-tracking: var(--tracking-normal);
  letter-spacing: var(--tracking-normal);
  color: #c0392b;
  text-transform: none;
}
.ls-file-remove {
  flex-shrink: 0;
  cursor: pointer;
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: transparent;
  padding: var(--spacing);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1;
  line-height: 1;
  color: #a94442;
}
.abc-native-contact-form input.ls-file-input {
  display: none;
}
@keyframes ls-spin {
  to {
    transform: rotate(360deg);
  }
}
.btn-spinner {
  margin-right: calc(var(--spacing) * 2);
  display: inline-block;
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  flex-shrink: 0;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: color-mix(in srgb, #fff 35%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-white) 35%, transparent);
  }
  border-top-color: var(--color-white);
  vertical-align: middle;
  animation: ls-spin 0.75s linear infinite;
}
.recaptcha-note {
  margin: 0px;
  margin-top: calc(var(--spacing) * 3.5);
  text-align: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-abc-soft);
  @media (width >= 768px) {
    grid-column: span 2 / span 2;
  }
}
.recaptcha-note a {
  text-decoration-line: underline;
}
.recaptcha-note[hidden] {
  display: none;
}
.ls-submitting-overlay {
  position: fixed;
  inset: 0px;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
  background-color: color-mix(in srgb, #fff 85%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 85%, transparent);
  }
}
.ls-submitting-overlay__spinner {
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 5px;
  border-color: color-mix(in srgb, #000 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  border-top-color: var(--color-blue-600);
  animation: ls-spin 0.8s linear infinite;
}
.ls-submitting-overlay__text {
  margin: 0px;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-abc-ink);
}
.ls-submitting-overlay__hint {
  margin: 0px;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-abc-muted);
}
.ls-modal-overlay {
  position: fixed;
  inset: 0px;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: color-mix(in srgb, #000 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  padding: calc(var(--spacing) * 4);
}
.ls-modal-overlay[hidden] {
  display: none;
}
.ls-modal {
  width: 100%;
  max-width: 460px;
  border-radius: var(--radius-lg);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 20px 60px var(--tw-shadow-color, rgba(0,0,0,.25));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ls-modal h3 {
  margin: 0px;
  margin-bottom: calc(var(--spacing) * 2.5);
  font-size: 21.6px;
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-abc-ink);
}
.ls-modal p {
  margin: 0px;
  margin-bottom: calc(var(--spacing) * 5);
  color: var(--color-abc-muted);
}
.ls-modal__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: calc(var(--spacing) * 2.5);
}
.ls-modal .btn-primary {
  min-height: calc(var(--spacing) * 11);
  width: auto;
  padding-inline: calc(var(--spacing) * 5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-shadow: 0 0 #0000;
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: 0px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
}
.ls-result {
  display: grid;
  justify-items: center;
  gap: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 12);
  text-align: center;
  @media (width >= 768px) {
    grid-column: span 2 / span 2;
  }
}
.ls-result h3 {
  margin: 0px;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
}
.ls-result--success h3 {
  color: #28a745;
}
.ls-result--error h3 {
  color: #dc3545;
}
.ls-result__icon {
  display: grid;
  height: 88px;
  width: 88px;
  place-items: center;
  border-radius: calc(infinity * 1px);
  font-size: 44.8px;
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ls-result__icon--ok {
  background-color: #28a745;
  color: var(--color-white);
  --tw-shadow: 0 4px 20px var(--tw-shadow-color, rgba(40,167,69,.4));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ls-result__icon--fail {
  background-color: #dc3545;
  color: var(--color-white);
  --tw-shadow: 0 4px 20px var(--tw-shadow-color, rgba(220,53,69,.4));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ls-result__msg {
  margin: 0px;
  max-width: 460px;
  color: var(--color-abc-ink);
}
.ls-result__hint {
  margin: 0px;
  max-width: 460px;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-abc-muted);
}
.ls-result .btn-outline {
  margin-top: calc(var(--spacing) * 2);
}
.lingostack-embedded-quote-form [hidden] {
  display: none !important;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-border-style: solid;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
    }
  }
}
/* Match the established WordPress form typography regardless of html rem sizing. */
.lingostack-embedded-quote-form:has(.abc-native-contact-form) {
  background: #031c2d; border-radius: 0; box-shadow: none; padding: 32px 0;
}
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .lingostack-contact-form-header h2 {
  font-size: 34px; line-height: 1.1; font-weight: 700; margin: 0 0 12px;
}
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .lingostack-contact-form-header p {
  font-size: 16px; line-height: 1.65; font-weight: 400; margin: 0;
}
.abc-native-contact-form { font: inherit; gap: 20px 30px; }
.abc-native-contact-form label,
.abc-native-contact-form legend,
.abc-native-contact-form .form-consent {
  font-size: 16px; line-height: 1.65; font-weight: 400;
  text-transform: none; letter-spacing: normal; margin: 0;
}
.abc-native-contact-form input[type="text"],
.abc-native-contact-form input[type="email"],
.abc-native-contact-form input[type="tel"],
.abc-native-contact-form textarea {
  font: inherit; font-size: 16px; line-height: 1.65; min-height: 40px;
  padding: 6px 12px; border: 1px solid #ccc; border-radius: 0;
}
.abc-native-contact-form textarea { min-height: 172px; }
.abc-native-contact-form .radio-inline {
  display: flex; width: fit-content; margin: 0 0 6px;
  font-size: 16px; font-weight: 700; line-height: 1.65; gap: 12px;
}
.abc-native-contact-form .radio-inline input,
.abc-native-contact-form .form-consent input { width: 15px; height: 15px; }
.abc-native-contact-form .form-consent { gap: 8px; }
.abc-native-contact-form .ls-dropzone { padding: 16px; color: #333; }
.abc-native-contact-form .ls-dropzone > strong { font-size: 16px; }
.abc-native-contact-form .dropzone-hint { font-size: 12px; line-height: 1.55; margin: 6px 0 10px; }
.abc-native-contact-form .field-error { font-size: 14px; line-height: 1.5; }
.abc-native-contact-form .btn-outline,
.abc-native-contact-form button[type="submit"] {
  font-family: inherit; font-size: 16px; line-height: 1.65; font-weight: 400;
  color: #fff; background: #337ab7; padding: 10px 12px; border: 1px solid #2e6da4;
  border-radius: 0; min-height: 48px; box-shadow: none; transform: none;
}
.abc-native-contact-form button[type="submit"] { width: 50%; margin: 0 auto; }
.abc-native-contact-form button:hover { background: #286090; }
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-modal h3,
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-result h3 { font-size: 24px; }
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-modal p,
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-modal button,
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-result p,
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .ls-result button { font-size: 16px; }
@media (max-width: 767px) {
  .lingostack-embedded-quote-form:has(.abc-native-contact-form) .lingostack-contact-form-header h2 { font-size: 28px; }
  .abc-native-contact-form button[type="submit"] { width: 100%; }
}

/* Shared quote panel: one width and inset for inline and below-column embeds. */
.lingostack-embedded-quote-form:has(.abc-native-contact-form) {
  box-sizing: border-box;
  width: min(calc(100% - 40px), var(--abc-container, 1200px));
  max-width: 100%;
  margin: 40px auto;
  padding: clamp(20px, 3vw, 40px);
  border-radius: 12px;
}
.container .lingostack-embedded-quote-form:has(.abc-native-contact-form) {
  width: 100%;
}
.lingostack-embedded-quote-form:has(.abc-native-contact-form) .lingostack-embedded-quote-form-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 0;
}
