/* reset */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
}

/* default (light mode) */
:root {
  --bg-color: #ffffff;
  --text-color: #000000;
}

/* dark mode if OS requests it */
@media (prefers-color-scheme: dark) {
  :root {
    --bg-color: #000000;
    --text-color: #ffffff;
  }
}

/* typography */
body {
  font-family: 'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* layout */
.page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--bg-color);
  color: var(--text-color);
}

.container {
  max-width: 500px;
  width: 100%;
  padding: 24px;
  text-align: center;
}

/* logo spacing */
.logo {
  margin: 0 auto 60px;
}

.logo img {
  max-width: 100%;
  height: auto;
}

/* tagline (updated to be smaller & not bold) */
.tagline {
  font-size: 18px;      /* smaller */
  line-height: 1.4;
  font-weight: 400;     /* not bold */
  margin-bottom: 30px;  /* slightly tighter spacing */
  opacity: 0.9;
}

/* copyright */
.copyright {
  font-size: 12px;
  line-height: 1.4;
}

/* tablet */
@media (min-width: 481px) {
  .logo { margin-bottom: 70px; }
  .tagline { font-size: 20px; margin-bottom: 35px; }
  .copyright { font-size: 13px; }
}

/* desktop */
@media (min-width: 769px) {
  .logo { margin-bottom: 90px; }
  .tagline { font-size: 22px; margin-bottom: 40px; }
  .copyright { font-size: 14px; }
}
