/* Contato pós-lançamento — complemento ao visual publicado. */
.contact-header { min-height: 44px; background: #008069; color: #fff; border-radius: 999px; padding: 10px 15px; }
.contact-primary { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 50px; padding: 14px 22px; border: 1px solid #008069; border-radius: 999px; background: #008069; color: #fff; font-size: 16px; font-weight: 650; line-height: 1.35; text-decoration: none; }
.contact-primary:hover, .contact-header:hover { background: #006b58; color: #fff; }
.contact-primary:focus-visible, .contact-secondary:focus-visible, .contact-header:focus-visible { outline: 2px solid var(--paper); outline-offset: 4px; }
.contact-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 28px; }
.contact-actions .contact-secondary { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; text-decoration: underline; text-underline-offset: 4px; }
.contact-actions .contact-microcopy { flex-basis: 100%; margin: 0; max-width: none; font-size: 13px; color: rgb(var(--paper-rgb) / .8); }
.contact-after-demo { margin-top: 30px; }
.opening-bottom { flex-wrap: wrap; }
.opening-bottom .opening-definition { flex-basis: 100%; }
.opening-bottom .contact-actions { margin-top: 0; }
.opening-bottom .demo-entry-primary { background: transparent; color: var(--paper); border-color: rgb(var(--paper-rgb) / .25); font-size: 14px; }
html[data-theme="light"] .opening-bottom .demo-entry-primary { color: var(--paper); }
.contact-section { scroll-margin-top: 100px; }
.contact-section #lista-de-espera { position: absolute; scroll-margin-top: 100px; }
.contact-section .waitlist-copy h2 { font-size: clamp(2.6rem, 4.5vw, 4.8rem); line-height: 1.03; }
.contact-section .waitlist-copy > .contact-primary { margin-top: 26px; }
.contact-form .waitlist-field label { color: rgb(var(--paper-rgb) / .83); }
.contact-form .waitlist-consent, .contact-form .waitlist-note { color: rgb(var(--paper-rgb) / .78); }
.contact-form .waitlist-consent { min-height: 44px; padding-block: 6px; }
.contact-form .waitlist-submit { background: #008069; border-color: #008069; color: #fff; font-size: 16px; }
.contact-form .waitlist-submit:hover { background: #006b58; color: #fff; transform: none; }
.contact-form .waitlist-submit:disabled { cursor: default; opacity: .72; }
.contact-form[aria-busy="true"] .waitlist-submit { cursor: wait; }
.contact-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.contact-status, .contact-error { grid-column: 1 / -1; padding: 18px; margin: 0; border: 1px solid; border-radius: 10px; font-size: 16px; line-height: 1.5; }
.contact-status { color: #d3ebff; background: #142b3b; border-color: #6494b6; }
.contact-error { color: #ffe0cc; background: #352318; border-color: #bc8c6a; }
.contact-error a { display: inline-block; padding-block: 12px; text-decoration: underline; text-underline-offset: 3px; }
[data-theme="light"] .contact-status { color: #13466a; background: #e3f4ff; border-color: #6494b6; }
[data-theme="light"] .contact-error { color: #703211; background: #fff0e5; border-color: #bc8c6a; }
@media (max-width: 600px) {
  .contact-actions { flex-direction: column; align-items: stretch; gap: 8px; }
  .contact-actions .contact-secondary { justify-content: center; }
  .contact-actions .contact-microcopy { text-align: center; }
  .contact-form .waitlist-field label { font-size: 14px; }
  .contact-section .waitlist-copy { margin-bottom: 30px; }
}
