:root{--aqua:#a2dad6;--ink:#16302e;--mist:#f4f8f7;--line:#c9dedb;--lagoon:#1a6a61;--deep:#102826;--tide:#9ebdb8;--display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", sans-serif;--sans:"Instrument Sans", "Avenir Next", "Segoe UI", sans-serif;--wrap:min(68rem, calc(100% - 2.5rem));--title-col:minmax(12rem, 16rem);--body-col:minmax(0, 38rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--mist);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1.125rem;font-weight:400;line-height:1.55}img{max-width:100%;height:auto}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--lagoon);outline-offset:3px}::selection{background:var(--aqua);color:var(--ink)}.skip{z-index:2;background:var(--mist);color:var(--ink);padding:.45rem .7rem;position:absolute;top:1rem;left:1rem;transform:translateY(-200%)}.skip:focus{transform:none}@media (width>=800px){:root{--wrap:min(68rem, calc(100% - 6rem))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.seal{width:3.25rem;height:3.25rem;display:block}.seal.large{width:4rem;height:4rem}.site-header{width:var(--wrap);flex-wrap:wrap;align-items:center;gap:.75rem 2rem;margin-inline:auto;padding-block:1.25rem .25rem;display:flex}.brand{color:var(--ink);align-items:center;gap:.7rem;text-decoration:none;display:flex}.brand:hover .wordmark{color:var(--lagoon)}.wordmark{font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.03em;font-size:1.7rem;font-weight:600;line-height:1}.site-header nav{flex-wrap:wrap;gap:.35rem 1.35rem;margin-left:auto;display:flex}.site-header nav a{color:var(--ink);text-underline-offset:.28em;font-size:1.02rem;font-weight:500;text-decoration:none}.site-header nav a:hover{color:var(--lagoon);text-decoration:underline}.hero,.services,.about,.contact-inner{width:var(--wrap);margin-inline:auto}.hero{padding-block:3.25rem 1.25rem}.principal{font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.02em;margin:0 0 .9rem;font-size:clamp(1.35rem,1rem + 1.2vw,1.85rem);font-weight:500;line-height:1.15}h1{max-width:12em;font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(2.45rem,1.15rem + 4.4vw,4.25rem);font-weight:600;line-height:1.06}.lead{max-width:36rem;margin:1.5rem 0 0;font-size:1.2rem;line-height:1.5}.services{padding-block:2.25rem .25rem}.service-list{margin:0;padding:0;list-style:none}.service{gap:.65rem;padding-block:1.55rem;display:grid;position:relative}.rule{background:var(--line);pointer-events:none;height:1px;position:absolute;top:0;left:0;right:0}.rule.bottom{top:auto;bottom:0}h2{font-family:var(--sans);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:500;line-height:1.2}.service p,.about p{max-width:38rem;margin:0}.about{padding-block:3rem 4.5rem}.about h2{margin-bottom:.75rem}.contact{background:var(--deep);color:var(--mist);scroll-margin-top:1.5rem}.contact-inner{padding-block:3.5rem 2.25rem}.contact h2{font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.03em;margin:1.2rem 0 .65rem;font-size:clamp(2rem,1.2rem + 2vw,2.75rem);font-weight:600;line-height:1.05}.email{color:var(--aqua);font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.02em;text-underline-offset:.18em;margin-top:1.15rem;font-size:clamp(1.45rem,1rem + 1.6vw,2.05rem);font-weight:500;line-height:1.2;text-decoration-thickness:1px;display:inline-block}.email:hover{color:var(--mist)}.contact :focus-visible{outline-color:var(--aqua)}.legal{color:var(--tide);margin:3rem 0 0;font-size:.95rem}#services,#about{scroll-margin-top:1.5rem}@media (width<=540px){.site-header nav{flex-basis:100%;margin-left:0}}@media (width>=800px){.hero{padding-block:5.25rem 1.75rem}.service,.about{grid-template-columns:var(--title-col) var(--body-col);align-items:baseline;column-gap:3rem;display:grid}.service{padding-block:1.9rem}.about{padding-block:3.25rem 5.5rem}.about h2{margin-bottom:0}}@media (prefers-reduced-motion:reduce),(scripting:none){.seal,.wordmark,.site-header nav,.principal,.hero h1,.lead,.rule,.service h2,.service p,.about h2,.about p,.contact h2,.contact-inner>p,.email{opacity:1!important;transform:none!important}}
