/* Contact: an open two-column composition with the Agro-Harvest mascot. */
.contact-page{padding:156px 0 100px;background:#fff;}
.contact-layout{max-width:1200px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1fr);gap:90px;align-items:start;}
.contact-intro .eyebrow{color:var(--green);margin-bottom:24px;}
.contact-intro h1{font-family:var(--font-display);font-size:46px;font-weight:700;line-height:1.15;letter-spacing:-1.5px;text-wrap:pretty;}
.contact-intro h1 span{color:var(--green);}
.contact-lead{max-width:440px;margin:28px 0 0;color:var(--graphite);font-size:17px;line-height:1.8;}
.contact-mascot{display:block;width:100%;height:auto;margin:36px 0 0;object-fit:contain;}
.contact-direct{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:14px;}
.contact-direct p{width:100%;color:var(--graphite);}
.contact-direct a{display:inline-flex;align-items:center;gap:12px;color:var(--green);font-weight:500;}
.contact-direct a:hover{color:#507827;}
.contact-form-section{min-width:0;padding-top:4px;}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;}
.contact-field{display:block;min-width:0;margin:0;}
.contact-field-wide{grid-column:1 / -1;}
.contact-field>span{display:block;margin-bottom:8px;font-size:14px;font-weight:500;line-height:1.5;}
.contact-field b,.contact-consent b{font-weight:500;color:var(--green);}
.contact-field em{font-style:normal;font-weight:400;color:var(--graphite);}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-height:52px;padding:13px 15px;border:1px solid #d2d7ce;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:15px;line-height:1.6;transition:border-color .15s ease,box-shadow .15s ease;}
.contact-field select{appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23064e04' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer;}
.contact-field textarea{min-height:244px;resize:vertical;}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#85897f;}
.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:#98ac8e;}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(6,78,4,.07);}
.contact-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.7;color:var(--charcoal);cursor:pointer;}
.contact-consent input{flex:none;accent-color:var(--green);width:17px;height:17px;margin-top:3px;}
.contact-note{margin-top:18px;font-size:12px;line-height:1.7;color:var(--graphite);}
.contact-status{font-size:14px;line-height:1.6;color:#8a3e22;}
.contact-status:not(:empty){margin-top:20px;}
.contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:26px;margin-top:24px;padding:15px 28px;min-height:52px;border:0;border-radius:999px;background:var(--green);color:#fff;font:inherit;font-size:15px;font-weight:500;cursor:pointer;transition:background .15s ease;}
.contact-submit:hover{background:#246720;}
.contact-submit:disabled{opacity:.65;cursor:wait;}
.contact-page :focus-visible{outline:2px solid var(--green);outline-offset:4px;}
.contact-page [hidden]{display:none!important;}
.contact-success{padding:52px 36px;background:#f2f6ed;border-radius:26px;}
.contact-success-mark{display:grid;place-items:center;width:46px;height:46px;background:var(--green);color:#fff;border-radius:50%;font-size:24px;margin-bottom:28px;}
.contact-success h2{font-family:var(--font-display);font-size:30px;line-height:1.25;font-weight:600;letter-spacing:-.7px;}
.contact-success p{margin:20px 0 30px;color:var(--graphite);font-size:16px;line-height:1.75;}
.contact-success a{color:var(--green);font-weight:500;}
@media(max-width:1000px){.contact-layout{gap:48px;}.contact-intro h1{font-size:38px;}}
@media(max-width:700px){.contact-page{padding:132px 0 72px;}.contact-layout{grid-template-columns:1fr;gap:44px;padding:0 24px;}.contact-intro h1{font-size:36px;letter-spacing:-1px;}.contact-lead{font-size:16px;margin-top:22px;}.contact-mascot{max-width:340px;margin:20px auto 0;}.contact-direct{margin-top:12px;}.contact-form-section{padding:0;}.contact-submit{width:100%;}}
@media(prefers-reduced-motion:reduce){.contact-page *{transition:none!important;}}

@media(max-width:420px){.contact-fields{grid-template-columns:1fr;}.contact-field textarea{min-height:200px;}}

/* Keep the introduction, mascot and form within one shared desktop-height row. */
@media(min-width:701px){
  .contact-page{padding:124px 0 44px;}
  .contact-layout{height:clamp(520px,calc(100svh - 168px),680px);align-items:stretch;}
  .contact-intro{min-height:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;}
  .contact-intro .eyebrow{margin-bottom:16px;}
  .contact-intro h1{font-size:clamp(32px,3.1vw,42px);line-height:1.14;letter-spacing:-1.2px;}
  .contact-lead{margin-top:18px;font-size:16px;line-height:1.65;}
  .contact-mascot{width:100%;height:100%;min-height:0;margin:0;object-fit:contain;object-position:center;}
  .contact-direct{margin:0;gap:7px 24px;font-size:13px;}
  .contact-form-section{min-height:0;padding-top:0;}
  #contact-form{height:100%;display:flex;flex-direction:column;}
  .contact-fields{flex:1;min-height:0;grid-template-rows:auto auto minmax(0,1fr);gap:18px;}
  .contact-field:has(textarea){display:flex;flex-direction:column;min-height:0;}
  .contact-field textarea{flex:1;height:100%;min-height:110px;}
  .contact-note{margin-top:14px;}
  .contact-status:empty{display:none;}
  .contact-status:not(:empty){margin-top:12px;}
  .contact-submit{align-self:flex-start;flex-shrink:0;margin-top:18px;}
}

/* Inquiry service availability and testing notice. */
.ag-inquiry-notice{font-size:13px;line-height:1.5;padding:12px 18px;background:#f5f7ee;color:#425238;border-radius:10px;margin:16px 0}.ag-inquiry-notice[hidden]{display:none}.ag-request form>.ag-inquiry-notice{margin:12px 28px 0}.ag-contact-consent{display:flex;gap:10px;align-items:flex-start}.ag-contact-consent input{margin-top:4px;flex:none}
