.contact-page{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5vw;align-items:start;padding-block:4.5rem 6rem}.contact-intro h1{font-size:clamp(2.8rem,4.5vw,4.8rem);line-height:1.08;letter-spacing:-.04em;margin:1.5rem 0 2rem}.contact-intro>p:not(.eyebrow){color:var(--muted);max-width:470px;font-size:1.125rem;line-height:1.8}.contact-direct{display:grid;gap:1rem;border-top:1px solid var(--line);padding-top:2rem;margin-top:3rem}.contact-direct span{color:var(--muted);font-size:.94rem}.contact-direct a{font-size:1.2rem;font-weight:650;overflow-wrap:anywhere}.contact-direct a:hover{color:var(--lime)}.contact-card{background:#f1f5ef;color:#102d20;padding:clamp(1.4rem,3vw,3rem);border-radius:1.25rem;border-top:5px solid #c8ec6a;box-shadow:0 20px 60px #0003;min-width:0}.contact-card .eyebrow{color:#295536}.contact-card h2{font-size:clamp(1.8rem,2.3vw,2.6rem);line-height:1.2;margin:.5rem 0 1rem}.required-note{font-size:.875rem;color:#45614c;margin-bottom:2rem}.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}.contact-form label{display:grid;gap:.6rem;font-size:.94rem;line-height:1.5;font-weight:650;min-width:0}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;font-size:1rem;font-weight:400;color:#102d20;background:#fff;border:1px solid #849e89;border-radius:.6rem;padding:.85rem 1rem;min-height:50px}.contact-form textarea{resize:vertical;line-height:1.6;min-height:170px}.contact-form textarea::placeholder{color:#607263;opacity:1}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:3px solid #8aaa37;outline-offset:2px;border-color:#30532b}.full-field{grid-column:1/-1}.contact-privacy{display:grid;grid-template-columns:22px minmax(0,1fr);gap:.7rem;margin-top:1.8rem;align-items:start}.contact-privacy input{accent-color:#245336;width:20px;height:20px;margin:2px 0}.contact-privacy label{display:block;font-weight:400}.contact-privacy a,.contact-error a{text-decoration:underline;text-underline-offset:3px}.contact-privacy .field-error{grid-column:2}.contact-small{font-size:.875rem;line-height:1.65;color:#45614c}.contact-card .action.primary{background:#173f2d;color:#fff;border:0}.contact-card .action.primary:hover{background:#255c41}.contact-submit{width:100%;justify-content:space-between;margin-top:1rem;font:inherit;font-weight:700;font-size:1.125rem;min-height:58px;cursor:pointer}.contact-submit:disabled{opacity:.7;cursor:wait}.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.contact-form [aria-invalid=true],.contact-form input:user-invalid,.contact-form textarea:user-invalid{border-color:#b42434;background:#fff5f5}.field-error{color:#a0182b;font-size:.875rem;font-weight:550}.contact-error{border-left:4px solid #b42434;background:#ffe8eb;padding:1rem 1.2rem;color:#831523;margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.contact-error p{margin:0}.contact-error ul{padding-left:1.3rem;margin:.7rem 0 0}.contact-success{padding:1.5rem 0}.success-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#c8ec6a;color:#163c22;font-size:2rem;margin-bottom:2rem}.contact-success p{font-size:1.1rem;line-height:1.7}.contact-reference{background:#e2ebdc;padding:1rem;border-radius:.6rem}.contact-reference strong{font-size:.94rem;overflow-wrap:anywhere}.another-message{display:block;margin-top:1.5rem;text-decoration:underline}.contact-band .contact-links .contact-form-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#102d20;color:#fff;padding:1rem 1.4rem;border-radius:.65rem;font-size:1.125rem;font-weight:700;border:0;margin-bottom:1rem}.contact-band .contact-links .contact-form-link:hover{background:#24563a}
@media(max-width:900px){.contact-page{grid-template-columns:1fr;gap:2.5rem}.contact-intro h1{font-size:clamp(2.8rem,6vw,4.2rem)}.contact-intro h1 br{display:none}.contact-direct{margin-top:1.5rem;padding-top:1.5rem;gap:.65rem}.contact-intro>p:not(.eyebrow){max-width:650px}}
@media(max-width:550px){.contact-page{padding:2.5rem 5vw 3.5rem}.contact-fields{grid-template-columns:minmax(0,1fr);gap:1.2rem}.contact-intro h1{font-size:2.7rem}.contact-card{padding:1.4rem 1.1rem;border-radius:1rem}.contact-card h2{font-size:1.8rem}.contact-intro>p:not(.eyebrow){font-size:1rem}}
