/* RESET & BASE */
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  color:#222;
  background:#f9f9f9;
}
.hidden { display:none !important; }

/* HEADER */
.site-header{
  display:flex; align-items:center; justify-content:space-between;
  background:#000; color:#fff; padding:0.75rem 2rem;
}
.site-header .logo img{ height:32px; }
.auth-buttons button{
  background:transparent; border:2px solid #fff; color:#fff;
  padding:0.5rem 1rem; margin-left:1rem; border-radius:4px;
  cursor:pointer; font-weight:500;
}
.auth-buttons button:hover{ background:#fff; color:#000; }

/* HERO */
.hero{ text-align:center; padding:4rem 1rem; }
.hero h1{ font-size:2.5rem; line-height:1.2; color:#000; }
.hero p{ margin-top:1rem; font-size:1.125rem; color:#555; }

/* FORMS */
.form-section{
  max-width:360px; margin:2rem auto; background:#fff; padding:2rem;
  border-radius:8px; box-shadow:0 2px 8px rgba(0,0,0,0.05);
}
.form-section h2{ margin-bottom:1rem; text-align:center; }
.form-section form{ display:flex; flex-direction:column; }
.form-row{ margin-bottom:1rem; }
.form-section input,
.form-section select{
  width:100%; padding:0.75rem; border:1px solid #ccc; border-radius:4px;
}
.form-section button{
  padding:0.75rem; background:#000; color:#fff; border:none;
  border-radius:4px; cursor:pointer; font-weight:500;
}
.form-section button:hover{ background:#333; }
.error-msg{ margin-top:0.5rem; color:#d00; font-size:0.9rem; text-align:center; }

/* FOOTER */
.site-footer{ text-align:center; padding:1rem; font-size:0.9rem; color:#777; }
