.contact__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr);grid-template-rows:auto auto 1fr;gap:var(--gap-section-head) var(--gap-grid-wide);align-items:start}.contact__head{grid-column:1 / -1}.contact__heading{max-width:620px}.contact__sub{font-size:17px;line-height:1.8;color:var(--color-muted);max-width:52ch}.contact__details{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl) var(--space-xl)}.contact__detail dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent-dark);margin-bottom:var(--space-xs)}.contact__detail dd{font-size:15px;line-height:1.75;color:var(--color-muted)}.contact__detail dd a{display:inline-block;padding:var(--space-2xs) 0;color:var(--color-text-soft);transition:color var(--transition-fast)}.contact__detail dd a:hover{color:var(--color-accent-dark)}.contact__socials{display:flex;gap:var(--space-2xs)}.contact__detail .contact__socials a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--color-border-strong);color:var(--color-text-soft);transition:color var(--transition-fast),border-color var(--transition-fast)}.contact__detail .contact__socials a:hover{color:var(--color-accent-dark);border-color:var(--color-accent-dark)}.contact__form{grid-column:2;grid-row:2 / span 2;background:var(--color-bg-alt);padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.contact__form-head{display:flex;flex-direction:column;gap:var(--space-2xs);margin-bottom:var(--space-2xs)}.contact__form-head h3{font-family:var(--font-display);font-size:26px;font-weight:400;letter-spacing:-.02em;line-height:1.2;color:var(--color-text)}.contact__form-head p{font-size:14px;line-height:1.75;color:var(--color-muted);max-width:42ch}.contact__field{display:flex;flex-direction:column;gap:2px}.contact__field span{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-muted)}.contact__field input,.contact__field textarea{padding:var(--space-xs) 0;border:none;border-bottom:1px solid var(--color-border-strong);background:transparent;color:var(--color-text);font-size:17px;font-family:var(--font-body);border-radius:0;transition:border-color var(--transition-fast);resize:vertical}.contact__field input::placeholder,.contact__field textarea::placeholder{color:var(--color-muted)}.contact__field input:focus,.contact__field textarea:focus{outline:none;border-bottom:2px solid var(--color-accent-dark);margin-bottom:-1px}.contact__honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.contact__submit{margin-top:var(--space-2xs);align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2xs);padding:17px var(--space-lg);border-radius:var(--radius-full);background:var(--color-text);color:var(--color-bg);font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;transition:background var(--transition-fast),color var(--transition-fast)}.contact__submit:hover:not(:disabled){background:var(--color-accent-dark);color:var(--color-bg-card)}.contact__submit:disabled{opacity:.6;cursor:wait}.contact__status{font-size:14px}.contact__status--success,.contact__status--error{display:block;padding:var(--space-xs) var(--space-sm)}.contact__status--success{background:var(--color-accent-light);color:var(--color-text);border:1px solid var(--color-accent-dark)}.contact__status--error{background:var(--color-danger-surface);color:var(--color-danger);border:1px solid var(--color-danger-border)}.contact__map{position:relative;grid-column:1;grid-row:3;align-self:stretch;min-height:240px;border:1px solid var(--color-border-strong)}.contact__map-shield{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:var(--space-md);background:var(--color-scrim-none)}.contact__map-shield span{padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-full);background:var(--color-dark-deep);color:var(--color-bone);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}@media (hover: hover) and (pointer: fine){.contact__map-shield{display:none}}.contact__map iframe{display:block;width:100%;height:100%;border:0}@media (max-width: 1024px){.contact__inner{grid-template-columns:1fr;grid-template-rows:none;gap:var(--gap-section-head)}.contact__head,.contact__details,.contact__form,.contact__map{grid-column:auto;grid-row:auto}.contact__map{align-self:auto;min-height:0}.contact__details,.contact__form{max-width:560px}.contact__map{aspect-ratio:16 / 10}}@media (max-width: 560px){.contact__form{padding:var(--space-md)}.contact__details{grid-template-columns:1fr;gap:var(--space-lg)}.contact__map{aspect-ratio:4 / 3}.contact__submit{align-self:stretch;justify-content:center}}
