#contact{padding:5rem 0}.contact-title{font-size:var(--fs-5xl);letter-spacing:var(--ls);margin-bottom:3rem;font-weight:400}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.contact-description{font-size:var(--fs-md);line-height:var(--lh-md);opacity:.75;margin:0 0 3rem}.contact-info{border-bottom:1px solid var(--color-surface);flex-direction:column;gap:1.5rem;margin-bottom:2.5rem;padding-bottom:2.5rem;display:flex}.contact-info-item{flex-direction:column;gap:.25rem;display:flex}.contact-info-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;opacity:.5}.contact-info-value{font-size:var(--fs-md);color:var(--color-text);width:fit-content;text-decoration:none}.contact-info-value:hover{opacity:.7}.contact-hours{border-bottom:1px solid var(--color-surface);margin-bottom:2.5rem;padding-bottom:2.5rem}.contact-hours ul{flex-direction:column;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.contact-hours li{font-size:var(--fs-sm);opacity:.75;justify-content:space-between;display:flex}.contact-social{gap:1.5rem;display:flex}.contact-social-link{font-size:var(--fs-sm);color:var(--color-text);opacity:.6;text-decoration:none;transition:opacity .3s}.contact-social-link:hover{opacity:1}.contact-form{flex-direction:column;gap:1rem;display:flex}.contact-field input,.contact-field textarea{width:100%;font-family:var(--font-primary);font-size:var(--fs-sm);border:none;border-bottom:1px solid var(--color-gray);color:var(--color-text);resize:none;background:0 0;outline:none;padding:.9rem 0;transition:border-color .3s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--color-text);opacity:.4}.contact-field input:focus,.contact-field textarea:focus{border-bottom-color:var(--color-text)}.contact-submit{font-family:var(--font-primary);font-size:var(--fs-sm);letter-spacing:var(--ls);text-transform:uppercase;color:var(--color-text-inverse);background:var(--color-inverse);cursor:pointer;border:none;align-self:flex-start;margin-top:1rem;padding:1rem 2rem;font-weight:500;transition:opacity .3s}.contact-submit:hover{opacity:.75}.contact-submit:disabled{opacity:.4;cursor:not-allowed}.contact-status{font-size:var(--fs-xs);margin:0}.contact-status--success{color:green}.contact-status--error{color:var(--color-accent)}@media (max-width:768px){.contact-grid{grid-template-columns:1fr;gap:3rem}.contact-submit{text-align:center;width:100%}}
