.contact-quote{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:7%;align-items:start}.contact-intro{min-width:0;padding-top:16px}.contact-quote h2{font-size:clamp(2.8rem,4.7vw,5rem);line-height:1.06;letter-spacing:-.055em;overflow-wrap:normal}.contact-quote h2 span{display:block;margin-top:8px}.contact-lead{font-size:1.125rem;line-height:1.65;max-width:460px;margin:30px 0;color:#293100}.contact-services{display:flex;gap:10px;flex-wrap:wrap}.contact-services>span{border:1px solid #7a9300;border-radius:24px;padding:7px 13px;font-size:.875rem}.direct-contact{display:flex;gap:18px;align-items:center;border-top:1px solid #839b00;padding-top:28px;margin-top:48px;max-width:460px}.direct-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #637400;border-radius:50%;font-size:26px;flex-shrink:0}.direct-contact h3{font-size:1.125rem;margin:0 0 4px;font-weight:600}.direct-contact p{font-size:.875rem;margin:0;color:#354000}.quote-card{background:#101010;color:#f2f2eb;border-radius:24px;padding:36px;min-width:0;box-shadow:0 16px 50px #0002}.quote-eyebrow{font-size:.75rem;letter-spacing:1.6px;color:var(--lime);margin:0 0 16px}.quote-card h3{font-size:clamp(1.5rem,2.3vw,2rem);letter-spacing:-.035em;line-height:1.2;margin:0 0 12px;font-weight:500}.quote-description{color:#b5b5b5;font-size:1rem;margin:0 0 30px}.quote-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 16px}.quote-field{min-width:0;display:flex;flex-direction:column;gap:8px}.quote-field.full{grid-column:1/-1}.quote-field label{font-size:.875rem;font-weight:500}.quote-field label span{color:#aaa;font-weight:400}.quote-field input,.quote-field select,.quote-field textarea{display:block;width:100%;min-width:0;background:#1d1d1d;border:1px solid #505050;color:#f2f2eb;border-radius:10px;font:inherit;font-size:1rem;padding:12px 13px;min-height:48px;transition:border-color .2s,background .2s;box-sizing:border-box;color-scheme:dark}.quote-field textarea{resize:vertical;min-height:125px}.quote-field input::placeholder,.quote-field textarea::placeholder{color:#aaa;opacity:1}.quote-field input:focus,.quote-field select:focus,.quote-field textarea:focus{outline:2px solid var(--lime);outline-offset:3px;border-color:var(--lime);background:#232323}.quote-submit{margin-top:26px;display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;min-height:52px;border:1px solid #687339;border-radius:12px;padding:14px 18px;background:#c7df66;color:#252e06;font:inherit;font-weight:600;cursor:pointer;opacity:1;transition:background-color .2s,border-color .2s,color .2s}.quote-submit span{font-size:24px;line-height:1}.quote-note{font-size:.8125rem;line-height:1.6;color:#b5b5b5;margin:16px 0 0;max-width:100%}@media(min-width:761px) and (max-width:1100px){.contact-quote{gap:4%;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.quote-card{padding:26px}.quote-fields{grid-template-columns:1fr}.contact-quote h2{font-size:clamp(2.5rem,4.7vw,3.5rem)}}@media(max-width:760px){.contact-quote{grid-template-columns:1fr;gap:36px}.contact-intro{padding-top:0}.contact-quote h2{font-size:clamp(2.5rem,9.8vw,4.5rem)}.contact-lead{margin-top:24px}.direct-contact{margin-top:28px}.quote-card{padding:28px 22px;border-radius:20px}.quote-fields{gap:20px 14px}.quote-note{font-size:.875rem}}@media(max-width:480px){.quote-fields{grid-template-columns:1fr}.quote-card{padding:26px 20px}.contact-quote h2{font-size:clamp(2.2rem,9.5vw,2.85rem)}}@media(prefers-reduced-motion:reduce){.quote-field input,.quote-field select,.quote-field textarea{transition:none}}

.quote-submit:not(:disabled):hover,
.quote-submit:not(:disabled):focus-visible {
  background-color: #660ed3;
  border-color: #660ed3;
  color: #ffffff;
}
.quote-submit:disabled { cursor: wait; opacity: .75; }
@media (prefers-reduced-motion: reduce) {
  .quote-submit { transition: none; }
}

