:root{--green: #4D6761;--green-dark: #3B514C;--green-pale: #E6ECE9;--plate: #C9D5D0;--hero-bg: #F1F1EC;--green-line: #8DA9A1;--bone: #F8F5EE;--white: #FFFFFF;--ink: #1F2A27;--ink-soft: #3A4643;--display: "Fraunces", Georgia, serif;--label: Optima, "Optima nova", "Optima LT Std", Belleza, Candara, sans-serif;--body: "Source Sans 3", "Source Sans Pro", system-ui, sans-serif;--wrap: 1160px;--bar-h: 56px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{margin:0;font-family:var(--display);color:var(--ink);text-wrap:balance}p{margin:0 0 1rem}img{max-width:100%;height:auto;display:block}a{color:inherit}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px;width:100%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:-999px;top:0;background:var(--green);color:var(--bone);padding:10px 16px;z-index:200}.skip-link:focus{left:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.logo{display:block;background:currentColor;-webkit-mask:var(--src) center / contain no-repeat;mask:var(--src) center / contain no-repeat}.logo-mark{--src: url(/brand/logo-mark.svg);aspect-ratio:1}.logo-word{--src: url(/brand/logo-word.svg);aspect-ratio:506 / 97}.label{font-family:var(--label);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin:0 0 14px}.h1,.h2{font-weight:370;font-variation-settings:"SOFT" 0,"opsz" 72;letter-spacing:-.01em;transition:font-variation-settings 1.4s ease,font-weight 1.4s ease}.h1.is-soft,.h2.is-soft{font-weight:420;font-variation-settings:"SOFT" 100,"opsz" 72}@media(prefers-reduced-motion:reduce){.h1,.h2{transition:none;font-weight:420;font-variation-settings:"SOFT" 100,"opsz" 72}}.h1{font-size:36px;line-height:1.08}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:999px;border:0;background:var(--green);color:var(--bone);text-decoration:none;cursor:pointer;font-family:var(--body);font-weight:600;font-size:18px;letter-spacing:.01em}.btn:hover{background:var(--green-dark)}.btn:focus-visible,.map-link:focus-visible,.topbar-call:focus-visible{outline:3px solid var(--green);outline-offset:3px}.topbar{position:relative;z-index:3}.topbar-in{display:flex;align-items:center;justify-content:space-between;height:var(--bar-h)}.brand{display:flex;align-items:center;gap:9px;color:var(--green)}.brand-mark{width:32px}.brand-word{width:118px}.topbar-call{font-family:var(--label);font-size:15px;letter-spacing:.08em;color:var(--green);text-decoration:none;padding:12px 0}.seal-hero{position:relative;overflow:hidden;background:var(--hero-bg);border-bottom:1px solid var(--green-line);margin-top:calc(-1 * var(--bar-h));padding-top:var(--bar-h)}.caustics{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 40%,#000 58%,#000 86%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,transparent 40%,#000 58%,#000 86%,transparent 100%)}@media(min-width:900px){.caustics{-webkit-mask-image:linear-gradient(to right,transparent 0,transparent 46%,#000 66%),linear-gradient(to bottom,#000 0,#000 72%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,transparent 46%,#000 66%),linear-gradient(to bottom,#000 0,#000 72%,transparent 100%);mask-composite:intersect}}.hero-turtle{width:260px;flex:none;color:var(--green)}.hero-turtle svg{display:block;width:100%;height:auto;overflow:visible}.turtle-art{fill:currentColor}.turtle-lines path{fill:none;stroke:currentColor;stroke-width:.5;stroke-linejoin:round;opacity:0}.plates path{fill:var(--green-line);opacity:.42}.hero-turtle.is-drawing .turtle-lines path{opacity:1;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:turtle-draw 2s cubic-bezier(.45,0,.25,1) .15s forwards,turtle-fade .5s ease 2.05s forwards}.hero-turtle.is-drawing .turtle-art{fill-opacity:0;animation:turtle-ink .6s ease 1.8s forwards}.hero-turtle.is-drawing .plates path{opacity:0;animation:plate-in .5s ease forwards;animation-delay:calc(2.4s + var(--i) * .12s)}@keyframes turtle-draw{to{stroke-dashoffset:0}}@keyframes turtle-fade{to{opacity:0}}@keyframes turtle-ink{to{fill-opacity:1}}@keyframes plate-in{to{opacity:.42}}@media(prefers-reduced-motion:reduce){.hero-turtle.is-drawing .turtle-lines path{animation:none;opacity:0}.hero-turtle.is-drawing .turtle-art{animation:none;fill-opacity:1}.hero-turtle.is-drawing .plates path{animation:none;opacity:.42}}.meet{position:relative;background:var(--bone);padding:64px 0}.meet:before{content:"";position:absolute;left:50%;top:0;width:18px;height:16px;transform:translate(-50%,-50%);background:var(--green);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.meet-in{display:flex;flex-direction:column;gap:28px}.meet-photo{margin:0;width:min(300px,100%)}.meet-photo img{width:100%;aspect-ratio:530 / 882;object-fit:cover;border-radius:12px;background:var(--green-pale)}.h2{font-size:32px;line-height:1.1;margin-bottom:18px}.meet-quote{margin:0 0 18px}.meet-quote p{margin:0;font-family:var(--display);font-weight:350;font-variation-settings:"SOFT" 60,"opsz" 36;font-size:24px;line-height:1.38;color:var(--ink)}.meet-name{margin:0;color:var(--ink-soft)}.ph{font-family:var(--label);font-size:.82em;letter-spacing:.04em;color:var(--green);background:var(--green-pale);padding:1px 7px;border-radius:4px;white-space:nowrap}.seal-hero-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:18px;padding-top:6px;padding-bottom:40px}.seal-text{width:100%}.seal-lede{color:var(--ink-soft);margin:12px 0 18px;max-width:32rem}.seal-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.seal-actions .btn{width:100%}.map-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.map-link svg{width:18px;height:18px;flex:none}.seal{--photo: 240px;position:relative;width:calc(var(--photo) * 1.278);aspect-ratio:1;flex:none}.seal-ring,.seal-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.seal-ring{animation:seal-turn 60s linear infinite;will-change:transform}.seal-ring-text{font-family:var(--label);font-size:17px;letter-spacing:.1em;fill:var(--green)}.seal-line circle{fill:none;stroke:var(--green);stroke-width:1.4;opacity:.55}.seal-photo{position:absolute;left:50%;top:50%;width:var(--photo);height:var(--photo);transform:translate(-50%,-50%);border-radius:50%;object-fit:cover;background:#1b1b1b}@keyframes seal-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.seal-ring{animation:none}}@media(min-width:900px){:root{--bar-h: 72px}body{font-size:19px}.wrap{padding:0 40px}.brand-mark{width:42px}.brand-word{width:160px}.h1{font-size:56px;line-height:1.05}.label{font-size:14px}.seal-hero-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:64px;align-items:center;min-height:min(660px,calc(100svh - var(--bar-h) - 150px));padding-top:16px;padding-bottom:28px}.seal-text{max-width:560px}.seal-lede{margin:18px 0 28px;font-size:20px}.seal-actions{flex-direction:row;align-items:center;gap:24px;flex-wrap:wrap}.seal-actions .btn{width:auto}.hero-turtle{width:420px;justify-self:center}.meet{padding:72px 0 112px}.meet-in{display:grid;grid-template-columns:380px minmax(0,1fr);gap:80px;align-items:center}.meet-photo{width:380px}.h2{font-size:44px}.meet-quote p{font-size:32px}}.services{background:var(--green-pale);padding:64px 0 72px}.svc-h2{max-width:20ch}.svc-map{--W: min(140px, calc((100vw - 24px) / 2.8));--H: calc(var(--W) * .866);position:relative;width:calc(var(--W) * 2.5);height:calc(var(--H) * 4);margin:calc(var(--W) * .3) auto 0;padding-bottom:0}.svc-rim{position:absolute;left:calc(var(--W) * -.2);top:calc(var(--W) * -.2);width:calc(var(--W) * 2.9);height:calc(var(--H) * 4 + var(--W) * .4);overflow:visible}.svc-rim ellipse{fill:none;stroke:var(--green);stroke-width:1.5;opacity:.5}.cell{--hex: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);position:absolute;left:0;top:0;width:var(--W);aspect-ratio:200 / 173.2;padding:0;border:0;cursor:pointer;transform:translate(calc(var(--cx) * var(--W)),calc(var(--cy) * var(--H)));clip-path:var(--hex);background:var(--green-line);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--ink);-webkit-tap-highlight-color:transparent}.cell:before{content:"";position:absolute;inset:1.5px;clip-path:var(--hex);background:var(--bone)}.cell span{position:relative;padding:0 9%;font-family:var(--body);font-weight:600;font-size:15px;line-height:1.18}.cell.lead{background:var(--green)}.cell.lead:before{background:var(--green)}.cell.lead span{color:var(--bone);font-size:16px}.cell[aria-expanded=true]{background:var(--green-dark)}.cell[aria-expanded=true]:before{background:var(--green-dark)}.cell[aria-expanded=true] span{color:var(--bone)}.cell:focus-visible{outline:none;background:var(--ink)}.cell:focus-visible:before{inset:5px}@media(hover:hover){button.cell:not(.lead):not([aria-expanded=true]):hover:before{background:var(--white)}}.cell.cell-blank{background:var(--plate);pointer-events:none;cursor:default}.cell.cell-blank:before{display:none}.cell-detail{border-top:1px solid var(--green-line);padding-top:18px;position:absolute;left:calc(50% - ((100vw - 40px)/2));top:calc(var(--H) * 4 + var(--W) * .35);width:calc(100vw - 40px);margin:0}.cell-detail p{margin:0}.cell-detail-name{font-family:var(--display);font-weight:420;font-variation-settings:"SOFT" 100,"opsz" 36;font-size:24px;line-height:1.2;margin-bottom:6px!important;color:var(--green-dark)}.cell-detail p:last-child{color:var(--ink-soft)}.services .wrap{padding-bottom:250px}@media(min-width:900px){.services{padding:112px 0 120px}.services .wrap{position:relative;padding-bottom:0}.svc-head{position:absolute;top:0;left:calc(50% + 120px);width:400px;z-index:1}.svc-h2{font-size:40px}.svc-map{--W: 200px;--H: 173.2px;width:1000px;max-width:100%;height:693px;margin:0 auto}.cell span{font-size:18px;padding:0 18%}.cell.lead span{font-size:21px}.cell-detail{left:620px;top:300px;width:380px;padding-top:24px}.cell-detail-name{font-size:34px;margin-bottom:12px!important}.cell-detail p:last-child{font-size:20px}.js .cell{transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity .7s ease;transition-delay:calc(var(--i) * 70ms)}.js .svc-map.is-waiting .cell{transform:translate(calc(var(--cx) * var(--W) + var(--sx)),calc(var(--cy) * var(--H) + var(--sy))) rotate(var(--sr));opacity:0}.js .svc-rim ellipse{stroke-dasharray:2050;stroke-dashoffset:0;transition:stroke-dashoffset 1.2s ease .9s}.js .svc-map.is-waiting .svc-rim ellipse{stroke-dashoffset:2050;transition:none}.js .svc-map.is-waiting .cell-detail{opacity:0}.js .cell-detail{transition:opacity .5s ease 1.2s}}@media(min-width:900px)and (prefers-reduced-motion:reduce){.js .cell,.js .svc-rim ellipse,.js .cell-detail{transition:none}.js .svc-map.is-waiting .cell{transform:translate(calc(var(--cx) * var(--W)),calc(var(--cy) * var(--H)));opacity:1}.js .svc-map.is-waiting .svc-rim ellipse{stroke-dashoffset:0}.js .svc-map.is-waiting .cell-detail{opacity:1}}.hex{display:inline-block;width:14px;height:12px;background:var(--green);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.different{background:var(--bone);padding:64px 0}.diff-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:28px}.diff-list li{border-top:1px solid var(--green-line);padding-top:20px}.diff-list .hex{margin-bottom:12px}.diff-list h3{font-weight:420;font-variation-settings:"SOFT" 100,"opsz" 30;font-size:24px;line-height:1.2;margin-bottom:8px}.diff-list p{margin:0;color:var(--ink-soft)}.diff-planned{margin:36px 0 0;color:var(--ink-soft)}.diff-planned strong{color:var(--ink);font-weight:600}.join{background:var(--green-pale);padding:64px 0 56px}.join-in{display:grid;gap:24px}.join-offer{margin:0;font-size:20px;color:var(--ink)}.join-offer-note{margin:6px 0 0;font-size:15px;color:var(--ink-soft)}.jf-form{background:var(--bone);border-radius:12px;padding:24px 20px}.preview-form .field{margin-bottom:18px}.preview-form label{display:block;font-weight:600;margin-bottom:6px}.preview-form input[type=text],.preview-form input[type=email],.preview-form input[type=tel]{display:block;width:100%;min-height:52px;padding:10px 14px;font:inherit;font-size:19px;color:var(--ink);background:var(--white);border:1.5px solid #7E938D;border-radius:8px;-webkit-appearance:none;appearance:none}.preview-form input:focus{outline:3px solid var(--green);outline-offset:1px;border-color:var(--green)}.preview-form fieldset{border:0;padding:0;margin:6px 0 20px;min-width:0}.preview-form legend{font-weight:600;margin-bottom:6px}.preview-form .chk{display:flex;align-items:center;gap:12px;min-height:48px;font-weight:400;margin:0;cursor:pointer}.preview-form .chk input{width:24px;height:24px;margin:0;flex:none;accent-color:var(--green)}.jf-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:0 28px;border:0;border-radius:999px;background:var(--green);color:var(--bone);font:inherit;font-weight:600;font-size:18px;cursor:pointer}.jf-btn:hover{background:var(--green-dark)}.jf-btn:focus-visible{outline:3px solid var(--green);outline-offset:3px}.form-status{margin:16px 0 0;font-weight:600;color:var(--green-dark)}.form-status:empty{display:none}.hiring{margin-top:40px;margin-bottom:0;color:var(--ink-soft)}.hiring strong{color:var(--ink);font-weight:600}.site-footer{background:var(--bone);border-top:1px solid var(--green-line);padding:48px 0 calc(112px + env(safe-area-inset-bottom));text-align:center;color:var(--ink-soft)}.footer-mark{width:40px;margin:0 auto 12px;color:var(--green)}.footer-name{font-family:var(--label);letter-spacing:.2em;text-transform:uppercase;font-size:14px;color:var(--green);margin-bottom:8px}.site-footer p{margin:0 0 6px}.footer-links{display:flex;justify-content:center;gap:24px;margin-top:10px!important}.footer-links a{color:var(--green);font-weight:600;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}.line-turtle{display:none;position:absolute;top:0;right:1px;width:22px;z-index:5;color:var(--green);pointer-events:none;will-change:transform}@media(min-width:900px){.line-turtle{width:38px;right:max(2px,calc((100vw - 1080px)/4 - 19px))}}@media(min-width:1280px){.line-turtle{width:64px;right:max(8px,calc((100vw - 1080px)/4 - 32px))}}.line-turtle.is-on{display:block}.line-turtle svg{display:block;width:100%;height:auto}.line-turtle path{fill:currentColor}@media(prefers-reduced-motion:reduce){.line-turtle{display:none!important}}.sticky-join{display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:20;align-items:center;justify-content:center;min-height:54px;border-radius:999px;background:var(--green);color:var(--bone);font-weight:600;font-size:18px;text-decoration:none;box-shadow:0 8px 24px -10px #1f2a278c}.sticky-join.is-on{display:flex}.sticky-join:focus-visible{outline:3px solid var(--ink);outline-offset:3px}@media(min-width:900px){.different{padding:112px 0}.diff-list{grid-template-columns:repeat(3,1fr);gap:40px;margin-top:48px}.join{padding:112px 0 88px}.join-in{grid-template-columns:minmax(0,1fr) 520px;gap:80px;align-items:start}.jf-form{padding:36px}.jf-form fieldset{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.jf-form fieldset legend{grid-column:1 / -1}.jf-btn{width:auto}.hiring{margin-top:56px}.site-footer{padding-bottom:56px}.sticky-join{display:none!important}}
