*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--surface);color:var(--text);font:400 16px/1.65 var(--font-body);overflow-x:hidden;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img,svg{display:block;max-width:100%}address{font-style:normal}main{overflow:hidden}.container{width:min(var(--container),calc(100% - 80px));margin-inline:auto}.section{padding:clamp(92px,10vw,152px) 0}.skip-link{position:fixed;z-index:100;top:8px;left:8px;background:#fff;color:var(--primary-dark);padding:10px 16px;transform:translateY(-150%)}.skip-link:focus{transform:none}h1,h2,h3{font-family:var(--font-display);font-weight:650;letter-spacing:-.052em;line-height:1.02;margin:0}h1{font-size:clamp(3.4rem,6.7vw,6.9rem)}h2{font-size:clamp(2.7rem,5vw,5rem)}h3{font-size:1.65rem}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}p{margin:0}.lead{font-size:clamp(1.08rem,1.5vw,1.32rem);line-height:1.6;color:var(--text-muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
