@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Newsreader:opsz,wght@6..72,500;6..72,600&display=swap";:root{--background: #f7f5f0;--surface: #ffffff;--text: #1a1a22;--muted: #666575;--purple: #7056c8;--green: #238b55;--orange: #e78619;--line: #ddd9e8}:root[data-theme=dark]{--background: #101015;--surface: #181820;--text: #f3f0ea;--muted: #aaa7b4;--purple: #8b6cff;--green: #9fe870;--orange: #ff9f1c;--line: #2a2934}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--text);font-family:IBM Plex Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;transition:background-color .18s ease,color .18s ease}a{color:inherit;text-decoration:none}.page{width:min(1120px,calc(100% - 3rem));margin:auto}.eyebrow,.label{color:var(--green);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0}.header-actions{display:flex;align-items:center;gap:1rem}.brand{font-family:Newsreader,Georgia,serif;font-size:1.6rem;font-weight:600;letter-spacing:-.03em}nav{display:flex;gap:1.25rem;color:var(--muted);font-size:1rem}nav a:hover,nav a:focus-visible{color:var(--green)}nav a[aria-current=page]{color:var(--orange)}.theme-toggle{display:grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--purple);cursor:pointer;font-size:1.15rem}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:var(--orange);color:var(--orange)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:4rem;align-items:center;min-height:68vh;padding:8rem 0}.hero-copy{max-width:760px;padding:2rem;border:1px solid var(--line);background:var(--surface)}.portrait{width:min(100%,300px);margin:0;border:3px solid var(--green);aspect-ratio:1;overflow:hidden;justify-self:end}.portrait img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.08)}h1,p{margin-top:0}h1{max-width:820px;margin-bottom:1.5rem;font-size:clamp(3.25rem,8vw,7rem);font-weight:700;letter-spacing:-.075em;line-height:.94}h1 em{color:var(--purple);font-style:normal}.intro{max-width:620px;color:var(--muted);font-size:clamp(1.05rem,2vw,1.3rem)}.inline-link{color:var(--purple);font-weight:700;text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.15em}.inline-link:hover,.inline-link:focus-visible{color:var(--green)}.welcome{margin-bottom:2rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600;letter-spacing:-.035em;line-height:1.1}.hero-intro,.mission{max-width:600px;margin-bottom:1.5rem;font-size:1.1rem}.page-intro{max-width:850px;padding:7rem 0 5rem}.page-intro h1{margin-bottom:1.5rem}.contact-form{display:grid;max-width:620px;gap:1.25rem;margin-top:2rem}.contact-form label{display:grid;gap:.5rem;font-weight:600}.contact-form input,.contact-form textarea{width:100%;padding:.8rem .9rem;border:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--text);font:inherit}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--purple);outline:2px solid var(--purple);outline-offset:2px}.button{display:inline-block;padding:.9rem 1.15rem;border:0;background:var(--orange);color:#1b1100;cursor:pointer;font-weight:700}.button:hover,.button:focus-visible{background:var(--purple);color:#fff}footer{display:flex;justify-content:space-between;padding:1.5rem 0 2.5rem;color:var(--muted);font-size:.95rem}@media(max-width:700px){.page{width:min(100% - 2rem,1120px)}nav{flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.header-actions{gap:.75rem}.hero{display:grid;grid-template-columns:1fr}.hero{min-height:auto;padding:4.5rem 0}.portrait{justify-self:start}.page-intro{padding:5rem 0 4rem}footer{flex-direction:column;gap:.75rem}}
