:root{--rm-ink:#193b3b;--rm-text:#243638;--rm-muted:#556568;--rm-accent:#a65132;--rm-paper:#f8f7f3;--rm-white:#fff;--rm-panel:#f0f4f1;--rm-rule:#d6dfda}.rm-action{isolation:isolate;width:320px;max-width:100%;height:64px;color:var(--rm-white);text-align:left;cursor:pointer;font-synthesis:none;background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;padding:10px 90px 10px 26px;font:500 16px/21px neue-haas-grotesk-text,sans-serif;text-decoration:none;display:inline-flex;position:relative}.rm-action-layer{z-index:-1;pointer-events:none;border:12px solid #0000;border-right-width:88px;border-image-slice:12 88 12 12 fill;border-image-width:12px 88px 12px 12px;border-image-repeat:stretch;position:absolute;inset:0}.rm-action-body{border-image-source:url(/_astro/action-body.Ep0dj60T.svg)}.rm-action-terminal{border-image-source:url(/_astro/action-terminal.zx7H33CJ.svg)}.rm-action-direction{width:24px;height:24px;position:absolute;top:20px;right:19px}.rm-action-direction svg{filter:brightness(0)invert();width:24px;height:24px}.rm-action:active .rm-action-terminal{transform:none!important}.rm-action:disabled{color:var(--rm-ink);cursor:default}.rm-action:disabled .rm-action-layer{opacity:.25}.rm-action:disabled .rm-action-direction{opacity:.4}.rm-action:disabled .rm-action-direction svg{filter:none}.rm-action:focus-visible,.rm-choice:has(input:focus-visible){outline:3px solid var(--rm-accent);outline-offset:4px}.rm-choice{isolation:isolate;cursor:pointer;min-height:220px;color:var(--rm-ink);font-synthesis:none;padding:28px;font:400 15px/23px neue-haas-grotesk-text,sans-serif;display:block;position:relative}.rm-choice:before{content:"";z-index:-1;border:40px solid #0000;border-width:40px 40px 12px 12px;border-image:url(/_astro/rm03_panel_shell.NtZxOcS9.svg) 40 40 12 12 fill/40px 40px 12px 12px;position:absolute;inset:0}.rm-choice input{width:18px;height:18px;accent-color:var(--rm-ink);margin:0;position:absolute;top:32px;right:32px}.rm-choice .rm-choice-icon{width:32px;height:32px;margin-bottom:22px;display:block}.rm-choice-icon svg{width:32px;height:32px}.rm-choice strong{margin-bottom:8px;padding-right:8px;font-size:18px;font-weight:500;line-height:24px;display:block}.rm-choice .rm-choice-description{color:var(--rm-muted);max-width:28ch;display:block}.rm-choice:has(input:checked):before{border-image-source:url(/_astro/rm03_panel_shell_checked.Dl-qj6vv.svg)}.rm-choice:has(input:disabled){cursor:default;opacity:.6}[data-rm-reduced=true] [data-rm-part]{transform:none!important}[data-rm-reduced=true] [data-rm-reveal]{stroke-dashoffset:0!important}@media (prefers-reduced-motion:reduce){[data-rm-part]{transform:none!important}[data-rm-reveal]{stroke-dashoffset:0!important}}:root{color-scheme:light;--color-canvas:var(--rm-paper);--color-ink:var(--rm-ink);--color-text:var(--rm-text);--color-muted:var(--rm-muted);--color-line:var(--rm-rule);--color-accent:var(--rm-accent);--color-panel:var(--rm-panel);--color-on-dark:var(--rm-paper);--font-body:"neue-haas-grotesk-text", Arial, sans-serif;--font-display:"neue-haas-grotesk-display", Arial, sans-serif;--content-width:77rem;--gutter:clamp(1.25rem, 5vw, 5rem)}*{box-sizing:border-box}html{scroll-padding-top:2rem}body{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-body);font-synthesis:none;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}::selection{background:var(--color-ink);color:var(--color-canvas)}a{color:inherit;text-underline-offset:.28em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--color-accent);outline-offset:5px}main:focus{outline:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.08}h1,h2{letter-spacing:-.035em}p{text-wrap:pretty}img,svg{max-width:100%;height:auto;display:block}.container{width:min(var(--content-width), calc(100% - var(--gutter) * 2));margin-inline:auto}.skip-link{z-index:10;background:var(--color-canvas);padding:.8rem 1rem;position:absolute;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.preview-notice{padding:.4rem var(--gutter);background:var(--color-panel);color:var(--color-muted);text-align:center;letter-spacing:.015em;font-size:.6875rem}.preview-notice span{padding-inline:.7em}.site-header{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:2rem;padding-block:1.7rem;display:flex}.wordmark{flex:none;display:block}.brand{width:234px;height:auto}.brand-compact{width:246px}nav{align-items:center;gap:clamp(1.3rem,2.7vw,2.75rem);display:flex}nav a{align-items:center;min-height:44px;font-size:.8125rem;text-decoration:none;display:inline-flex}nav a:hover{text-decoration:underline}.nav-contact{gap:1.4rem}.nav-contact span{color:var(--color-accent);font-size:1.1rem}.hero{grid-template-columns:1.2fr 1fr;align-items:stretch;gap:clamp(2rem,4vw,4.5rem);padding-block:4.5rem 4.75rem;display:grid}.eyebrow{font:500 .75rem/1.5 var(--font-body);color:var(--color-muted);letter-spacing:.015em;align-items:center;gap:.9rem;display:flex}.hero .eyebrow{margin-bottom:2rem}.accent-dash{background:var(--color-accent);flex-shrink:0;width:21px;height:2px;display:block}h1{font-size:clamp(3.7rem,5.7vw,5.45rem);line-height:1.015}.hero h1 span{color:var(--color-accent)}.introduction{max-width:41ch;color:var(--color-muted);margin-top:1.75rem;font-size:1.0625rem;line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.25rem 1.75rem;margin-top:2rem;display:flex}.rm-action{flex-shrink:0;width:288px}.rm-action:hover{text-decoration:none}.rm-action-direction img{width:24px;height:24px}.quiet-link{align-items:center;gap:1.3rem;min-height:44px;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.quiet-link:hover{text-decoration:underline}.hero-art{background:var(--color-panel);flex-direction:column;justify-content:space-between;min-width:0;padding:1.6rem 1.8rem 2rem;display:flex}.art-label{color:var(--color-muted);justify-content:space-between;gap:.75rem;font-size:.625rem;display:flex}.hero-field{width:calc(100% + 1rem);max-width:none;margin:1.5rem -.5rem}.art-footer{border-top:1px solid var(--color-line);justify-content:space-between;align-items:end;gap:1rem;padding-top:1.5rem;display:flex}.art-footer span{color:var(--color-muted);font-size:.75rem;line-height:1.6}.art-footer img{width:75px}.section-kicker{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-bottom:2rem;display:flex}.caption{color:var(--color-muted);font-size:.75rem}.expertise{padding-bottom:4.5rem}.services{border-top:1px solid var(--color-line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.services li{border-left:1px solid var(--color-line);overflow-wrap:anywhere;min-width:0;padding:1.75rem 1.75rem 0}.services li:first-child{border-left:0;padding-left:0}.services li:last-child{padding-right:0}.native-icon{width:32px;height:32px}.services h3{letter-spacing:-.01em;margin-top:1.5rem;font-size:1.25rem}.services p{color:var(--color-muted);max-width:28ch;margin-top:.75rem;font-size:.875rem;line-height:1.65}.section{border-top:1px solid var(--color-line);padding-block:5.75rem}.work{grid-template-columns:1fr 1.05fr;align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.section-number{color:var(--color-accent);font-variant-numeric:tabular-nums}h2{font-size:clamp(2.15rem,3.6vw,3.4rem)}.section-copy h2{max-width:16ch;margin-top:1.75rem}.lead{font-size:1.0625rem;line-height:1.7}.section-copy .lead{margin-top:1.75rem}.body-copy{color:var(--color-muted);margin-top:1rem;font-size:.9375rem}.technical-details{border-top:1px solid var(--color-line);margin-top:2rem}.technical-details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:52px;font-size:.8125rem;font-weight:500;list-style:none;display:flex}.technical-details summary::-webkit-details-marker{display:none}.technical-details summary span{color:var(--color-accent);font-size:1.3rem}.technical-details[open] summary span{transform:rotate(45deg)}.technical-details ul{color:var(--color-muted);margin:0;padding:.5rem 0 .5rem 1.2rem;font-size:.875rem}.technical-details li+li{margin-top:.65rem}.workflow{background:var(--color-panel);padding:1.75rem 2.25rem 2rem}.workflow-heading{border-bottom:1px solid var(--color-line);color:var(--color-muted);justify-content:space-between;gap:1rem;padding-bottom:1.25rem;font-size:.6875rem;display:flex}.workflow-steps{margin:0;padding:0;list-style:none}.workflow-steps li{grid-template-columns:30px 1fr;gap:1rem;padding-block:1.65rem;display:grid}.workflow-steps li+li{border-top:1px solid var(--color-line)}.step-index{color:var(--color-muted);padding-top:.4rem;font-size:.6875rem}.workflow .native-icon{width:24px;height:24px;margin-bottom:.75rem}.workflow h3{font-size:1.25rem}.workflow p{color:var(--color-muted);max-width:34ch;margin-top:.5rem;font-size:.8125rem}.workflow-decision{border-top:1px solid var(--color-line);align-items:center;gap:1rem;padding-top:1.5rem;display:flex}.decision-rule{background:var(--color-accent);width:3px;height:42px}.workflow-decision strong{font-size:.875rem;font-weight:500}.workflow-decision p{margin-top:.1rem}.approach-band{background:var(--color-ink);color:var(--color-on-dark);padding-block:4.75rem 5.25rem}.approach-band .eyebrow,.approach-band .section-number{color:#c3d2cb}.approach-heading{grid-template-columns:.65fr 1fr;align-items:start;gap:2rem;display:grid}.approach-heading .eyebrow{margin-top:.45rem}.approach-heading h2{font-weight:500}.approach{grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem;margin:3.5rem 0 0;padding:0;list-style:none;display:grid}.approach li{border-top:1px solid #577371;padding-top:1.1rem}.approach-index{color:#c3d2cb;font-size:.6875rem}.approach h3{margin-top:1.25rem;font-size:1.4rem;font-weight:500}.approach p{color:#c3d2cb;margin-top:.85rem;font-size:.875rem;line-height:1.7}.about{border-top:0;grid-template-columns:1fr 1.05fr;gap:clamp(3rem,7vw,7rem);padding-block:5rem;display:grid}.about h2{margin-top:1.75rem}.qualification{color:var(--color-muted);max-width:32ch;margin-top:1.1rem;font-size:.75rem;line-height:1.8}.qualification span{padding-inline:.45em}.about-copy .lead+.lead{color:var(--color-muted);margin-top:1.1rem}.contact{border-top:1px solid var(--color-line);grid-template-columns:1.1fr 1fr;gap:4rem;padding-block:4.75rem 5.5rem;display:grid}.contact h2{margin-top:1.5rem;font-size:clamp(2.5rem,4.7vw,4.5rem)}.contact-copy{padding-top:.25rem}.contact-copy .lead{max-width:40ch}.contact .rm-action{margin-top:1.75rem}.contact-address{overflow-wrap:anywhere;width:fit-content;max-width:100%;min-height:44px;padding-top:1.25rem;font-size:.875rem;display:block}.site-footer{border-top:1px solid var(--color-line);color:var(--color-muted);justify-content:space-between;align-items:center;gap:2rem;padding-block:1.75rem;display:flex}.footer-brand{flex-shrink:0}.footer-details{align-items:center;gap:2rem;font-size:.6875rem;display:flex}.footer-details a{align-items:center;min-height:32px;display:inline-flex}.not-found{min-height:65vh;padding-block:5rem}.not-found h1{max-width:15ch;margin-top:1.5rem}.not-found p:not(.eyebrow){max-width:50ch;color:var(--color-muted);margin-block:1.5rem 2rem}.prose{max-width:52rem;padding-block:3rem 5rem}.prose .eyebrow{margin-top:3rem}.prose h1{margin-top:1.5rem;font-size:clamp(2.4rem,4.5vw,4rem)}.prose h2{margin-top:2.25rem;font-size:1.7rem}.prose p{margin-top:1rem}.prose .lead{margin-top:2rem}.prose a{overflow-wrap:anywhere}@media (width<=1050px){.hero{grid-template-columns:1.2fr 1fr;gap:2rem}h1{font-size:clamp(3rem,5.7vw,4.3rem)}.hero-art{padding:1.2rem}.art-label span:last-child{display:none}.hero-actions{flex-direction:column;align-items:start;gap:.65rem}.services li{padding-inline:1.1rem}.services h3{font-size:1.15rem}.approach{gap:1.75rem}.footer-details{flex-direction:column;align-items:end;gap:.2rem}}@media (width<=760px){.site-header{flex-direction:column;align-items:start;gap:1.1rem;padding-block:1.25rem .65rem}.brand{width:215px}nav{justify-content:space-between;gap:.7rem;width:100%}nav a{font-size:.75rem}.nav-contact{gap:.5rem}.hero{grid-template-columns:1fr;gap:2.75rem;padding-block:2.75rem 3rem}h1{font-size:clamp(3rem,9.5vw,4.8rem)}.hero .eyebrow{gap:.6rem;margin-bottom:1.5rem;font-size:.6875rem}.introduction{max-width:38ch;margin-top:1.5rem;font-size:1rem}.hero-actions{flex-flow:wrap;align-items:center;gap:1rem 1.5rem;margin-top:1.75rem}.hero-art{padding:1.25rem}.art-label span:last-child{display:block}.hero-field{width:100%;max-width:400px;margin:1rem auto}.art-footer{padding-top:1rem}.art-footer img{width:62px}.section-kicker{flex-direction:column;align-items:start;gap:.5rem;margin-bottom:1.5rem}.services{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.services li{border-top:1px solid var(--color-line);padding:1.5rem 1.1rem 1.75rem}.services li:nth-child(odd){border-left:0;padding-left:0}.services li:nth-child(2n){padding-right:0}.services h3{margin-top:1.1rem;font-size:1.125rem}.services p{font-size:.8125rem}.expertise{padding-bottom:1.25rem}.work,.about,.contact{grid-template-columns:1fr;gap:2.5rem}.section{padding-block:3.25rem}.section-copy h2{max-width:18ch;margin-top:1.25rem}.workflow{padding:1.25rem 1.5rem 1.5rem}.approach-band{padding-block:3.25rem}.approach-heading{grid-template-columns:1fr;gap:1.5rem}.approach{grid-template-columns:1fr 1fr;gap:2rem 1.5rem;margin-top:2.5rem}.about{gap:1.75rem}.about h2{margin-top:1.25rem}.qualification{max-width:none}.contact{padding-block:3.25rem}.contact h2{margin-top:1.25rem;font-size:clamp(2.8rem,9vw,4rem)}.site-footer{flex-direction:column;align-items:start;gap:1.25rem;padding-block:1.5rem}.footer-details{flex-flow:wrap;justify-content:space-between;align-items:center;gap:.3rem 1rem;width:100%}.brand-compact{width:235px}}@media (width<=540px){.services{grid-template-columns:1fr}.services li,.services li:nth-child(2n),.services li:nth-child(odd){border-left:0;grid-template-columns:32px minmax(0,1fr);gap:0 1rem;padding:1.4rem 0;display:grid}.services .native-icon{grid-row:1/3}.services h3{margin-top:0;font-size:1.2rem}.services p{grid-column:2;max-width:none;margin-top:.65rem}}@media (width<=360px){.hero .eyebrow{font-size:.625rem}h1{font-size:2.8rem}.workflow{padding-inline:1.1rem}.workflow-steps li{grid-template-columns:20px 1fr;gap:.7rem}.approach{grid-template-columns:1fr;gap:1.75rem}.approach h3{margin-top:.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
