/* Pop-up "Comece um projeto" e botão flutuante. Carregado em todas as páginas
   junto com o lead-modal.js. Usa as variáveis de cor e fonte já definidas no :root. */

.lead-fab{position:fixed;z-index:80;right:clamp(16px,2.4vw,32px);bottom:clamp(16px,2.4vw,32px);display:inline-flex;align-items:center;gap:10px;padding:16px 20px;border:0;border-radius:999px;background:var(--green,#d5ff00);color:#060606;font:500 11px/1 var(--mono,monospace);letter-spacing:.06em;text-transform:uppercase;box-shadow:0 12px 34px rgba(0,0,0,.35);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px);pointer-events:none;transition:opacity .3s ease,transform .3s ease,background .2s ease,visibility .3s}
.lead-fab.is-visible{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.lead-fab:hover{background:#e1ff41;transform:translateY(-2px)}
.lead-fab:focus-visible{outline:3px solid #fff;outline-offset:4px}
.lead-fab__dot{width:8px;height:8px;border-radius:50%;background:#060606;animation:lead-pulse 2s ease-in-out infinite}
@keyframes lead-pulse{50%{opacity:.25}}
/* Sai do caminho enquanto o aviso de métricas estiver aberto. */
body:has(> .consent) .lead-fab{opacity:0;visibility:hidden;pointer-events:none}

.lead-modal{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;background:var(--white,#f7f7f2);color:var(--ink,#11110f);font-family:var(--display,system-ui,sans-serif);overflow:auto;box-shadow:0 30px 90px rgba(0,0,0,.5)}
.lead-modal::backdrop{background:rgba(5,5,5,.78);backdrop-filter:blur(4px)}
.lead-modal[open]{animation:lead-in .35s cubic-bezier(.2,.8,.2,1)}
@keyframes lead-in{from{opacity:0;transform:translateY(24px) scale(.98)}}
.lead-modal__inner{position:relative;padding:clamp(28px,5vw,52px)}
.lead-modal__close{position:absolute;top:14px;right:14px;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:inherit;font-size:26px;line-height:1;cursor:pointer}
.lead-modal__close:hover{background:rgba(0,0,0,.07)}
.lead-modal .eyebrow{color:#4d6200}
.lead-modal h2{margin:14px 0 12px;font-size:clamp(34px,5vw,52px);line-height:.92;letter-spacing:-.055em}
.lead-modal__lead{margin:0 0 30px;font-size:16px;line-height:1.55;color:#50504a}
.lead-modal form{display:grid;gap:22px}
.lead-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.lead-modal label{display:grid;gap:8px;font:500 11px/1.3 var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase}
.lead-modal input,.lead-modal textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid rgba(0,0,0,.4);border-radius:0;outline:0;background:transparent;color:#050505;font:400 18px/1.4 var(--display,system-ui,sans-serif);letter-spacing:0;text-transform:none}
.lead-modal textarea{min-height:120px;resize:vertical}
.lead-modal input:focus,.lead-modal textarea:focus{border-bottom:2px solid #050505}
.lead-modal__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:6px}
.lead-modal__submit{display:inline-flex;align-items:center;gap:10px;padding:16px 22px;border:0;border-radius:999px;background:#060606;color:var(--green,#d5ff00);font:500 11px/1 var(--mono,monospace);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.lead-modal__submit:disabled{opacity:.6;cursor:wait}
.lead-modal__status{min-height:1.4em;margin:0;font-size:14px;line-height:1.5}
.lead-modal__status[data-error]{color:#a11d1d}
.lead-modal__done{padding:10px 0}
.lead-modal__done p{margin:0 0 26px;font-size:18px;line-height:1.5}

@media(max-width:620px){
  .lead-modal__row{grid-template-columns:1fr}
  .lead-fab{padding:14px 16px}
}
@media(prefers-reduced-motion:reduce){
  .lead-fab,.lead-modal[open]{transition:none;animation:none}
  .lead-fab__dot{animation:none}
}
