:root{
  --brick:#9c4221; --brick-d:#7b3318; --cream:#FBFAF3; --ink:#2b2622;
  --muted:#6b6258; --line:#e6ded2;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--ink); min-height:100dvh;
  background:#1a1410 url("../img/hero.a3f790d572bc.jpg") center/cover no-repeat fixed;
}
.overlay{position:fixed;inset:0;z-index:0;
  background:linear-gradient(180deg,rgba(20,14,10,.55),rgba(20,14,10,.78))}
.wrap{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;padding:24px 16px}
.card{width:100%;max-width:430px;background:var(--cream);border-radius:16px;
  padding:28px 24px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.logo{display:block;height:66px;width:auto;max-width:80%;margin:0 auto 14px;object-fit:contain}
h1{font-size:1.5rem;margin:.2em 0 .15em;text-align:center}
.lead{margin:.2em 0 1.2em;text-align:center;color:var(--muted)}
label{display:block;font-weight:600;margin:.7em 0 .3em;font-size:.95rem}
input[type=email]{width:100%;padding:14px;font-size:1.05rem;border:1px solid var(--line);
  border-radius:10px;background:#fff}
input[type=email]:focus{outline:none;border-color:var(--brick);
  box-shadow:0 0 0 3px rgba(156,66,33,.15)}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.85rem;
  color:var(--muted);margin:14px 0;cursor:pointer}
.check input{margin-top:3px;width:18px;height:18px;flex:0 0 auto;accent-color:var(--brick)}
.check a{color:var(--brick)}
button{width:100%;margin-top:18px;padding:15px;font-size:1.08rem;font-weight:700;color:#fff;
  background:var(--brick);border:0;border-radius:10px;cursor:pointer}
button:active{background:var(--brick-d)}
.btn{display:inline-block;margin-top:10px;padding:12px 22px;background:var(--brick);color:#fff;
  text-decoration:none;border-radius:10px;font-weight:700}
.err{color:#b00020;font-size:.85rem;margin:.3em 0}
.foot{position:relative;z-index:1;margin-top:18px;color:#e8e0d4;font-size:.8rem;text-align:center}
.foot a{color:#fff}
.legal{font-size:.92rem;line-height:1.55}
.legal h2{font-size:1.05rem;margin:1.1em 0 .3em;color:var(--brick-d)}
@media (max-width:380px){.card{padding:22px 18px}}
