.details { display: flex; flex-direction: column; }
.contact { min-height: auto; padding: 40px max(4vw, 22px) 24px; scroll-margin-top: 72px; }
.contact-title { margin-bottom: 28px; }
.contact-title .eyebrow { margin-bottom: 10px; }
.contact h2 { font-size: clamp(3.2rem, 4.3vw, 4.5rem); }
.contact-title > p { margin: 8px 0 0; line-height: 1.3; font-size: 1.05rem; }
.contact-grid { gap: 8vw; }
.contact-form { position: relative; align-self: end; width: 100%; }
.contact-form .form-status { position: absolute; top: 100%; left: 0; margin: 8px 0 0; }
.details strong { margin-bottom: 26px; }
.contact-email { margin: 0 0 26px; color: #aaa; font-family: var(--serif); font-size: 1.2rem; line-height: 1.2; overflow-wrap: anywhere; transition: color .3s; }
.contact-email:hover, .contact-email:focus-visible { color: #fff; }
.details ul { margin-bottom: 26px; line-height: 1.55; }
.contact-form label { margin-bottom: 13px; }
.contact-form .form-trap { display: none; }
.contact-form button:disabled { opacity: .6; cursor: wait; }
.contact-form input, .contact-form textarea { margin-top: 8px; padding: 13px 14px; border: 1px solid #303030; background: #090909; }
.contact-form input[name="nome"] { text-transform: capitalize; }
.contact-form input:focus, .contact-form textarea:focus { border-color: #888; box-shadow: 0 0 0 1px #888; }
.contact-form textarea { height: 120px; line-height: 1.5; }
.contact-form button { padding: 12px 22px; }
.contact-form input::-webkit-contacts-auto-fill-button,
.contact-form input::-webkit-credentials-auto-fill-button { visibility: hidden; display: none !important; pointer-events: none; position: absolute; right: 0; }
.region-block { position: static; display: flex; flex-direction: column; margin-top: 4px; }
.details .region-block small { margin-bottom: 10px; }
.details .region-block strong { margin-bottom: 0; }
.form-dialog { width: min(520px, calc(100vw - 36px)); padding: 38px; border: 1px solid #444; background: #070707; color: #eee; text-align: center; box-shadow: 0 30px 100px #000; }
.form-dialog::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(5px); }
.form-dialog .eyebrow { margin-bottom: 18px; }
.form-dialog h2 { margin: 0; font-family: var(--serif); font-size: clamp(2.4rem, 5vw, 4rem); font-weight: 300; line-height: .95; }
.form-dialog p { margin: 24px auto; max-width: 390px; color: #999; font-family: var(--serif); font-size: 1.1rem; line-height: 1.5; }
.form-dialog-close { min-width: 150px; padding: 12px 22px; border: 0; background: #eee; color: #111; text-transform: uppercase; letter-spacing: .2em; font-size: 10px; cursor: pointer; }
@media (max-width: 800px) {
  .contact { padding: 64px 20px 50px; scroll-margin-top: 58px; }
  .contact-form { align-self: stretch; }
  .contact-form .form-status { position: static; margin: 8px 0 0; }
  .region-block { position: static; margin-top: 0; }
  .form-dialog { padding: 30px 22px; }
}
