/* Outfit is distributed under the SIL Open Font License; see assets/Outfit-OFL.txt. */
@font-face{font-family:Outfit;src:url('assets/Outfit-Variable-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--paper:#f4f0e7;--muted:#b9b9af;--ink:#000;--sans:Outfit,'Helvetica Neue',Arial,sans-serif;font-family:var(--sans);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-weight:400;letter-spacing:0;font-kerning:normal;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #d5c29f;outline-offset:5px}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}
.skip{position:fixed;left:20px;top:-100px;z-index:10;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.page{min-height:100svh;display:flex;flex-direction:column;align-items:center;padding:24px 28px 18px}
header{display:flex;justify-content:center;width:100%}.brand{display:block;width:94px;height:94px}.brand img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(95%) sepia(7%) saturate(384%) hue-rotate(344deg) brightness(103%) contrast(92%)}
main{display:flex;align-items:center;justify-content:center;flex:1;width:100%;padding:26px 0 30px}.invitation{width:min(940px,100%);text-align:center;animation:copy-arrive .9s ease-out both}
.launch-marker{font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;line-height:1.5;color:#b4b2a8;margin:0 0 18px}
h1{font-weight:300;font-size:clamp(3rem,4.6vw,4.375rem);line-height:1.06;letter-spacing:-.025em;margin:0 0 22px}h1>span{color:#d5d1c7}
.intro{font-size:1.0625rem;font-weight:400;line-height:1.65;color:#b9b6ad;max-width:550px;margin:0 auto}
.silhouette{position:relative;isolation:isolate;width:min(780px,100%);aspect-ratio:2/1;margin:14px auto 12px;overflow:hidden;mask-image:linear-gradient(#000 80%,transparent 100%);animation:material-arrive 1.6s ease-out both}.silhouette img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}.silhouette-base{opacity:.78}.silhouette-light{position:absolute;inset:0;pointer-events:none;opacity:0;mix-blend-mode:screen;filter:brightness(1.2);mask-image:linear-gradient(105deg,transparent 41%,#000 50%,transparent 59%);mask-size:300% 100%;mask-repeat:no-repeat;mask-position:100% 0}.silhouette.is-ready .silhouette-light{animation:outline-light 4.8s ease-in-out .35s both}
.signup{width:min(490px,100%);margin:0 auto}.form-heading{font-size:1rem;letter-spacing:.01em;margin:0 0 17px;color:#ebe8df}.email-row{display:flex;border-bottom:1px solid #b8b9a787;align-items:center;gap:16px;padding-bottom:9px;transition:border-color .2s}.email-row:focus-within{border-color:var(--paper)}input[type=email]{width:0;min-width:0;flex:1;background:transparent;color:var(--paper);border:0;border-radius:0;padding:14px 2px;font-size:1rem;outline-offset:3px!important}input::placeholder{color:#b6b9ab}#join-button{display:flex;align-items:center;justify-content:center;flex:none;min-height:50px;padding:12px 22px;border:1px solid #f0ebde;background:var(--paper);color:var(--ink);font-size:.9375rem;font-weight:500;letter-spacing:.01em;transition:background .2s}#join-button:hover{background:#fff}.email-note{color:#a8aa9f;font-size:.75rem;line-height:1.65;margin:15px auto 0;max-width:460px}.text-link{border:0;padding:5px 0;background:none;color:inherit;font-size:inherit;text-decoration:underline;text-decoration-color:#9b9f9077;text-underline-offset:4px;min-height:32px}.text-link:hover{color:#fff;text-decoration-color:currentColor}.trap{position:absolute;left:-10000px;height:1px;overflow:hidden}.form-status{line-height:1.5;font-size:.875rem;margin:10px 0 0;color:#efc7b7}.form-status:empty{display:none}.confirmation{padding:12px 0}.confirmation-mark{display:block;font-size:24px;color:#d2ddbe;margin-bottom:12px}.confirmation h2{font-size:1.75rem;font-weight:300;letter-spacing:-.015em;margin:0 0 12px}.confirmation p{font-size:1rem;line-height:1.65;color:var(--muted);max-width:370px;margin:0 auto}.noscript{color:#f0d6b8;font-size:.875rem}
dialog{width:min(520px,calc(100% - 36px));padding:42px;background:#f4f0e7;color:#252720;border:1px solid #ddd6c8;max-height:85svh;overflow:auto}dialog::backdrop{background:#080908b8;backdrop-filter:blur(10px)}.dialog-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;background:none;color:#252720;font-size:26px}.dialog-kicker{font-size:.75rem;letter-spacing:.2em;margin:0 0 26px}dialog h2{font-size:2rem;font-weight:300;letter-spacing:-.015em;line-height:1.2;margin:0 0 22px}dialog p{font-size:1rem;line-height:1.65;color:#55594d}.dialog-done{padding:13px 24px;border:1px solid #3b4134;background:none;color:#252720;font-size:.875rem;margin-top:12px}
footer{display:flex;align-items:center;justify-content:center;font-size:.75rem;letter-spacing:.035em;color:#8d8b83;line-height:1.5}
@keyframes copy-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes material-arrive{from{opacity:0}to{opacity:1}}@keyframes outline-light{0%{opacity:0;mask-position:100% 0}15%{opacity:.42}80%{opacity:.42}100%{opacity:0;mask-position:0% 0}}
@media(min-width:1600px){.page{padding-top:30px}main{padding-top:28px}.brand{width:100px;height:100px}.silhouette{width:820px}}
@media(min-width:761px) and (max-height:850px){.page{padding-top:16px;padding-bottom:14px}.brand{width:74px;height:74px}main{padding-top:14px;padding-bottom:16px}.launch-marker{margin-bottom:12px}h1{font-size:3.25rem;margin-bottom:16px}.intro{font-size:1rem;line-height:1.55}.silhouette{width:min(650px,70svh);margin-top:10px;margin-bottom:4px}}
@media(max-width:760px){.page{padding:21px 26px 18px}.brand{width:82px;height:82px}main{padding:26px 0 30px;align-items:flex-start}.launch-marker{margin-bottom:18px;letter-spacing:.18em}h1{font-size:clamp(3rem,8.8vw,3.875rem);line-height:1.08;margin-bottom:21px}h1>span{display:block}.intro{font-size:1rem;line-height:1.65;max-width:360px}.silhouette{width:calc(100% + 30px);max-width:600px;margin:15px -15px 22px;aspect-ratio:1.8/1}.silhouette-base{opacity:.83}.signup{max-width:440px}.form-heading{margin-bottom:14px}.email-row{gap:10px}.email-note{max-width:330px}dialog{padding:34px 26px}dialog h2{font-size:1.75rem}}
@media(min-width:500px) and (max-width:760px){.silhouette{margin-left:auto;margin-right:auto;width:100%;max-width:540px}.intro{max-width:430px}}
@media(max-width:499px){.email-row{flex-direction:column;align-items:stretch;border:0;gap:12px;padding:0}input[type=email]{width:100%;border-bottom:1px solid #b8b9a787;padding:12px 2px;flex:none}input[type=email]:focus{border-color:var(--paper)}#join-button{width:100%;min-height:50px}}
@media(max-width:360px){.page{padding-left:21px;padding-right:21px}.brand{width:76px;height:76px}h1{font-size:2.875rem}.silhouette{margin-top:12px;margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.invitation,.silhouette,.silhouette.is-ready .silhouette-light{animation:none}.silhouette-light{display:none}.email-row,#join-button{transition:none}}
