:root{--ink:#14213d;--muted:#566070;--line:#dde4ee;--bg:#f7f9fc;--blue:#1f5f99;--blue-dark:#16466f;--white:#fff;--radius:18px;--shadow:0 18px 45px rgba(20,33,61,.10)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);line-height:1.6;background:#fff}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1120px,calc(100% - 32px));margin:0 auto}.skip-link{position:absolute;left:-999px;top:1rem;background:var(--ink);color:#fff;padding:.5rem 1rem;z-index:10}.skip-link:focus{left:1rem}.site-header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.brand{display:inline-flex;align-items:center;gap:.75rem;color:var(--ink)}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--blue);color:#fff;font-weight:800}.brand-logo{width:54px;height:54px;object-fit:contain;display:block;flex:0 0 auto}.brand small{display:block;color:var(--muted);font-size:.78rem}.site-nav{display:flex;align-items:center;gap:1rem;font-size:.95rem}.site-nav a{color:var(--ink);text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:1px}.site-nav a:hover{text-decoration-thickness:2px}.mobile-menu-toggle{display:none;align-items:center;gap:.45rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-weight:800;padding:.65rem .9rem;box-shadow:0 8px 20px rgba(20,33,61,.08);cursor:pointer}.mobile-menu-toggle:hover,.mobile-menu-toggle:focus-visible{border-color:var(--blue);color:var(--blue);outline:3px solid rgba(31,95,153,.15)}.menu-icon{font-size:1.1rem;line-height:1}.hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#eef5fb 0%,#fff 58%,#f8f3e6 100%);padding:84px 0}.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(247,249,252,.70) 0%,rgba(247,249,252,.52) 44%,rgba(247,249,252,.30) 100%),url("/assets/trees-hero.jpeg");background-size:cover;background-position:center;opacity:.92;z-index:-2}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(238,245,251,.28),rgba(255,255,255,.18) 58%,rgba(248,243,230,.22));z-index:-1}.compact-hero{padding:70px 0}.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:2rem;align-items:center}.eyebrow{margin:0 0 .8rem;color:var(--blue-dark);text-transform:uppercase;letter-spacing:.11em;font-size:.8rem;font-weight:800}h1,h2,h3{line-height:1.15;margin-top:0}h1{font-size:clamp(2.35rem,6vw,4.8rem);max-width:900px;letter-spacing:-.05em;margin-bottom:1rem}h2{font-size:clamp(1.7rem,3vw,2.6rem);letter-spacing:-.035em}h3{font-size:1.25rem}.lead{font-size:clamp(1.1rem,2vw,1.35rem);color:var(--muted);max-width:760px}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.8rem 1.1rem;border-radius:999px;border:1px solid var(--blue);font-weight:750;cursor:pointer}.button.primary{background:var(--blue);color:#fff}.button.secondary{background:#fff;color:var(--blue)}.button:hover{text-decoration:none;background:var(--blue-dark);color:#fff}.hero-card,.card,.contact-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.4rem}.hero-card ul{padding-left:1.2rem;margin-bottom:0;color:var(--muted)}.section{padding:72px 0}.section.muted{background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.three-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.three-card-grid.compact{margin-top:2rem}.card p,.service-row p,.prose p,.contact-card p{color:var(--muted)}.split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2.5rem;align-items:start}.content-narrow{max-width:820px}.service-list{display:grid;gap:1rem;margin-top:2rem}.service-row{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;padding:1.35rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,1fr);gap:2rem;align-items:start}.contact-form{display:grid;gap:.8rem;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.contact-form label{font-weight:750}input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:.85rem .9rem;font:inherit;color:var(--ink);background:#fff}input:focus,select:focus,textarea:focus{outline:3px solid rgba(31,95,153,.18);border-color:var(--blue)}.hidden{display:none}.site-footer{padding:44px 0 24px;background:#101827;color:#dbe5f2}.site-footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}.site-footer p{color:#b8c4d6;margin-bottom:0}.footer-bottom{margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);color:#aeb9c8}@media(max-width:900px){.header-inner{position:relative;min-height:68px;align-items:center;flex-direction:row;flex-wrap:wrap;padding:.75rem 0;gap:.75rem}.brand{min-width:0;flex:1}.brand-logo{width:48px;height:48px}.brand span{min-width:0}.brand strong{display:block;line-height:1.2}.brand small{font-size:.72rem;line-height:1.25}.mobile-menu-toggle{display:inline-flex}.site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:.5rem;padding:.45rem;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow);font-size:.98rem}.site-nav.is-open{display:flex}.site-nav a{display:block;padding:.85rem .95rem;border-radius:12px;text-decoration:underline;text-underline-offset:.22em}.site-nav a:hover,.site-nav a:focus-visible{background:var(--bg);outline:none}.hero-grid,.split,.contact-grid,.three-card-grid,.footer-grid{grid-template-columns:1fr}.hero{padding:56px 0}.section{padding:52px 0}.service-row{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.container{width:min(100% - 24px,1120px)}.brand small{display:none}.brand-logo{width:44px;height:44px}h1{font-size:2.25rem}}.netlify-recaptcha{margin:18px 0}.contact-form input:required,.contact-form select:required,.contact-form textarea:required{border-left:4px solid rgba(31,95,153,.45)}
.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(210px,.42fr);gap:2rem;align-items:center}.about-hero-grid.compact-headshot{grid-template-columns:minmax(0,1fr) 240px}.headshot-card{margin:0;background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.8rem;text-align:center;max-width:280px;justify-self:end}.headshot-card.small-headshot{max-width:240px}.headshot-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:13px}.headshot-card figcaption{margin-top:.65rem;color:var(--muted);font-weight:800;line-height:1.35}.headshot-card figcaption span{font-weight:600;font-size:.9rem}.about-copy h2{font-size:1.75rem;margin:0 0 .75rem}.about-copy h2:not(:first-child){margin-top:2.25rem}.about-copy h3{font-size:1.2rem;margin:1.4rem 0 .6rem}.about-copy p{font-size:1.08rem}.about-copy p:not(:last-child){margin-bottom:1.2rem}.founder-heading{padding:.9rem 1.1rem;border-left:4px solid var(--blue);background:#f7f9fc;border-radius:0 14px 14px 0;margin:.6rem 0 1.1rem}.founder-heading h3{margin:0}.founder-heading p{margin:.15rem 0 0;color:var(--muted);font-weight:700}.credential-list{padding-left:1.25rem;margin:1rem 0 1.35rem}.credential-list li{margin:.65rem 0}.experience-list li::marker,.technical-credentials li::marker{color:var(--blue)}@media (max-width:760px){.about-hero-grid,.about-hero-grid.compact-headshot{grid-template-columns:1fr}.headshot-card,.headshot-card.small-headshot{max-width:220px;justify-self:start}.about-copy p{font-size:1rem}.about-copy h2{font-size:1.5rem}}.captcha-helper{margin:1rem 0 .5rem;color:var(--muted);font-weight:700}.form-error{display:none;margin:.75rem 0 1rem;padding:.85rem 1rem;border:1px solid #f2b8b5;border-left:4px solid #b42318;border-radius:12px;background:#fff4f2;color:#8a1f17;font-weight:800}.form-error.is-visible{display:block}.contact-form .button[type="submit"]{margin-top:.5rem}
