/* Mesma identidade do briefing e dos carrosseis: papel creme, serifa de alto
   contraste no titulo, terracota como unica cor de destaque. */
:root{
  --papel:#FBF6EC; --escrita:#2A2724; --suave:#6B6156; --borda:#E6DCC9;
  --acento:#C05B3E;
}
*{box-sizing:border-box;margin:0}
body{
  background:var(--papel); color:var(--escrita); min-height:100vh;
  display:flex; align-items:center; justify-content:center; padding:32px 24px;
  font-family:Inter,-apple-system,"Helvetica Neue",Arial,sans-serif;
  font-size:17px; line-height:1.6;
}
main{width:100%; max-width:460px}
.marca{
  font-family:"JetBrains Mono",ui-monospace,monospace; font-size:12px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--suave);
  margin-bottom:28px;
}
h1{
  font-family:"Playfair Display",Georgia,serif; font-weight:400;
  font-size:40px; line-height:1.12; letter-spacing:-.015em; margin-bottom:16px;
}
h1 em{font-style:italic}
p.sub{color:var(--suave); margin-bottom:32px}
label{display:block; font-size:14px; font-weight:600; margin-bottom:8px}
input,select{
  width:100%; padding:14px 16px; font-size:17px; font-family:inherit;
  color:var(--escrita); background:#fff; border:1px solid var(--borda);
  border-radius:8px; margin-bottom:20px;
}
input:focus,select:focus{outline:2px solid var(--acento); outline-offset:1px}
button{
  width:100%; padding:15px; font-size:17px; font-weight:600; font-family:inherit;
  color:var(--papel); background:var(--acento); border:0; border-radius:8px;
  cursor:pointer;
}
button:disabled{opacity:.55; cursor:progress}
.aviso{margin-top:20px; font-size:15px; min-height:24px}
.aviso.erro{color:#9B2C1E}
.rodape{
  margin-top:40px; padding-top:20px; border-top:1px solid var(--borda);
  font-size:13px; color:var(--suave);
}
.rodape a{color:var(--suave)}
