.contact-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.8fr);gap:var(--space-2xl);align-items:flex-start}@media (max-width:900px){.contact-layout{grid-template-columns:1fr}}.contact-block{margin-bottom:var(--space-md);font-size:.95rem}.contact-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-muted);margin-bottom:.25rem;font-weight:600}.contact-value{color:var(--color-text-soft);line-height:1.5}.contact-map{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-soft);border:1px solid var(--color-border-soft);min-height:360px;background-color:var(--color-surface);position:relative}.contact-map iframe{border:0;width:100%;height:100%;min-height:360px;display:block}.contact-map .map-placeholder{display:flex;align-items:center;justify-content:center;height:360px;color:var(--color-text-muted);font-size:.95rem;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.02))}.contact-form{margin-top:var(--space-lg);padding:var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-fill);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:var(--shadow-soft)}.form-row{display:grid;gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:640px){.form-row{grid-template-columns:1fr}.contact-form{padding:var(--space-md)}}.form-field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.form-field label{font-weight:500;color:var(--color-text)}.form-field input,.form-field textarea{border-radius:var(--radius-sm);border:1px solid var(--color-border);padding:.6rem .7rem;font-family:var(--font-sans);font-size:.92rem;background-color:rgba(255,255,255,.92);color:var(--color-text)}:root[data-theme=dark] .form-field input,:root[data-theme=dark] .form-field textarea{background-color:rgba(15,23,42,.98);color:var(--color-text)}.form-field textarea{resize:vertical;min-height:90px}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:0;border-color:#60a5fa;box-shadow:0 0 0 1px rgba(59,130,246,.45)}.contact-note{font-size:.85rem;color:var(--color-text-muted);margin-top:.4rem}#contactFeedback{font-size:.95rem;padding:.6rem;border-radius:8px}#contactFeedback.success{background:linear-gradient(180deg,rgba(34,197,94,.08),rgba(34,197,94,.04));border:1px solid rgba(34,197,94,.12);color:#064e3b}#contactFeedback.error{background:linear-gradient(180deg,rgba(241,59,59,.06),rgba(241,59,59,.02));border:1px solid rgba(241,59,59,.12);color:#7f1d1d}