:root{--color-bg:#f5efe5;--color-surface:#ede3d5;--color-surface-raised:#e2d4c0;--color-text-primary:#221208;--color-text-secondary:#5c3d1e;--color-text-muted:#8c6a42;--color-accent:#6b5530;--color-moss:#4d5e34;--color-border:#22120824;--canvas-arm:#8b5e3c;--canvas-node:#c4894a;--canvas-bg:#f5efe5;--overlay-photo:#0000006b;--overlay-systems:#0009;--font-display:"Lora", Georgia, serif;--font-body:"Source Sans 3", system-ui, -apple-system, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.333rem;--text-xl:1.777rem;--text-2xl:2.369rem;--text-3xl:3.157rem;--text-4xl:4.209rem;--space-1:5px;--space-2:8px;--space-3:13px;--space-4:21px;--space-5:34px;--space-6:55px;--space-7:89px;--space-8:144px;--space-9:233px;--ease-organic:cubic-bezier(.25, .46, .45, .94);--ease-content-in:cubic-bezier(.16, 1, .3, 1);--dur-micro:.2s;--dur-panel:.7s;--dur-camera:1.1s;--max-prose:60ch;--max-heading:28ch;--chroma-offset:0px;--chroma-color-a:transparent;--chroma-color-b:transparent;--hero-img-opacity:1}html.dark{--color-bg:#04040a;--color-surface:#0a0a18;--color-surface-raised:#12122a;--color-text-primary:#ede9fa;--color-text-secondary:#a89ec8;--color-text-muted:#5a5478;--color-accent:#8a7ab8;--color-moss:#3a5240;--color-border:#8a7ab82e;--canvas-arm:#50bea8;--canvas-arm-edge:#8cf0d7;--canvas-node-core:#64d2b9;--canvas-node-glow:#3cb49b;--canvas-star:#dcd2f580;--canvas-bg:#04040a;--overlay-photo:#0404129e;--overlay-systems:#040412c2;--font-display:"Space Grotesk", system-ui, -apple-system, sans-serif;--chroma-offset:1px;--chroma-color-a:#6450b473;--chroma-color-b:#b4645059;--hero-img-opacity:1}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto;font-size:16px}html,body,#root{width:100%;height:100%}body.home-active,body.home-active #root{overflow:hidden}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;transition:background-color var(--dur-micro) var(--ease-organic), color var(--dur-micro) var(--ease-organic)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);font-weight:700;line-height:1.1}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{font-size:var(--text-base);color:var(--color-text-secondary);max-width:var(--max-prose);font-weight:500;line-height:1.65}.label{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}html.dark h1,html.dark h2{text-shadow:calc(-1 * var(--chroma-offset)) 0 var(--chroma-color-a), var(--chroma-offset) 0 var(--chroma-color-b)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}::selection{background-color:var(--color-accent);color:var(--color-bg)}.pillar-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr)}.contact-cols{gap:var(--space-5);flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;display:flex}.hide-mobile{display:block}@media (width<=640px){:root{--space-5:21px;--space-6:34px;--space-7:20px;--space-8:34px;--text-4xl:2.369rem;--text-3xl:1.555rem;--text-2xl:1.25rem;--text-xl:1.1rem}.pillar-grid{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(2,1fr)}.contact-cols{gap:var(--space-4);flex-direction:column}.contact-form-col{width:100%;min-width:0!important;max-width:none!important}.contact-detail-col{flex-wrap:wrap;text-align:left!important;gap:var(--space-4) var(--space-5)!important;flex-direction:row!important}.hide-mobile,.partner-pills{display:none}.stats-row{justify-content:flex-start!important;gap:var(--space-4)!important}.home-substatement{text-align:left!important;max-width:none!important;margin-left:0!important;padding-right:0!important}nav[aria-label=Section\ navigation]{right:8px}}.parallax-hero{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.parallax-hero__img{object-fit:cover;object-position:center;opacity:0;width:100%;height:112%;transition:opacity var(--dur-camera) var(--ease-organic), transform .5s var(--ease-organic);will-change:transform, opacity;position:absolute;inset:0;transform:scale(1.05)translateY(3%)}.parallax-hero__img--visible{opacity:var(--hero-img-opacity);transition:opacity var(--dur-camera) var(--ease-organic), transform 16s ease-out;transform:scale(1)translateY(-5%)}.parallax-hero__overlay{background:linear-gradient(to top, var(--overlay-photo) 0%, #00000014 50%, transparent 72%), linear-gradient(to bottom, #0003 0%, transparent 32%);transition:background var(--dur-micro) var(--ease-organic);position:absolute;inset:0}.parallax-hero~*{z-index:1;position:relative}@keyframes intro-letter-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes intro-line-in{0%{opacity:0;width:0}to{opacity:1;width:80px}}@keyframes intro-sub-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.intro-letter{opacity:0;animation-name:intro-letter-in;animation-duration:.8s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:both;display:inline-block}.intro-line{background:#ece8f538;width:0;height:1px;margin:1.75rem 0;animation-name:intro-line-in;animation-duration:.7s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:both}.intro-sub{opacity:0;animation-name:intro-sub-in;animation-duration:.7s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:both}
