.contact-page{min-height:100vh;padding-bottom:7rem}.contact-hero{align-items:flex-end;height:48vh;min-height:380px;padding-bottom:4rem;display:flex;position:relative;overflow:hidden}.contact-hero-overlay{background:linear-gradient(#0000000d 0%,#00000040 45%,#000000c7 100%);position:absolute;inset:0}.contact-hero-content{z-index:2;color:#fff;position:relative}.contact-eyebrow{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--gold-300);margin-bottom:.75rem;font-size:.8rem;font-weight:600}.contact-hero-content h1{color:#fff;margin-bottom:.9rem;font-size:3.2rem;line-height:1.1}.contact-hero-sub{color:#fffc;font-size:1.05rem}.contact-body{padding-top:5rem}.contact-grid{grid-template-columns:1fr 420px;align-items:start;gap:5rem;display:grid}.contact-form-wrapper h2{color:var(--gold-800);margin-bottom:.4rem;font-size:2rem}.contact-form-sub{color:#888;margin-bottom:2.5rem;font-size:.95rem}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.form-field{flex-direction:column;gap:.45rem;display:flex}.form-field label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.06em;color:#555;font-size:.82rem;font-weight:600}.form-field input,.form-field select,.form-field textarea{font-family:var(--font-sans);color:var(--color-black);appearance:none;background:#fff;border:1px solid #e0e0e0;border-radius:8px;outline:none;padding:.85rem 1rem;font-size:.95rem;transition:border-color .25s,box-shadow .25s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px #bb93511f}.form-field input::placeholder,.form-field textarea::placeholder{color:#bbb}.form-field textarea{resize:vertical;min-height:140px}.contact-submit{align-self:flex-start;align-items:center;gap:.6rem;padding:.9rem 2.5rem;display:inline-flex}.contact-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.contact-error{color:#c0392b;background:#fdf0ee;border:1px solid #f5c6c0;border-radius:6px;padding:.75rem 1rem;font-size:.88rem}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}.contact-success{background:var(--gold-50);border:1px solid var(--gold-200);border-radius:12px;flex-direction:column;align-items:flex-start;gap:1rem;padding:3rem;display:flex}.contact-success svg{color:var(--gold-600)}.contact-success h3{color:var(--gold-800);font-size:1.6rem}.contact-success p{color:#666;font-size:.95rem;line-height:1.6}.contact-info{position:sticky;top:120px}.contact-info h2{color:var(--gold-800);margin-bottom:2rem;font-size:2rem}.office-card{border:1px solid var(--gold-200);background:#fff;border-radius:12px;margin-bottom:1.25rem;padding:1.75rem}.office-details{flex-direction:column;gap:.75rem;list-style:none;display:flex}.office-details li{font-family:var(--font-sans);color:#555;align-items:flex-start;gap:.75rem;font-size:.9rem;line-height:1.4;display:flex}.office-details li svg{color:var(--gold-600);flex-shrink:0;margin-top:.1rem}.office-details a{color:#555;transition:color .25s}.office-details a:hover{color:var(--gold-600)}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr;gap:3.5rem}.contact-info{position:static}}@media (max-width:640px){.contact-hero-content h1{font-size:2.2rem}.form-row{grid-template-columns:1fr;gap:1.25rem}.contact-submit{justify-content:center;width:100%}}
