:root{--paper:oklch(97.2% .006 85);--paper-raised:oklch(99% .004 85);--ink:oklch(22% .008 80);--ink-muted:oklch(36% .008 80);--ink-soft:oklch(42% .008 80);--ink-faint:oklch(58% .01 85);--placeholder:oklch(62% .01 85);--rule:oklch(88% .008 85);--field-border:oklch(78% .008 85);--accent:oklch(53% .175 42);--accent-hover:oklch(44% .155 40);--accent-link-hover:oklch(40% .14 40);--on-accent:oklch(98% .004 85);--sans:Archivo, Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--type-display:clamp(38px, 13vw, 96px);--type-city:clamp(36px, 12vw, 84px);--type-lead:clamp(22px, 5.6vw, 34px);--type-body:20px;--type-ui:19px;--type-eyebrow:14.5px;--type-footer:13px}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--paper);margin:0;padding:0}body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;text-wrap:pretty}a{color:var(--accent);text-underline-offset:3px;text-decoration:underline 1px}a:hover{color:var(--accent-link-hover)}input{font:inherit}input::placeholder{color:var(--placeholder)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{background:var(--paper);flex-direction:column;min-height:100vh;display:flex}.container{flex-direction:column;flex:auto;width:100%;max-width:660px;margin:0 auto;padding:34px 22px 0;display:flex}.rule-top{border-top:1px solid var(--rule)}.masthead{flex-direction:column;gap:20px;padding-bottom:34px;display:flex}.wordmark{font-size:var(--type-display);letter-spacing:-.035em;margin:0;font-weight:600;line-height:.98}.wordmark-tld{color:var(--accent)}.tagline{font-size:var(--type-lead);letter-spacing:-.015em;max-width:20em;margin:0;font-weight:400;line-height:1.32}.backlink{font-family:var(--mono);font-size:var(--type-eyebrow);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;display:inline-block}.backlink:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.backlink .backlink-tld{color:var(--accent)}.city-name{font-size:var(--type-city);letter-spacing:-.035em;margin:0;font-weight:600;line-height:1}.city-status{font-size:var(--type-lead);letter-spacing:-.015em;max-width:20em;margin:0;font-weight:400;line-height:1.32}.blurb{flex-direction:column;gap:15px;padding:26px 0 30px;display:flex}.blurb p{font-size:var(--type-body);color:var(--ink-muted);max-width:40em;margin:0;line-height:1.55}.signup{padding:26px 0 30px}.eyebrow{font-family:var(--mono);font-size:var(--type-eyebrow);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.eyebrow-accent{color:var(--accent)}.confirmation{flex-direction:column;gap:9px;display:flex}.confirmation p{margin:0}.confirmation-body{font-size:var(--type-body);color:var(--ink-muted);max-width:34em;line-height:1.55}.signup-form-wrap{flex-direction:column;gap:14px;display:flex}.signup-form{flex-wrap:wrap;gap:8px;max-width:460px;display:flex}.email-input{min-width:0;height:50px;font-size:var(--type-ui);color:var(--ink);background:var(--paper-raised);border:1px solid var(--field-border);border-radius:3px;flex:200px;padding:0 14px}.submit-button{height:50px;font-family:var(--sans);font-size:var(--type-ui);letter-spacing:-.005em;color:var(--on-accent);background:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:3px;flex:none;padding:0 22px;font-weight:500}.submit-button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.submit-button[disabled]{cursor:default;opacity:.6}.field-error{font-family:var(--mono);font-size:var(--type-eyebrow);letter-spacing:.02em;color:var(--accent);flex:1 0 100%;margin:0}.submit-link{padding:24px 0 40px}.submit-link a{font-size:var(--type-body);font-weight:500}.footer{border-top:1px solid var(--rule);padding:18px 22px 26px}.footer-inner{width:100%;max-width:660px;font-family:var(--mono);font-size:var(--type-footer);letter-spacing:.02em;color:var(--ink-faint);margin:0 auto;line-height:1.6}.footer-inner a{color:oklch(45% .01 85)}@media (prefers-reduced-motion:no-preference){.submit-button{transition:background-color .12s,border-color .12s}a{transition:color .12s}}
