:root{--ink:#202827;--ink-deep:#151c1b;--ink-soft:#5d6967;--mist:#e9ece8;--chalk:#fafaf7;--paper:#f4f3ee;--white:#fff;--accent:#607b76;--accent-dark:#48635e;--accent-light:#cbd7d3;--line:#20282729;--line-light:#ffffff2e;--max:1280px;--gutter:clamp(1.25rem, 4vw, 4.75rem);--section:clamp(5.25rem, 9vw, 9rem);--display:"Aptos Display", "Segoe UI Variable Display", "Helvetica Neue", Arial, sans-serif;--body:"Inter", "Segoe UI Variable Text", "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{color:var(--ink);background:var(--paper);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.65}body.nav-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.052em;font-weight:520;line-height:.98}h1{font-size:clamp(3.5rem,7.8vw,8rem)}h2{font-size:clamp(2.6rem,5.25vw,5.4rem)}h3{font-size:clamp(1.45rem,2.3vw,2.2rem)}::selection{background:var(--accent);color:var(--white)}:where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.section--ink :where(a,button,input,select,textarea):focus-visible,.site-footer :where(a,button):focus-visible{outline-color:var(--accent-light)}.container{width:min(var(--max), calc(100% - var(--gutter) * 2));margin-inline:auto}.section{padding-block:var(--section)}.section--ink{background:var(--ink);color:var(--chalk)}.section--chalk{background:var(--chalk)}.section--mist{background:var(--mist)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.75rem;margin-bottom:1.35rem;font-size:.69rem;font-weight:700;display:flex}.eyebrow:before{content:"";opacity:.5;background:currentColor;width:2.5rem;height:1px}.lead{max-width:43rem;color:var(--ink-soft);font-size:clamp(1.08rem,1.6vw,1.3rem)}.section--ink .lead{color:#fafaf7ad}.button{border:1px solid var(--accent);background:var(--accent);min-height:3.65rem;color:var(--white);letter-spacing:.09em;text-transform:uppercase;justify-content:center;align-items:center;gap:.85rem;padding:.95rem 1.45rem;font-size:.74rem;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.button:hover{border-color:var(--accent-dark);background:var(--accent-dark);transform:translateY(-2px)}.button--light{border-color:var(--chalk);background:var(--chalk);color:var(--ink)}.button--light:hover{border-color:var(--mist);background:var(--mist)}.button--outline{color:currentColor;background:0 0;border-color:currentColor}.button--outline:hover{border-color:var(--ink);background:var(--ink);color:var(--white)}.section--ink .button--outline:hover{border-color:var(--chalk);background:var(--chalk);color:var(--ink)}.button>svg{flex:none;font-size:1rem;transition:transform .18s}.button:hover>svg{transform:translate(3px,-3px)}.text-link{letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:.75rem;min-height:2.75rem;font-size:.72rem;font-weight:700;display:inline-flex}.text-link svg{transition:transform .18s}.text-link:hover svg{transform:translate(4px)}.skip-link{z-index:100;background:var(--white);padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.js [data-reveal]{opacity:0;transition:opacity .68s,transform .68s cubic-bezier(.2,.7,.2,1);transform:translateY(1.6rem)}.js [data-reveal].is-visible{opacity:1;transform:none}.js [data-reveal-delay="1"]{transition-delay:90ms}.js [data-reveal-delay="2"]{transition-delay:.18s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}}@media (width<=720px){:root{--gutter:1.25rem;--section:4.75rem}body{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}h1{font-size:clamp(3.2rem,15vw,5rem)}h2{font-size:clamp(2.55rem,11.5vw,3.8rem)}.button{width:100%}}
