@charset "UTF-8";
:root { color-scheme:light; --paper:#faf9f5; --ink:#242c29; --muted:#626b65; --line:#dedfd7; --green:#344d41; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-underline-offset:4px; }
a:hover { color:#4b6757; }
a:focus-visible,summary:focus-visible { outline:3px solid #a86823; outline-offset:5px; border-radius:4px; }
.shell { width:min(100% - 64px,1000px); margin-inline:auto; }
header { display:flex; justify-content:space-between; align-items:center; gap:24px; padding-block:28px; }
.brand { display:flex; align-items:center; gap:11px; text-decoration:none; font-size:17px; font-weight:650; letter-spacing:-.4px; white-space:nowrap; }
.brand img { border-radius:10px; }
nav { display:flex; gap:26px; font-size:13px; }
nav a { text-decoration:none; }
nav a:hover,nav a[aria-current] { text-decoration:underline; }
.skip-link { position:absolute; top:-100px; left:20px; background:white; padding:12px; z-index:10; }
.skip-link:focus { top:12px; }
p { margin:0 0 18px; }
h1,h2,h3 { line-height:1.18; }
h1 { font:normal clamp(42px,5.6vw,70px)/1.08 Georgia,"Times New Roman",serif; letter-spacing:-2.6px; margin:0 0 25px; }
h2 { font-size:23px; font-weight:600; letter-spacing:-.6px; margin:0 0 16px; }
h3 { font-size:17px; margin:0 0 10px; }
.hero { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:72px; padding:80px 0 86px; }
.eyebrow { color:var(--muted); text-transform:uppercase; letter-spacing:2px; font-size:11px; font-weight:650; margin-bottom:22px; }
.lead { color:var(--muted); font-size:18px; max-width:460px; line-height:1.65; }
.button { display:inline-flex; align-items:center; justify-content:center; background:var(--green); color:#fff; text-decoration:none; padding:13px 24px; border-radius:30px; font-size:15px; font-weight:600; margin-top:10px; min-height:48px; }
.button:hover { color:white; background:#263d31; }
.platform { font-size:12px; color:var(--muted); margin:13px 0 0; }
.postcard-wrap { padding:26px 0; }
.postcard { background:#fffefb; border:1px solid #e6e2d8; padding:30px; aspect-ratio:1.22; transform:rotate(3deg); display:flex; flex-direction:column; box-shadow:0 22px 55px #353b2910,0 3px 6px #353b2906; }
.postcard-top { display:flex; justify-content:space-between; align-items:center; gap:15px; font-size:10px; text-transform:uppercase; letter-spacing:2px; color:#777e73; }
.stamp { border:1px solid #d9d9cc; padding:7px; }
.stamp img { display:block; width:42px; height:42px; border-radius:7px; opacity:.86; }
.postcard-words { margin:auto 0; padding-block:18px; color:#435c4b; font:italic 37px/1.2 Georgia,serif; letter-spacing:-1.4px; }
.postcard-bottom { border-top:1px solid #e4e3d9; padding-top:14px; color:#72786c; font:italic 14px Georgia,serif; }
.how { display:grid; grid-template-columns:repeat(3,1fr); gap:50px; border-block:1px solid var(--line); padding:35px 0 32px; }
.how p { color:var(--muted); font-size:14px; margin:0; }
.how h2 { font-size:17px; margin-bottom:10px; }
.closing { padding:54px 0 61px; max-width:620px; }
.closing h2 { font:normal 28px/1.25 Georgia,serif; letter-spacing:-.7px; }
.closing p { color:var(--muted); font-size:15px; margin:0; }
footer { border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:24px 30px; color:var(--muted); font-size:12px; }
footer p { margin:0; }
.page-heading { padding:65px 0 36px; max-width:730px; }
.page-heading h1 { font-size:clamp(40px,5vw,57px); letter-spacing:-1.8px; }
.meta { color:var(--muted); font-size:13px; }
.document { max-width:730px; padding-bottom:70px; }
.document section+section { border-top:1px solid var(--line); padding-top:28px; margin-top:28px; }
.document section { scroll-margin-top:25px; }
.document p,.document li { font-size:15px; color:#4d5750; }
ul,ol { padding-left:23px; margin:0 0 20px; }
li+li { margin-top:9px; }
.email { overflow-wrap:anywhere; }
.note { border-left:2px solid #d1b476; padding-left:20px; }
.contact-block { border-bottom:1px solid var(--line); margin-bottom:28px; padding-bottom:28px; }
.contact-block .button { margin:0 0 15px; }
.contact-block p { max-width:620px; }
details { border-bottom:1px solid var(--line); padding:20px 0; }
summary { cursor:pointer; font-size:17px; font-weight:600; padding-right:15px; }
details[open] summary { margin-bottom:16px; }
details p:last-child { margin-bottom:2px; }
@media(max-width:760px) {
 .shell { width:calc(100% - 40px); } header { padding-block:23px; gap:16px; flex-wrap:wrap; } header nav { gap:18px; }
 .hero { gap:40px; grid-template-columns:1fr; padding:46px 0 50px; } h1 { font-size:52px; letter-spacing:-2px; max-width:490px; } .lead { font-size:17px; }
 .postcard-wrap { width:min(100% - 24px,370px); margin-inline:auto; padding:10px 0; } .postcard { padding:26px; }
 .how { gap:25px; grid-template-columns:1fr; padding-block:28px; } .how p { max-width:440px; } .closing { padding-block:37px; }
 footer { align-items:flex-start; flex-direction:column; gap:17px; } .page-heading { padding-top:40px; }
}
@media(max-width:390px) { header nav { gap:14px; } .brand { font-size:16px; } h1 { font-size:45px; } .postcard-words { font-size:33px; } }
