/* Static counterpart of the application's login page. No authentication code. */
:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #20352b;
  background: #f6f4ec;
  font-synthesis: none;
  --ink: #20352b;
  --forest: #285b43;
  --cream: #f6f4ec;
  --line: #d9ddd2;
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: radial-gradient(circle at 90% 0%, #dfe9d8 0, transparent 32rem), var(--cream); }
h1, p { margin-top: 0; }
h1 { font-family: Georgia, "Times New Roman", serif; line-height: .98; letter-spacing: -.035em; margin-bottom: 1rem; }
p { line-height: 1.55; color: #506158; }
a { color: var(--forest); }
a:focus-visible { outline: 3px solid var(--forest); outline-offset: 4px; }
.login-page { width: min(560px, 100%); min-height: 100vh; margin: auto; padding: calc(3rem + env(safe-area-inset-top)) 1.25rem calc(2rem + env(safe-area-inset-bottom)); display: flex; flex-direction: column; justify-content: center; align-items: stretch; text-align: center; }
.login-branding { display: flex; flex-direction: column; align-items: center; }
.login-hero { width: auto; max-width: 100%; height: 33.333vh; margin: 12px; object-fit: contain; }
.login-product-name { margin: 0 0 .65rem; color: var(--ink); font-family: Georgia, "Times New Roman", serif; font-size: 1.15rem; font-weight: 700; line-height: 1; letter-spacing: -.01em; }
.login-copy h1 { font-size: clamp(1.75rem, 7vw, 2.8rem); }
.login-copy p { max-width: 28rem; margin-left: auto; margin-right: auto; font-size: 1.05rem; }
.login-card { border-top: 1px solid var(--line); padding-top: 1.3rem; margin-top: 1rem; display: grid; gap: .8rem; }
.login-card p { margin-bottom: 0; overflow-wrap: anywhere; }
.login-card strong { display: block; }
.public-policy-links { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem .85rem; margin-top: 1rem; font-size: .72rem; }
