.contact { grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr); gap: 3rem; }
.contact-box { width: 100%; }
.portrait img { width: 100%; height: 100%; left: 0; top: 0; object-fit: cover; object-position: 65% center; }
@media(max-width:800px) {
 .portrait { aspect-ratio: 1; }
 .portrait img { top: 0; object-position: center; }
}
.developer-credit { display: block; margin-top: .4rem; font-size: .8125rem; line-height: 1.6; color: var(--muted); }
.developer-credit span { color: var(--gold); }
.biography p { margin-bottom: 1.125rem; }
.credentials { flex-wrap: wrap; }
.form-field { display: flex; flex-direction: column; gap: .375rem; margin-bottom: 1.125rem; min-width: 0; }
.form-field label { font-size: .9375rem; color: var(--text); }
.form-field label span { color: var(--gold); }
.form-field input, .form-field textarea { width: 100%; min-height: 48px; background: #12110e; color: var(--text); border: 1px solid #79684b; border-radius: 3px; padding: .75rem; font: 1rem/1.5 Arial, sans-serif; }
.form-field textarea { resize: vertical; min-height: 120px; }
.form-field input:focus, .form-field textarea:focus { outline: 2px solid var(--gold); outline-offset: 2px; }
.form-field input::placeholder, .form-field textarea::placeholder { color: #a9a69d; }
.form-row { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.contact-box .form-field small { font-size: .8125rem; line-height: 1.5; margin-top: .125rem; }
.contact-box .form-privacy { font-size: .8125rem; line-height: 1.6; margin-bottom: 1.25rem; }
#contact-submit { width: 100%; }
.contact-box #form-status { font-size: .875rem; line-height: 1.5; margin: .75rem 0 0; }
.whatsapp-float { position: fixed; right: max(1.5rem,env(safe-area-inset-right)); bottom: max(1.5rem,env(safe-area-inset-bottom)); width: 60px; height: 60px; border-radius: 50%; display: grid; place-items: center; background: #25d366; color: #fff; box-shadow: 0 4px 20px #0007; z-index: 20; border: 1px solid #ffffff55; transition: background .2s, transform .2s; }
.whatsapp-float svg { width: 32px; height: 32px; }
.whatsapp-float:hover { background: #128c4c; transform: translateY(-2px); }
.whatsapp-float:focus-visible { outline: 3px solid white; outline-offset: 4px; }
.whatsapp-float { cursor: pointer; padding: 0; }
#form-status:not(:empty) { border-left: 3px solid var(--gold); padding: .75rem; background: #12110e; }
@media(max-width:800px) {
 .contact { grid-template-columns: 1fr; gap: 1rem; }
 .hero .actions { grid-template-columns: 1fr; }
 .form-row { grid-template-columns: 1fr; gap: 0; }
 .whatsapp-float { width: 56px; height: 56px; right: max(1rem,env(safe-area-inset-right)); bottom: max(1rem,env(safe-area-inset-bottom)); }
 footer { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom)); }
}
