@font-face{font-family:Funnel;src:url(/fonts/FunnelDisplay-VariableFont_wght.ttf)format("truetype");font-weight:300 800;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-VariableFont_wght.ttf)format("truetype");font-weight:200 800;font-display:swap}:root{--forest:#014125;--emerald:#006837;--teal:#85c39a;--pastel:#d5f0de;--accent:#0bde7a;--white:#fff;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:40px;--space-xl:64px;--space-2xl:96px;--radius-control:6px;--radius-card:12px;--radius-photo:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{color:var(--forest);background:#fff;margin:0;font-family:Manrope,sans-serif;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:5px}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3{letter-spacing:-.035em;margin:0;font-family:Funnel,sans-serif;line-height:1.08}h1{letter-spacing:-.045em;font:800 80px/.95 Funnel,sans-serif}h2{font-size:56px;font-weight:700}h3{font-size:32px;font-weight:600}p{margin:16px 0}svg{flex-shrink:0}img{object-fit:contain;max-width:100%}::selection{background:var(--pastel);color:var(--forest)}:focus-visible,.state-focus{outline:3px solid var(--forest);outline-offset:5px}.dark :focus-visible,.dark .state-focus{outline-color:#fff}.skip-link{background:var(--forest);color:#fff;z-index:10;padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}main{min-width:0;max-width:1360px;padding:56px clamp(24px,4vw,64px) 24px}section{border-top:1px solid #b7cebf;padding:56px 0 64px;scroll-margin-top:24px}.white{color:var(--forest);--action:var(--emerald);--action-text:white;--hover:var(--forest);--line:var(--forest);background:#fff}.pastel{background:var(--pastel);color:var(--forest);--action:var(--forest);--action-text:white;--hover:var(--emerald);--line:var(--forest)}.dark{background:var(--emerald);color:#fff;--action:var(--accent);--action-text:var(--forest);--hover:var(--pastel);--line:white}.button{background:var(--action,var(--emerald));height:62px;min-height:62px;color:var(--action-text,white);white-space:normal;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:6px 16px 6px 24px;font-size:16px;font-weight:500;transition:background-color .18s,color .18s;display:inline-flex}.button-icon{border:1px solid;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.button:hover,.button.state-hover{background:var(--hover,var(--forest))}.button.secondary{color:inherit;background:0 0;border-color:currentColor;border-radius:6px;padding:6px 16px 6px 24px}.button.secondary .button-icon{border:0;width:24px}.button.secondary:hover,.button.secondary.state-hover{background:var(--forest);color:#fff}.dark .button.secondary:hover,.dark .button.secondary.state-hover{background:var(--pastel);color:var(--forest)}.button:disabled{color:inherit;opacity:.55;background:0 0;border:1px dashed}.button.accent{background:var(--accent);color:var(--forest);border-color:var(--forest)}.button.accent:hover{background:#fff}.caption{font-size:13px;line-height:1.5}code{font-size:12px}.action-link{align-items:center;gap:12px;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.action-link:hover{text-decoration:underline}.action-link svg{transition:transform .18s}.action-link:hover svg{transform:translate(2px,-2px)}.navigation{color:var(--forest);background:#fff;border:1px solid #b7cebf;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.desktop-links{align-items:center;gap:24px;font-size:13px;display:flex}.desktop-links>a{text-decoration:none}.desktop-links>a:hover{text-decoration:underline}.menu-toggle{width:44px;height:44px;color:inherit;background:0 0;border:1px solid;border-radius:6px;justify-content:center;align-items:center;display:none}.mobile-links{width:100%}.mobile-links:not([hidden]){gap:4px;display:grid}.mobile-links a{padding:12px 0}.compact .desktop-links{display:none}.compact .menu-toggle{display:flex}.service-card{background:var(--pastel);border-radius:12px;padding:28px}.card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-top .caption{font-size:9px}.service-card h3{margin-top:40px}.service-card p{font-size:14px}.service-card .action-link{font-size:13px}@media (max-width:1200px){.desktop-links{gap:16px}.navigation{padding:16px}.desktop-links .action-link{font-size:11px}h1{font-size:64px}h2{font-size:44px}h3{font-size:28px}}@media (max-width:900px){main{padding-top:40px}.desktop-links{display:none}.menu-toggle{display:flex}}@media (max-width:600px){h1{font-size:46px}h2{font-size:36px}h3{font-size:26px}section{padding:36px 0 40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.button{--button-icon-bg:var(--accent);--button-icon-fg:var(--forest);--button-focus:var(--action-text,var(--white))}.dark .button.primary,.button.accent{--button-icon-bg:var(--forest);--button-icon-fg:var(--white);--button-focus:var(--forest)}.button.secondary{--button-icon-bg:var(--accent);--button-icon-fg:var(--forest);--button-focus:var(--forest)}.dark .button.secondary,.button.secondary:hover,.button.secondary.state-hover{--button-focus:var(--white)}.dark .button.primary:hover,.dark .button.primary.state-hover,.button.accent:hover,.button.accent.state-hover{--button-icon-bg:var(--accent);--button-icon-fg:var(--forest)}.dark .button.secondary:hover,.dark .button.secondary.state-hover{--button-focus:var(--forest)}.button .button-icon{background:var(--button-icon-bg);color:var(--button-icon-fg);border:0}.button:focus-visible,.button.state-focus{border-color:var(--button-focus);outline:3px solid var(--button-focus);outline-offset:-3px}.button:is(.primary,.accent):not(:disabled){border-color:#0000}.button:is(.primary,.accent):not(:disabled):is(:focus-visible,.state-focus){outline:none;text-decoration:none}@media (forced-colors:active){.button:focus-visible,.button.state-focus{outline-color:highlight}.button .button-icon{border:1px solid buttontext}}.button.secondary .button-icon{height:24px}.button{line-height:1.25}.button-label{text-box-trim:trim-both;text-box-edge:cap alphabetic}.white .button:not(:disabled):hover,.white .button.state-hover:not(:disabled){--button-icon-bg:var(--white)}.pastel .button:not(:disabled):hover,.pastel .button.state-hover:not(:disabled){--button-icon-fg:var(--white)}
