@import "https://fonts.cdnfonts.com/css/creato-display";
:root{--brand-purple:#2c1d68;--accent-purple:#7338d2;--bright-purple:#561ade;--mid-purple:#40269c;--ink:#050505;--paper:#fff;--line:#ffffff47;--muted:#616161}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:var(--brand-purple);color:var(--paper);font-family:Creato Display,Helvetica,sans-serif}button,input{font:inherit}.page-shell{background:radial-gradient(circle at 50% 42%, #7338d247, transparent 30%), linear-gradient(145deg, var(--brand-purple) 0%, var(--mid-purple) 58%, var(--bright-purple) 100%);width:100vw;height:100dvh;position:relative;overflow:hidden}.page-shell:before{content:"";pointer-events:none;opacity:.24;background-image:radial-gradient(#ffffff47 .6px,#0000 .6px),radial-gradient(#561ade2e .7px,#0000 .7px);background-position:0 0,11px 13px;background-size:22px 22px,29px 29px;position:fixed;inset:0}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:28px;width:min(100%,680px);height:100%;margin:0 auto;padding:24px;display:flex}.logo-mark{width:clamp(230px,28vw,380px);height:auto}.hero-item{animation:.52s cubic-bezier(.2,.8,.2,1) both hero-in}.hero-item-logo{animation-delay:80ms}.hero-item-copy{animation-delay:.19s}.hero-item-action{animation-delay:.3s}h1,h2,p{margin:0}h1{letter-spacing:0;text-transform:uppercase;font-size:clamp(1rem,1.35vw,1.18rem);font-weight:800;line-height:1.2}.primary-button{background:var(--ink);min-height:48px;color:var(--paper);text-transform:uppercase;cursor:pointer;border:0;border-radius:2px;padding:0 28px;font-size:.9rem;font-weight:800;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1),background .22s;box-shadow:0 0 #0000}.primary-button:hover{background:#140d33;transform:translateY(-2px);box-shadow:0 12px 28px #140d333d}.primary-button:active{transform:translateY(0);box-shadow:0 6px 16px #140d3338}.primary-button:focus-visible,.close-button:focus-visible,input:focus-visible{outline:3px solid var(--accent-purple);outline-offset:3px}.site-footer{color:#ffffffdb;text-align:center;padding:0 18px;font-size:.72rem;font-weight:500;line-height:1.35;position:fixed;bottom:18px;left:0;right:0}.modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000057;place-items:center;padding:20px;animation:.18s ease-out both backdrop-in;display:grid;position:fixed;inset:0;overflow:hidden}.signup-modal{background:var(--paper);width:min(100%,430px);max-height:calc(100dvh - 40px);color:var(--ink);border-radius:4px;padding:42px 32px 32px;animation:.22s cubic-bezier(.2,.8,.2,1) both modal-in;position:relative;overflow:hidden;box-shadow:0 24px 90px #2c1d686b}.close-button{width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:1.75rem;line-height:1;position:absolute;top:10px;right:10px}h2{letter-spacing:0;text-transform:uppercase;text-align:center;margin-bottom:22px;font-size:1rem;font-weight:800;line-height:1.2}.signup-form{gap:15px;display:grid}.field-label{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}input[type=email]{width:100%;min-height:48px;color:var(--ink);background:var(--paper);border:1px solid #cfcfcf;border-radius:2px;padding:0 14px}.consent-row{color:#242424;grid-template-columns:18px 1fr;align-items:start;gap:10px;font-size:.84rem;line-height:1.35;display:grid}.consent-row input{width:18px;height:18px;accent-color:var(--accent-purple);margin:0}.trap-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.turnstile-wrap{justify-content:center;min-height:0;display:flex}.form-message{color:#b00020;font-size:.86rem;line-height:1.4}.success-message{color:#111;text-align:center;font-size:.98rem;line-height:1.45}.form-button{width:100%;margin-top:2px}.form-button:disabled{cursor:wait;opacity:.72;transform:none}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes hero-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (max-width:560px){.hero{padding-bottom:76px}.signup-modal{width:min(100%,430px);max-height:calc(100dvh - 28px);padding:34px 22px 24px}.site-footer{font-size:.68rem;bottom:14px}.primary-button{width:auto;min-width:210px;max-width:calc(100vw - 48px)}.form-button{width:100%;max-width:none}}
