/* UAMNP3 design tokens — DESIGN.md fonte */
:root{
  --surface: #FAF5E8;
  --text: #1A1A1A;
  --text-muted: #4A4A4A;
  --primary: #FF5F00;
  --primary-deep: #EB001B;
  --night: #46145B;
  --rule: rgba(26,26,26,.12);
  --serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --display: "Outfit", Inter, system-ui, sans-serif;
  --sans: "DM Sans", system-ui, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--surface);color:var(--text);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}
body{font-family:var(--serif);font-size:18px;line-height:1.55}
img{max-width:100%;height:auto;display:block}

.stage{
  max-width:640px;
  margin:0 auto;
  padding:64px 24px 48px;
  min-height:100vh;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  text-align:center;
}

.logo{
  width:220px;height:auto;
  margin:0 auto 56px;
  filter:none;
}

.title{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(48px, 9vw, 84px);
  line-height:.95;
  letter-spacing:-.02em;
  margin:0 0 24px;
  color:var(--primary);
  text-transform:uppercase;
}

.subtitle{
  font-family:var(--serif);
  font-weight:400;
  font-size:clamp(18px, 2.4vw, 22px);
  line-height:1.4;
  margin:0 0 56px;
  color:var(--text);
  max-width:520px;
}
.subtitle strong{font-weight:600;color:var(--primary-deep)}

.rule{
  border:0;
  border-top:1px solid var(--rule);
  width:96px;
  margin:0 auto 56px;
}

.lead{
  font-family:var(--serif);
  font-size:clamp(16px, 1.8vw, 18px);
  line-height:1.55;
  margin:0 0 24px;
  color:var(--text);
  max-width:520px;
}
.lead strong{font-weight:600;color:var(--primary)}

.signup{
  width:100%;
  max-width:480px;
  display:flex;
  gap:8px;
  margin:0 auto 16px;
}
.signup input[type=email]{
  flex:1 1 auto;
  font-family:var(--sans);
  font-size:16px;
  padding:14px 16px;
  border:1px solid rgba(26,26,26,.2);
  border-radius:8px;
  background:#fff;
  color:var(--text);
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.signup input[type=email]:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(255,95,0,.18);
}
.signup button{
  flex:0 0 auto;
  font-family:var(--display);
  font-weight:700;
  font-size:15px;
  letter-spacing:.02em;
  text-transform:uppercase;
  padding:14px 22px;
  border:0;
  border-radius:8px;
  background:var(--primary);
  color:#fff;
  cursor:pointer;
  transition:background .15s ease, transform .05s ease;
}
.signup button:hover{background:var(--primary-deep)}
.signup button:active{transform:translateY(1px)}
.signup button[disabled]{opacity:.6;cursor:wait}

@media (max-width:560px){
  .signup{flex-direction:column;gap:10px}
  .signup button{width:100%}
}

.status{
  font-family:var(--sans);
  font-size:14px;
  min-height:20px;
  margin:8px 0 0;
  color:var(--text-muted);
}
.status.success{color:#066b3a;font-weight:500}
.status.error{color:var(--primary-deep);font-weight:500}

.foot{
  margin-top:auto;
  padding-top:64px;
}
.foot small{
  font-family:var(--sans);
  font-size:12px;
  color:var(--text-muted);
  letter-spacing:.02em;
}

.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
