*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;background:var(--paper);color:var(--deep)}a{color:inherit}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr}.story{background:var(--deep);color:var(--bg);padding:46px 7vw 30px;display:flex;flex-direction:column;overflow:hidden;position:relative}.brand{display:flex;gap:12px;align-items:center;font-size:25px;font-weight:650;letter-spacing:-1px;text-decoration:none}.brand small{font-size:9px;letter-spacing:2px;color:var(--brand-secondary);margin-left:8px}.mark{background:var(--brand-border);color:var(--deep);border-radius:12px;padding:5px 9px;font-size:28px;letter-spacing:-3px}.story-copy{margin:auto 0;padding:65px 0 30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:var(--muted)}.story .eyebrow{color:var(--brand-border)}h1{font-size:clamp(32px,3.65vw,60px);line-height:1.17;font-weight:500;letter-spacing:-2px;margin:28px 0}em{font-style:normal;color:var(--brand-border)}.story p{color:var(--brand-secondary);font-size:14px;line-height:1.9}.orbit{width:205px;height:180px;border:1px solid var(--green);border-radius:50%;position:relative;margin:40px 0 15px 15px;transform:rotate(-15deg)}.orbit:before{content:"";position:absolute;inset:22px -20px;border:1px solid var(--green);border-radius:50%;transform:rotate(45deg)}.orbit i,.orbit strong{position:absolute;display:grid;place-items:center;border-radius:50%;width:43px;height:43px;background:var(--green);border:5px solid var(--deep);font-style:normal;font-size:11px;transform:rotate(15deg)}.orbit i:nth-child(1){left:0;top:10px}.orbit i:nth-child(2){right:-10px;top:25px}.orbit i:nth-child(3){right:10px;bottom:0}.orbit i:nth-child(4){left:0;bottom:5px}.orbit strong{left:73px;top:62px;background:var(--brand-border);color:var(--deep);width:60px;height:60px;font-size:30px;letter-spacing:-3px}footer{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:var(--brand-border);gap:16px}footer span{letter-spacing:0}.entry{display:flex;align-items:center;justify-content:center;position:relative;padding:70px 55px}.entry-inner{width:100%;max-width:365px}h2{font-size:40px;font-weight:550;letter-spacing:-1.5px;line-height:1.15;margin:22px 0}.entry p{font-size:13px;line-height:1.8;color:var(--muted)}.google-button{display:flex;gap:15px;align-items:center;justify-content:center;text-decoration:none;background:#fff;border:1px solid var(--sage);border-radius:12px;padding:17px;margin-top:30px;font-size:13px;font-weight:600;box-shadow:0 5px 15px #263e3205}.google-button:hover{border-color:var(--muted);background:var(--bg)}.google-button:focus-visible{outline:3px solid var(--muted);outline-offset:3px}.google-button[aria-disabled=true]{opacity:.5;pointer-events:none}.google-button svg{width:21px;height:21px}.google-button span:last-child{margin-left:auto;color:var(--muted)}.notice{min-height:24px}.notice.error{color:#975441}.privacy{display:grid;grid-template-columns:24px 1fr;gap:22px 13px;border-top:1px solid var(--sage);padding-top:27px;margin-top:16px}.privacy>span{font-size:10px;color:var(--muted);padding-top:3px}.privacy strong{font-size:12px;font-weight:600}.privacy p{margin:6px 0 0;font-size:11px}.entry .fine{font-size:10px;margin-top:35px}.entry-footer{position:absolute;bottom:30px;font-size:8px;letter-spacing:1.5px;color:var(--muted)}@media(max-width:800px){.story{padding:28px;min-height:230px}.story-copy{padding:20px 0 0}.story h1{font-size:31px;letter-spacing:-1px;margin:18px 0}.story p,.story .orbit,.story footer{display:none}.login-shell{grid-template-columns:1fr}.entry{padding:40px 28px 70px}.entry-inner{max-width:430px}h2{font-size:32px}.entry-footer{bottom:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
#access-form{margin-top:24px}#access-form>label{font-size:12px;color:var(--green)}#access-form textarea{display:block;width:100%;padding:13px;border:1px solid var(--brand-border);background:#fff;border-radius:10px;resize:vertical;font:inherit;font-size:13px;color:var(--deep);margin:10px 0 16px}.consent{display:flex;gap:10px;align-items:flex-start;line-height:1.6;font-size:11px!important}.consent input{flex-shrink:0;accent-color:var(--green)}.access-primary{width:100%;margin-top:22px;padding:15px;background:var(--deep);color:#fff;border:0;border-radius:11px;font:inherit;font-size:13px;cursor:pointer}.access-primary:disabled{opacity:.5}.access-actions{display:flex;justify-content:space-between;gap:16px}.access-actions button{background:none;border:0;padding:6px 0;color:var(--green);text-decoration:underline;cursor:pointer;font:inherit;font-size:12px}#access-identity{overflow-wrap:anywhere}button:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--muted);outline-offset:3px}
.login-divider{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:8px;letter-spacing:1.2px;margin:23px 0}.login-divider:before,.login-divider:after{content:"";height:1px;background:var(--sage);flex:1}#local-login label,.password-card label{display:block;font-size:11px;margin:13px 0 7px;color:var(--green)}#local-login input,.password-card input{width:100%;padding:12px 13px;border:1px solid var(--sage);border-radius:9px;background:#fff;color:var(--deep);font:inherit;font-size:13px}.password-field{position:relative}.password-field input{padding-right:60px!important}.password-field button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:0;font-size:11px;color:var(--muted);cursor:pointer}#local-login .access-primary{margin-top:16px}#local-login .fine{margin:10px 0;font-size:10px}.login-shell:has(#local-login) .entry{padding-top:45px;padding-bottom:65px}.login-shell:has(#local-login) .privacy{gap:14px;margin-top:0;padding-top:20px}.login-shell:has(#local-login) h2{font-size:34px;margin:16px 0}.password-shell{min-height:100vh;padding:35px 25px;display:flex;align-items:center;flex-direction:column;gap:35px}.password-shell .brand small{color:var(--muted)}.password-card{width:min(460px,100%);background:#fff;border:1px solid var(--sage);border-radius:20px;padding:36px;box-shadow:0 12px 60px #263e3206}.password-card h1{font-size:30px;letter-spacing:-1px;margin:22px 0}.password-card p{font-size:12px;line-height:1.8;color:var(--muted)}.password-card p.fine{font-size:10px}.password-card .access-actions{font-size:11px}.password-card .fine{overflow-wrap:anywhere}@media(max-width:600px){.password-card{padding:24px}.password-shell{padding:25px 18px}.login-shell:has(#local-login) .entry{padding:30px 25px 65px}}
