:root{--teal:#006d77;--teal-dark:#244234;--gold:#ffbd59;--accent:#6bcb5b;--cream:#dde5e2;--ink:#244234;--muted:#4d5f57;--border:#c9d3cf;--max-width:1300px;--gold-ink:#8a6414;--font-heading:"Montserrat", sans-serif;--font-subheading:"Inter", sans-serif;--font-body:"Poppins", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--cream);color:var(--ink);margin:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;text-wrap:balance;line-height:1.2}h1{font-size:clamp(1.75rem,4.5vw,2.6rem)}h2{font-size:clamp(1.35rem,3vw,1.75rem)}nav,.eyebrow,.footer-col h3{font-family:var(--font-subheading)}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.wrap{max-width:var(--max-width);margin:0 auto;padding:0 20px}.skip-link{background:var(--gold);color:var(--teal-dark);z-index:1000;padding:10px 16px;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}a{color:inherit}.btn{border-radius:6px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,background-color .15s;display:inline-block}.btn-primary{background:var(--gold);color:var(--teal-dark)}.btn-ghost{color:var(--teal);border:1.5px solid var(--teal);background:0 0;align-items:center;gap:8px;display:inline-flex}.btn-ghost:hover{background:var(--teal);color:#fff}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.btn:active{transform:translateY(0)}a{transition:color .15s}.service-card,.impact-card,.info-card,.cross-link,.post-card,.project-card{transition:transform .18s,box-shadow .18s}.service-card:hover,.impact-card:hover,.cross-link:hover,.post-card:hover,.project-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #00000014}.site-header{background:var(--teal);color:#fff;z-index:100;border-bottom:2px solid var(--gold);position:sticky;top:0}.header-inner{flex-wrap:wrap;align-items:center;gap:16px;padding:12px 20px;display:flex}.main-nav{order:2}.logo-link{background:#fff;border-radius:6px;order:1;padding:4px 8px;line-height:0;display:inline-flex}.logo{width:auto;height:38px;display:block}.nav-toggle-input{display:none}.nav-toggle-label{cursor:pointer;flex-direction:column;justify-content:center;gap:5px;padding:6px;display:none}.nav-toggle-label span{background:#fff;border-radius:2px;width:26px;height:3px}.main-nav{flex:1;margin-left:24px}.main-nav ul{flex-wrap:wrap;gap:22px;margin:0;padding:0;list-style:none;display:flex}.main-nav>ul>li{padding:8px 0;position:relative}.main-nav a,.main-nav span{color:#fff;cursor:pointer;font-size:.95rem;text-decoration:none}.has-children .submenu{background:#fff;border-radius:8px;min-width:260px;margin:0;padding:6px 0;list-style:none;display:none;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 8px 24px #00000026}.has-children:hover .submenu,.has-children:focus-within .submenu{display:block}.submenu li{padding:0}.submenu a{color:var(--teal-dark);padding:10px 16px;font-size:.9rem;display:block}.submenu a:hover{background:var(--cream)}.header-cta{white-space:nowrap;margin-left:auto}.header-hiring{white-space:nowrap;color:var(--gold);font-family:var(--font-subheading);border:1px solid var(--gold);border-radius:8px;order:3;padding:8px 14px;font-size:.85rem;font-weight:600;text-decoration:none;transition:background-color .18s,color .18s}.header-hiring:hover{background:var(--gold);color:var(--teal-dark)}.header-cta{order:4}.hiring-strip{display:none}@media (width<=860px){.site-header{position:relative}.header-inner{gap:10px}.nav-toggle-label{flex:none;order:3;display:flex}.logo{height:34px}.header-hiring{display:none}.header-cta{order:2;margin-left:auto;padding:8px 14px;font-size:.82rem}.hiring-strip{background:var(--teal-dark);border-bottom:2px solid var(--gold);text-align:center;padding:10px 20px;text-decoration:none;display:block}.hiring-strip strong{color:var(--gold);font-family:var(--font-subheading);font-size:.86rem;font-weight:700;display:block}.hiring-strip span{color:#d9e8e6;margin-top:2px;font-size:.78rem;display:block}.main-nav{background:var(--teal);border-bottom:2px solid var(--gold);width:100%;max-height:calc(100vh - 70px);margin:0;padding:0 20px 12px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 14px 24px #2442342e}.nav-toggle-input:checked~.main-nav{display:block}.main-nav ul{flex-direction:column;gap:0;width:100%;padding:0}.main-nav>ul>li{border-top:1px solid #ffffff26;width:100%;padding:12px 0}.main-nav a,.main-nav span{overflow-wrap:break-word;display:block}.has-children .submenu{box-shadow:none;background:#ffffff12;border-radius:8px;width:100%;min-width:0;margin-top:10px;padding:4px 0;display:block;position:static}.submenu a{color:#fff;padding:10px 14px;font-size:.88rem}.submenu a:hover{background:#ffffff14}}@media (width<=380px){.header-cta{padding:7px 10px;font-size:.76rem}.logo{height:30px}}.footer-hiring{font-weight:600;color:var(--gold)!important}.site-footer{background:var(--teal-dark);color:#d9e8e6;margin-top:60px;padding:40px 0 20px}.footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;display:grid}.footer-col h3{color:var(--gold);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:.85rem}.footer-col ul{margin:0;padding:0;list-style:none}.footer-col li{margin-bottom:6px}.footer-col a{color:#d9e8e6;font-size:.9rem;text-decoration:none}.footer-col a:hover{color:var(--gold)}.socials{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.socials a{background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background-color .15s,transform .15s;display:inline-flex}.socials svg{fill:#d9e8e6;width:18px;height:18px;transition:fill .15s}.socials a:hover{background:var(--gold);transform:translateY(-2px)}.socials a:hover svg{fill:var(--teal-dark)}.copyright{text-align:center;color:#9db3af;margin:30px 0 0;font-size:.78rem}@media (width<=760px){.footer-inner{grid-template-columns:1fr 1fr}}
