*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Jost',sans-serif;
  background:linear-gradient(160deg,#f8f1ea,#f0e5da);
  min-height:100svh;
  display:flex;align-items:center;justify-content:center;
  padding:24px;
}
.box{
  background:#fff;
  border:1px solid #e8d8cb;
  border-radius:28px;
  padding:clamp(40px,6vw,64px);
  max-width:440px;
  width:100%;
  text-align:center;
  box-shadow:0 32px 80px rgba(82,54,39,.14);
}
.icon{font-size:40px;margin-bottom:20px;display:block;}
h1{
  font-family:'Cormorant Garamond',serif;
  font-size:42px;font-weight:600;line-height:.95;
  color:#3a2e28;margin-bottom:12px;
}
.desc{color:#7d6a5f;font-size:15px;line-height:1.7;font-weight:300;margin-bottom:32px;}
.erro{
  background:#fff0f0;border:1px solid #fecaca;border-radius:10px;
  color:#c0392b;font-size:13px;padding:10px 14px;margin-bottom:20px;
}
form{display:flex;flex-direction:column;gap:12px;}
form label{
  font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:#4a3a31;text-align:left;
}
form input[type=password]{
  width:100%;border:1.5px solid #e8d8cb;border-radius:12px;
  padding:14px 16px;font-size:15px;font-family:'Jost',sans-serif;
  color:#3a2e28;outline:none;transition:.2s;
  -webkit-appearance:none;
}
form input[type=password]:focus{border-color:#b07a5b;box-shadow:0 0 0 3px rgba(176,122,91,.12);}
form button{
  background:#b07a5b;color:#fff;border:none;border-radius:999px;
  padding:15px 28px;font-size:14px;font-weight:600;
  font-family:'Jost',sans-serif;cursor:pointer;transition:.2s;
  margin-top:4px;
}
form button:hover{background:#8b5d44;}
.brand{margin-top:28px;font-size:12px;color:#b9a99d;letter-spacing:.1em;}
