:root { color-scheme: light; font-family: system-ui, sans-serif; color: #243b35; background: #f3f5ef; }
* { box-sizing: border-box; }
body { margin: 0; padding: 48px 20px; }
main { max-width: 620px; margin: auto; background: white; border: 1px solid #dde5d8; border-radius: 24px; padding: 36px; box-shadow: 0 16px 60px #243b3509; }
h1 { font-family: Georgia, serif; font-weight: 400; font-size: 44px; margin: 12px 0; }
h2 { font-size: 28px; margin-top: 0; }
h3 { font-size: 17px; }
p { line-height: 1.65; }
.eyebrow { color: #5a7268; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
form { margin: 28px 0; display: grid; gap: 12px; }
label { font-weight: 600; }
input { min-width: 0; width: 100%; padding: 14px; font: inherit; border: 1px solid #aabdb2; border-radius: 10px; }
button, a { font: inherit; border-radius: 10px; padding: 12px 16px; }
button { cursor: pointer; background: #255443; color: white; border: 1px solid #255443; }
button:disabled { opacity: .6; cursor: wait; }
a { display: inline-block; color: #255443; font-weight: 600; }
.secondary { background: white; color: #255443; }
:focus-visible { outline: 3px solid #b58425; outline-offset: 3px; }
#result { background: #f4f7f1; padding: 24px; border-radius: 16px; }
#feedback { font-size: 14px; }
.link-row { border-top: 1px solid #d7e1d6; margin-top: 20px; }
.address { overflow-wrap: anywhere; font-size: 13px; color: #586d62; user-select: all; }
footer { color: #586d62; font-size: 13px; margin-top: 28px; }
@media (max-width: 480px) { body { padding: 16px 12px; } main { padding: 24px 18px; } h1 { font-size: 36px; } #result { padding: 18px; } }
