/* Bramble Bush landing page. Fonts are self-hosted under the SIL Open Font License; see /fonts/. */
@font-face{font-family:"Gloock";src:url(/fonts/Gloock-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Anek Latin 88";src:url(/fonts/AnekLatin88.woff2) format("woff2");font-weight:100 800;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/fonts/IBMPlexMono-Medium.woff2) format("woff2");font-weight:500;font-display:swap}

:root{--paper:#E4E2DD;--blackberry:#33242C;--muted:#625A5F;--button-text:#ECE8E6;--red:#D93A26}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--paper);color:var(--blackberry);font-family:"Anek Latin 88","Arial Narrow",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.grain{position:fixed;inset:0;pointer-events:none;background-image:url(/grain.png);background-size:960px 540px;opacity:.11;mix-blend-mode:multiply}
.page{position:relative;min-height:100vh;min-height:100dvh;padding:clamp(40px,7vh,64px) 20px clamp(32px,7vh,64px);display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:40px}
.spacer{height:1px}
.center{display:flex;flex-direction:column;align-items:center;gap:clamp(28px,4vh,36px)}
h1{margin:0;font-family:Gloock,Georgia,serif;font-weight:400;font-size:clamp(64px,8.4vw,120px);line-height:.9;text-align:center}
.rule{width:clamp(56px,5vw,72px);height:4px;background:var(--red)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 32px;border-radius:2px;background:var(--blackberry);color:var(--button-text);font-size:17px;font-weight:600;letter-spacing:.02em;text-decoration:none}
.button:hover{background:#4a3540}
.address{margin:-18px 0 0;font-family:"IBM Plex Mono",monospace;font-weight:500;font-size:13px;letter-spacing:.06em;color:var(--muted)}
.address a{color:inherit;text-underline-offset:4px}
.address a:hover{color:var(--red)}
a:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.invited{font-size:13px;line-height:1.45;color:var(--muted);text-decoration:none;text-underline-offset:4px}
.invited:hover{color:var(--red);text-decoration:underline}
h1.small{font-size:clamp(44px,5.6vw,72px)}
.gate-form{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(320px,100%)}
.gate-form label{font-family:"IBM Plex Mono",monospace;font-weight:500;font-size:13px;letter-spacing:.06em;color:var(--muted)}
.gate-form input{width:100%;min-height:48px;padding:0 14px;border:1px solid #b9b3b0;border-radius:2px;background:#f1efeb;color:var(--blackberry);font:inherit;font-size:17px}
.gate-form input:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.gate-form .button{border:0;cursor:pointer;font-family:inherit;margin-top:6px}
.error{margin:0;font-size:14px;color:#a52a1a}
.note{margin:0;font-size:18px}
.linkbutton{background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.linkbutton:hover{color:var(--red)}
button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
