:root { color-scheme: light; font-family: system-ui, sans-serif; color: #142b30; background: #eff6f3; }
* { box-sizing: border-box; }
body { margin: 0; padding: 3rem 1rem; }
main { max-width: 42rem; margin: auto; background: white; padding: clamp(1.4rem, 5vw, 3rem); border-radius: 1.5rem; box-shadow: 0 1rem 4rem #153a2b12; }
.eyebrow { color: #2d7160; letter-spacing: .14em; font-size: .75rem; font-weight: 750; }
h1 { font-size: clamp(2rem, 6vw, 3.1rem); line-height: 1.1; letter-spacing: -.035em; }
p { line-height: 1.65; }
form { margin: 1rem 0; }
label { display: block; font-weight: 650; margin-bottom: .6rem; }
input { width: 100%; padding: .9rem; border: 1px solid #779c90; border-radius: .6rem; font: inherit; }
input:focus-visible, button:focus-visible, a:focus-visible { outline: 3px solid #e4b238; outline-offset: 3px; }
button, .button { display: inline-block; padding: .9rem 1.2rem; border: 0; border-radius: .6rem; background: #155747; color: white; font: inherit; font-weight: 650; cursor: pointer; text-decoration: none; }
button:disabled { opacity: .65; cursor: wait; }
.secondary { background: #e8f2ec; color: #155747; }
ol { padding-left: 1.4rem; }
li { padding-left: .35rem; margin: 1.8rem 0; }
li p { margin: .5rem 0 1rem; }
[hidden] { display: none !important; }
.help { color: #405e55; font-size: .86rem; overflow-wrap: anywhere; }
aside { border-top: 1px solid #d6e5dd; margin-top: 2.5rem; padding-top: 1rem; }
h2 { font-size: 1.15rem; }
a { color: #125a49; text-underline-offset: .2em; }
#status:empty { display: none; }
#status { background: #fff4d2; padding: 1rem; border-radius: .6rem; }
