:root { color-scheme:light; --bg:#f8f7f3; --ink:#292a33; --muted:#6d6d75; --line:#deddd8; --accent:#51539b; }
* { box-sizing:border-box; } body { margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit;text-decoration:none; } button,input,textarea { font:inherit; } button { cursor:pointer; } [hidden] { display:none!important; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible { outline:2px solid var(--accent);outline-offset:4px; }
h1,h2,p,figure { margin:0; } .topbar { position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:23px max(36px,calc((100% - 1120px)/2));background:#f8f7f3f2;backdrop-filter:blur(12px);border-bottom:1px solid #deddd85c; }
.brand img { display:block;width:146px;height:auto; } .sign-in { font-size:13px;color:var(--muted); } .sign-in span { margin-left:12px; } a:hover,.text-button:hover { color:var(--accent); }
main { max-width:1200px;padding:0 40px;margin:auto; } .hero { display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:48px;padding:90px 0 80px;min-height:660px; }
.eyebrow { color:var(--muted);font-size:11px;letter-spacing:1.1px;text-transform:uppercase; } h1 { font:normal clamp(54px,6.4vw,80px)/1.06 Georgia,"Times New Roman",serif;letter-spacing:-3px;margin:25px 0; } h1 em { color:var(--accent);font-weight:normal; }
.lead { font-size:16px;line-height:1.8;color:var(--muted);max-width:420px;margin-bottom:30px; } .button { display:inline-flex;align-items:center;justify-content:center;gap:25px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:12px 20px;min-height:46px;border-radius:3px;font-size:13px; } .primary { background:var(--ink);color:#fff;border-color:var(--ink); } .primary:hover { background:var(--accent);border-color:var(--accent); } .button:disabled { cursor:not-allowed;opacity:.45; } .access-note { color:var(--muted);font-size:11px;line-height:1.75;margin-top:16px; }
.field { position:relative;min-width:0; } .field img { width:100%;height:auto;display:block; } .field figcaption { text-align:right;color:#7b7982;font:italic 13px/1.6 Georgia,serif;margin-top:-25px;margin-right:25px; }
.approach { display:grid;grid-template-columns:1fr 1.7fr;gap:24px 40px;border-top:1px solid var(--line);padding:48px 0 55px; } .approach>p:nth-child(2) { font-size:23px;line-height:1.7;font-weight:400;letter-spacing:-.4px; } .steps { grid-column:2;display:flex;gap:22px;color:var(--muted);font-size:12px; }
.invitation { border-top:1px solid var(--line);padding:50px 0 64px;display:flex;justify-content:space-between;gap:24px;align-items:center;color:var(--muted); } .text-button { border:0;background:transparent;padding:10px 0;color:var(--ink);font-size:13px; } .text-button span { margin-left:20px; }
footer { max-width:1200px;padding:24px 40px;margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;color:var(--muted);border-top:1px solid var(--line); } footer>span:first-child { color:var(--ink); } footer>a { margin-left:auto; }
.skip-link { position:fixed;left:16px;top:-100px;background:#fff;z-index:30;padding:12px; } .skip-link:focus { top:12px; }
dialog { border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink);width:min(530px,calc(100% - 32px));max-height:calc(100vh - 40px);padding:32px;overflow:auto; } dialog::backdrop { background:#22222e5c;backdrop-filter:blur(4px); } .dialog-head { display:flex;align-items:center;justify-content:space-between;gap:12px; } .close { border:0;background:transparent;color:var(--muted);font-size:26px;line-height:1;padding:4px; } h2 { font:normal 34px/1.2 Georgia,serif;letter-spacing:-1px;margin:14px 0; } .dialog-lead { color:var(--muted);font-size:13px;margin-bottom:25px; }
form { display:grid;gap:16px; } label { display:grid;gap:6px;font-size:12px; } input,textarea { width:100%;min-width:0;border:1px solid #aaa9b0;border-radius:2px;padding:9px 10px;background:#fff;color:var(--ink);font-size:14px; } textarea { resize:vertical; } .optional { color:var(--muted);display:contents; } .form-note { font-size:11px;color:var(--muted); } .consent { display:flex;align-items:flex-start;gap:9px; } .consent input { width:15px;height:15px;margin:3px 0; } .honey { position:absolute;left:-9999px; } #request-status { font-size:12px;color:var(--accent);overflow-wrap:anywhere; } #request-success { display:grid;gap:20px;font-size:14px; } #request-success .button { justify-self:start; } #verification { min-height:0; } .not-found { max-width:760px;padding-top:96px;padding-bottom:96px; } .not-found p { margin:22px 0;color:var(--muted); }
@media(max-width:800px) { .hero { gap:16px;padding-top:60px;min-height:600px; } main { padding:0 28px; } .topbar { padding:20px 28px; } h1 { letter-spacing:-2px; } .field figcaption { margin-top:0; } .approach { grid-template-columns:1fr 1.6fr; } .approach>p:nth-child(2) { font-size:20px; } footer { padding:24px 28px; } }
@media(max-width:600px) { .topbar { padding:17px 20px; } .brand img { width:126px; } main { padding:0 24px; } .hero { grid-template-columns:1fr;gap:12px;padding:52px 0 40px;min-height:0; } h1 { font-size:57px;letter-spacing:-2px; } .eyebrow { font-size:10px; } .lead { font-size:14px;max-width:350px; } .field { max-width:350px;width:100%;justify-self:center;margin-top:10px; } .field figcaption { font-size:11px;margin-top:-16px; } .approach { grid-template-columns:1fr;gap:18px;padding:34px 0; } .approach>p:nth-child(2) { font-size:20px; } .steps { grid-column:auto;gap:18px; } .invitation { align-items:flex-start;flex-direction:column;padding:34px 0;gap:14px;font-size:14px; } footer { padding:22px 24px;gap:12px; } footer>span:nth-child(2) { display:none; } dialog { padding:24px; } h2 { font-size:30px; } }
