.contact-hero{border-bottom:1px solid var(--border);padding:5rem 0 3rem}.contact-hero__label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.75rem;font-weight:600}.contact-hero__title{color:var(--text);max-width:600px;font-size:clamp(2rem,4vw,3.5rem);font-weight:800;line-height:1.1}.contact-layout{grid-template-columns:1fr 1fr;gap:4rem;padding:4rem 0;display:grid}.contact-form{flex-direction:column;gap:1.25rem;display:flex}.contact-form__heading{color:var(--text);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.5rem;display:flex}.form-group label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:600}.form-group input,.form-group textarea{background-color:var(--surface);border:1px solid var(--border);color:var(--text);font-size:.95rem;font-family:var(--font);border-radius:4px;outline:none;width:100%;padding:.75rem 1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:140px}.form-submit{background-color:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:4px;align-self:flex-start;margin-top:1rem;padding:.75rem 1.75rem;font-size:.9rem;font-weight:700;transition:opacity .2s;display:inline-block}.form-submit:hover{opacity:.85}.contact-info{flex-direction:column;gap:2.5rem;display:flex}.contact-info__heading{color:var(--text);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.info-block{flex-direction:column;gap:.4rem;display:flex}.info-block__label{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:600}.info-block__value{color:var(--text);font-size:.95rem;line-height:1.6}.info-block__value a:hover{color:var(--accent);transition:color .2s}.contact-map{padding:0 0 4rem}.contact-map__inner{background-color:var(--surface);border:1px solid var(--border);width:100%;height:360px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.form-success{background-color:var(--surface);border:1px solid var(--accent);color:var(--accent);border-radius:8px;padding:2rem;font-size:1rem}
