.contact-section{padding-block:clamp(40px,6vw,88px) clamp(60px,8vw,120px)}.contact-head{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:clamp(32px,5vw,56px)}.contact-h1{font-family:var(--font-sans);font-weight:700;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.02;letter-spacing:-.03em;color:var(--bg-near-black);margin:0}.contact-tagline{flex:none;max-width:28ch;margin:6px 0 0;color:var(--on-light-mute);font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.5}.contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(20px,3vw,44px);align-items:stretch}.contact-info{display:flex;flex-direction:column;justify-content:space-between;min-height:440px;padding:28px;border-radius:20px;background:rgba(3,46,28,.04);border:1px solid rgba(3,46,28,.08)}.contact-info-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--bg-mint-pale);color:var(--bg-deep)}.contact-info-label{font-size:1.15rem;margin-bottom:2px}.contact-info-email,.contact-info-label{font-family:var(--font-sans);font-weight:700;color:var(--bg-near-black)}.contact-info-email{display:block;font-size:clamp(1.2rem,2vw,1.45rem);text-decoration:none;margin-bottom:12px;word-break:break-word;transition:color .18s}.contact-info-email:hover{color:var(--bg-bright)}.contact-info-sub{color:var(--on-light-mute);font-size:.95rem;line-height:1.5;max-width:32ch;margin:0}.contact-form{display:flex;flex-direction:column}.contact-label{font-family:var(--font-sans);font-weight:700;font-size:.9rem;color:var(--bg-near-black);margin-bottom:8px}.contact-label .req{color:var(--bg-bright);margin-left:2px}.contact-input{width:100%;padding:14px 16px;margin-bottom:18px;border-radius:12px;border:1px solid rgba(3,46,28,.12);background:rgba(3,46,28,.04);font-family:var(--font-sans);font-size:.98rem;color:var(--bg-near-black);outline:none;transition:border-color .18s,background .18s}.contact-input::placeholder{color:rgba(3,46,28,.4)}.contact-input:focus{border-color:var(--bg-bright);background:#fff}.contact-textarea{resize:vertical;min-height:132px;line-height:1.5}.contact-error{color:#c0392b;font-size:.88rem;margin:-8px 0 14px}.contact-submit{width:100%;margin-top:4px;padding:15px 24px;border:none;border-radius:12px;background:linear-gradient(105deg,#d6f48a 0,var(--lime) 40%,#84c93f 100%);color:#0a2614;font-family:var(--font-sans);font-weight:700;font-size:1rem;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s var(--ease),opacity .2s}.contact-submit:hover{transform:translateY(-2px);box-shadow:0 14px 32px -12px rgba(150,205,75,.6)}.contact-submit:active{transform:translateY(0)}.contact-submit:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}.contact-success{text-align:center;padding:clamp(28px,5vw,56px) 24px}.contact-success-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--bg-mint);color:var(--bg-deep);display:grid;place-items:center;font-size:1.6rem;font-weight:700}.contact-success h3{font-family:var(--font-sans);font-weight:700;font-size:1.3rem;color:var(--bg-near-black);margin:0 0 6px}.contact-success p{color:var(--on-light-mute);margin:0 0 18px}.contact-again{background:transparent;border:1.5px solid var(--bg-deep);color:var(--bg-deep);border-radius:999px;padding:10px 22px;font-family:var(--font-sans);font-weight:600;cursor:pointer;transition:background .18s}.contact-again:hover{background:rgba(3,46,28,.06)}@media (max-width:860px){.contact-head{flex-direction:column;gap:14px}.contact-tagline{max-width:none}.contact-grid{grid-template-columns:1fr}.contact-info{min-height:auto;gap:28px}}