:root{--ink: #0d0d0b;--paper: #f5f2ed;--bone: #e8e3da;--ash: #9a9690;--char: #1c1b18;--mist: #ccc8c0;--accent: #f5f5e9;--f-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;--f-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;--f-mono: "DM Mono", "Courier New", monospace;--fs-label: .62rem;--fs-body: .9rem;--fs-micro: .58rem;--ls-label: .3em;--ls-wide: .4em}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--paper);font-family:var(--f-sans);font-weight:300;overflow-x:hidden;cursor:none;min-height:100vh;display:flex;flex-direction:column}.cursor{position:fixed;width:8px;height:8px;background:var(--paper);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .1s ease,opacity .2s}.cursor-ring{position:fixed;width:36px;height:36px;border:.5px solid var(--accent);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform .25s ease,width .2s,height .2s,opacity .2s}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:2rem 4rem}.nav-logo{font-family:Marion,Georgia,serif;font-size:1.1rem;font-weight:400;letter-spacing:var(--ls-wide);color:var(--paper);text-decoration:none;text-transform:uppercase}.nav-links{display:flex;gap:3rem;list-style:none}.nav-links a{font-family:var(--f-mono);font-size:var(--fs-label);letter-spacing:var(--ls-label);color:var(--ash);text-decoration:none;text-transform:uppercase;transition:color .3s}.nav-links a:hover,.nav-links a.active{color:var(--paper)}main{flex:1;display:flex;align-items:center;justify-content:center;padding:8rem 2rem 4rem}.access-card{width:min(480px,100%);border:.5px solid rgba(245,242,237,.1);padding:3.5rem 3rem}.access-eyebrow{font-family:var(--f-mono);font-size:var(--fs-label);letter-spacing:var(--ls-wide);color:var(--accent);text-transform:uppercase;display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.access-eyebrow:before{content:"";display:block;width:24px;height:.5px;background:var(--accent)}.access-title{font-family:var(--f-serif);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;line-height:1.1;margin-bottom:1rem}.access-subtitle{font-size:var(--fs-body);font-weight:300;line-height:1.85;color:var(--mist);margin-bottom:2.5rem}label{display:block;font-family:var(--f-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ash);margin-bottom:.6rem}input[type=password],input[type=text]{width:100%;padding:.85rem 1rem;background:transparent;border:.5px solid rgba(245,242,237,.2);color:var(--paper);font-family:var(--f-mono);font-size:var(--fs-label);letter-spacing:var(--ls-label);outline:none;transition:border-color .25s}input:focus{border-color:#f5f2ed80}input::placeholder{color:var(--ash)}button{margin-top:1.5rem;width:100%;padding:.9rem 1rem;background:transparent;border:.5px solid rgba(245,242,237,.3);color:var(--paper);font-family:var(--f-mono);font-size:var(--fs-label);letter-spacing:var(--ls-wide);text-transform:uppercase;cursor:none;transition:background .25s,border-color .25s}button:hover{background:#f5f2ed0d;border-color:#f5f2ed80}.access-helper{font-family:var(--f-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-label);color:var(--ash);margin-top:1.2rem;line-height:1.8}.access-error{font-family:var(--f-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-label);color:#e07070;margin-top:.8rem;min-height:1.2em}footer{border-top:.5px solid rgba(245,242,237,.08);padding:2rem 4rem;display:flex;justify-content:space-between;align-items:center}.footer-logo{font-family:var(--f-mono);font-size:var(--fs-label);letter-spacing:var(--ls-wide);color:var(--ash);text-transform:uppercase}.footer-info{font-family:var(--f-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-label);color:var(--ash);text-align:right;line-height:1.9}.footer-info a{color:var(--ash);text-decoration:none;transition:color .3s}.footer-info a:hover{color:var(--paper)}@media(max-width:768px){nav{padding:1.5rem}.nav-links{gap:1.5rem}main{padding:7rem 1.5rem 3rem}.access-card{padding:2.5rem 1.5rem}footer{flex-direction:column;gap:1.5rem;text-align:center;padding:2rem 1.5rem}.footer-info{text-align:center}}
