/* Zavra · Fale conosco. Depende de site.css. O amanhecer inteiro: é o momento mais luminoso do site. */
.contact { margin-top: calc(-1 * var(--navh)); padding: calc(var(--navh) + clamp(40px, 7vw, 96px)) 0 clamp(56px, 8vw, 104px); min-height: 100svh; color: #fff }
.contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(28px, 6vw, 96px); align-items: center }
.contact-copy { display: grid; gap: 20px; align-content: start }
.contact-copy h1 { font-size: var(--fs-display); font-weight: 460; line-height: 1; letter-spacing: -.04em }
.contact-copy p { font-size: var(--fs-lead); line-height: 1.55; max-width: 42ch; font-weight: 450 }
.contact-card { display: grid; gap: 20px; padding: clamp(20px, 3vw, 32px); border-radius: var(--r); background: #fbfaf7; box-shadow: 0 40px 90px -40px rgba(10, 18, 36, .55) }
.contact-card .ft { font-size: var(--fs-h3); font-weight: 550; letter-spacing: -.02em }
.fgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px }
.fgrid label { display: grid; gap: 8px; font-size: var(--fs-xs); font-weight: 600; min-width: 0 }
.fgrid label.full { grid-column: 1 / -1 }
.fgrid label i { font-style: normal; color: var(--bad) }
.fgrid input, .fgrid textarea { width: 100%; min-width: 0; padding: 11px 13px; border-radius: var(--r-sm); border: 1px solid transparent; background: var(--paper); font-size: var(--fs-sm); font-weight: 400; outline: none; transition: border-color .15s ease, background .15s ease }
.fgrid textarea { resize: vertical; min-height: 120px }
.fgrid input::placeholder, .fgrid textarea::placeholder { color: #6b6e73 }
.fgrid input:focus, .fgrid textarea:focus { background: #fff; border-color: var(--ink) }
.fgrid .bad input, .fgrid .bad textarea { border-color: var(--bad); background: #fff }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden }
#form-status { font-size: .875rem; color: var(--muted); margin-top: 12px }
#form-status:empty { margin: 0 }
.fsend { display: flex; justify-content: flex-end }
.fsend .btn { padding-inline: 28px }
@media (max-width: 860px) { .contact-grid { grid-template-columns: 1fr } .contact { min-height: 0 } }
@media (max-width: 520px) { .fgrid { grid-template-columns: 1fr } .fgrid input, .fgrid textarea { font-size: 1rem } }
