@font-face{font-family:Onest;src:url('fonts/onest-0.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Onest;src:url('fonts/onest-1.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Onest;src:url('fonts/onest-2.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Onest;src:url('fonts/onest-3.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-0.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-2.woff2') format('woff2');font-weight:600;font-display:swap}
/* Layers: sticky navigation 20, dropdowns 21, mobile navigation 30, utility controls 10. */
:root{--bg:#fefff8;--surface:#f3f8ee;--paper:#fff;--ink:#143c33;--muted:#586960;--green:#1f6f5b;--lime:#c7f4aa;--line:#dce5d8;--dark:#103e33;--radius:18px;--ease:cubic-bezier(.16,1,.3,1);--max:1320px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}::selection{background:var(--lime);color:#143c33}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button{color:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,h4{font-family:Onest,Arial,sans-serif;font-weight:500;line-height:1.2;letter-spacing:-.045em;margin:0 0 24px}h1{font-size:clamp(42px,5.2vw,76px)}h2{font-size:clamp(32px,3.5vw,50px)}h3{font-size:26px;letter-spacing:-.035em}h4{font-size:20px;letter-spacing:-.02em}p{margin:0 0 22px;color:var(--muted)}p:last-child{margin-bottom:0}ul,ol{padding-left:1.3em}li{padding-left:4px}strong{font-weight:600}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}a:hover{color:var(--green)}[hidden]{display:none!important}.container{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.section-sm{padding-block:64px}.section-tint{background:var(--surface)}.section-header{max-width:740px;margin-bottom:48px}.section-header p{max-width:630px}.eyebrow{display:flex;gap:12px;align-items:center;font-family:Onest,Arial,sans-serif;font-size:12px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:22px;color:var(--green)}.eyebrow:before{content:'';width:28px;height:1px;background:currentColor}.lead{font-size:20px;line-height:1.65}.muted{color:var(--muted)}.small{font-size:14px}.center{text-align:center}.max-copy{max-width:760px}.skip-link{position:fixed;top:-80px;left:20px;background:var(--lime);padding:12px 20px;z-index:50}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.icon{width:24px;height:24px;flex:none;display:inline-flex;align-items:center;justify-content:center;font-size:24px;line-height:1;font-family:Arial,sans-serif;font-weight:400}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:100px;padding:14px 25px;border:1px solid transparent;background:var(--green);color:#fff;font-size:15px;font-weight:600;line-height:1.4;min-height:52px;transition:background .25s,color .25s,transform .25s}.btn:hover{background:var(--dark);color:#fff;transform:translateY(-2px)}.btn-light{background:var(--lime);color:#143c33}.btn-light:hover{background:#e0ffd0;color:#143c33}.btn-outline{background:transparent;border-color:var(--line);color:var(--ink)}.btn-outline:hover{background:var(--surface);color:var(--ink);border-color:var(--green)}.btn .icon,.text-link .icon{transition:transform .35s var(--ease)}.btn:hover .icon,.text-link:hover .icon{transform:translate(3px,-3px)}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:15px;font-weight:600;color:var(--green);padding-block:8px}.circle-link{display:inline-flex;align-items:center;gap:16px;font-size:16px;font-weight:600}.circle-link .icon{height:58px;width:58px;background:var(--green);color:#fff;border-radius:50%;transition:transform .35s var(--ease),background .25s}.circle-link:hover .icon{transform:rotate(45deg);background:var(--dark)}.button-row{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.pill{display:inline-block;border:1px solid var(--line);border-radius:50px;font-size:13px;padding:5px 14px}.tag-list{display:flex;gap:9px;flex-wrap:wrap}.image-frame{overflow:hidden;border-radius:var(--radius)}.image-frame img{height:100%;object-fit:cover;transition:transform .8s var(--ease)}.image-frame:hover img{transform:scale(1.035)}
#top{height:1px;margin-bottom:-1px}.error-page .button-row{justify-content:center}#enquiry-fields{border:0;padding:0;margin:0;min-width:0}
.expertise-ticker{display:flex;align-items:center;background:var(--lime);color:#143c33;overflow:hidden}.ticker-window{overflow:hidden;flex:1}.ticker-track{display:flex;width:max-content}.ticker-group{display:flex;align-items:center;gap:42px;padding:19px 42px 19px 0}.ticker-group a{font-family:Onest,sans-serif;font-size:17px;font-weight:500;white-space:nowrap;display:flex;align-items:center;gap:42px}.ticker-group a span{font-size:22px}.ticker-pause{border:0;border-left:1px solid #143c3320;background:var(--lime);color:#143c33;align-self:stretch;padding-inline:24px;font-size:14px}.ticker-pause:focus-visible{outline-offset:-5px}.ticker-group a:hover{text-decoration:underline;text-underline-offset:5px;color:#143c33}
@keyframes ticker{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:no-preference){.ticker-track{animation:ticker 50s linear infinite}.expertise-ticker:hover .ticker-track,.expertise-ticker:focus-within .ticker-track,.expertise-ticker.is-paused .ticker-track{animation-play-state:paused}}
@media(prefers-reduced-motion:reduce){.ticker-window{overflow:auto}.ticker-group[aria-hidden=true],.ticker-pause{display:none}.ticker-group{padding-left:24px}}
/* Navigation */
.site-header{height:92px;position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line);transition:box-shadow .3s}.site-header.is-stuck{box-shadow:0 8px 24px #143c330a}.header-inner{width:calc(100% - 96px);max-width:1600px;height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;color:var(--ink)}.brand-symbol{width:48px;height:48px;display:grid;place-items:center;background:var(--ink);color:var(--lime);font-family:Onest,sans-serif;font-weight:500;font-size:23px;letter-spacing:-3px;padding-right:3px;border-radius:3px}.brand-name{font-family:Onest,sans-serif;font-size:22px;letter-spacing:-1px;line-height:1.25;font-weight:600;display:block}.brand-caption{display:block;font-size:9px;letter-spacing:.19em;text-transform:uppercase;margin-top:5px}.nav-list{display:flex;align-items:center;list-style:none;padding:0;margin:0;gap:29px}.nav-list>li{position:relative;padding:0}.nav-top{display:flex;align-items:center;gap:6px}.nav-list a,.nav-toggle{font-family:Onest,sans-serif;font-size:13px;font-weight:500;white-space:nowrap}.nav-list a[aria-current=page]{color:var(--green)}.nav-toggle{background:none;border:0;padding:7px 0;display:inline-flex;align-items:center;gap:7px}.chevron{display:inline-block;width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin:0 3px 3px;transition:transform .25s}.nav-toggle[aria-expanded=true] .chevron{transform:rotate(225deg);margin-bottom:0}.dropdown{position:absolute;top:calc(100% + 24px);left:-24px;min-width:260px;background:var(--paper);padding:14px;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 40px #143c3310;list-style:none;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility .25s;z-index:21}.dropdown:before{content:'';position:absolute;left:0;right:0;top:-27px;height:27px}.dropdown li{padding:0}.dropdown a{display:block;padding:10px 12px;border-radius:6px;white-space:normal}.dropdown a:hover{background:var(--surface)}.nav-list>li.open .dropdown,.nav-list>li:focus-within .dropdown{opacity:1;visibility:visible;transform:translateY(0)}@media(hover:hover){.nav-list>li:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}}.header-cta{font-size:13px;min-height:46px;padding:12px 20px}.menu-toggle{display:none;width:46px;height:46px;padding:12px;border:1px solid var(--line);border-radius:50%;background:transparent}.menu-toggle span{display:block;width:20px;height:1px;background:var(--ink);margin:5px 0}.mobile-contact{display:none}
/* Hero */
.home-hero{display:grid;grid-template-columns:55% 45%;min-height:660px;background:var(--surface);position:relative;overflow:hidden}.hero-copy{padding:90px 48px 96px max(56px,calc((100vw - 1320px)/2));align-self:center;position:relative;z-index:1}.hero-copy h1{font-size:clamp(42px,4.6vw,74px);font-weight:500;letter-spacing:-.065em;line-height:1.13;margin-bottom:26px}.hero-copy h1 em{font-weight:400;font-style:normal;color:var(--green)}.hero-copy .lead{max-width:450px;margin-bottom:34px;font-size:18px}.hero-copy .eyebrow{margin-bottom:29px}.hero-visual{position:relative;min-height:100%;overflow:hidden;background:#d8e0d9}.hero-slides{position:absolute;inset:0}.hero-slides img{position:absolute;inset:0;height:100%;object-fit:cover;opacity:0;transition:opacity 1.3s ease;object-position:55% center}.hero-slides img.active{opacity:1}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,#123a3338);pointer-events:none}.hero-controls{position:absolute;bottom:25px;right:28px;z-index:2;display:flex;gap:8px;align-items:center}.slide-dot{width:26px;height:26px;border:0;background:transparent;padding:8px;display:grid;place-items:center}.slide-dot:after{content:'';width:6px;height:6px;background:#fff8;border-radius:50%}.slide-dot[aria-pressed=true]:after{width:8px;height:8px;background:#fff}.motion-toggle{width:36px;height:36px;border:1px solid #ffffff80;background:#143c3338;color:#fff;border-radius:50%;font-size:12px;display:grid;place-items:center}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:28px;border-bottom:1px solid var(--line);font-size:13px}.hero-bottom p{color:var(--muted)}.hero-bottom strong{font-family:Onest,sans-serif;font-size:16px;color:var(--ink);display:block;line-height:1.5}.hero-bottom>div{display:flex;align-items:center;gap:16px}.hero-bottom .mini-mark{border:1px solid var(--line);width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-size:18px;color:var(--green)}.inner-hero{background:var(--surface);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.inner-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:70px;min-height:420px;padding-block:68px}.inner-hero h1{font-size:clamp(42px,4.6vw,66px);max-width:800px;margin-bottom:24px}.inner-hero p{max-width:600px}.inner-hero .image-frame{height:280px}.breadcrumbs{font-size:12px;display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin-bottom:36px;color:var(--muted)}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs span:last-child{color:var(--green)}.hero-plain .inner-hero-grid{display:block;min-height:360px;max-width:1100px;margin-left:0}.hero-plain h1{max-width:950px}.hero-plain p{max-width:680px}
/* Homepage sections */
.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;align-items:center}.about-photo{height:500px;position:relative}.about-photo img{object-position:35% center}.about-copy h2{max-width:580px}.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:64px;padding-top:38px;border-top:1px solid var(--line)}.stat{padding-right:20px}.stat+.stat{border-left:1px solid var(--line);padding-left:40px}.stat-number{font-family:Onest,sans-serif;font-size:57px;letter-spacing:-.06em;line-height:1.2;color:var(--green);display:block;margin-bottom:12px}.stat-label{font-size:14px;color:var(--muted);display:block;line-height:1.6;max-width:190px}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:48px}.section-heading-row h2{max-width:660px;margin-bottom:0}.section-heading-row .text-link{flex-shrink:0}.service-explorer{display:grid;grid-template-columns:1fr 1.18fr;gap:80px;align-items:stretch}.service-tabs{display:flex;flex-direction:column}.service-tab{display:flex;justify-content:space-between;align-items:center;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:25px 0;gap:18px;font-family:Onest,sans-serif;font-size:24px;letter-spacing:-.04em}.service-tab:first-child{padding-top:8px}.service-tab .tab-index{font-family:'DM Sans',sans-serif;font-size:12px;color:var(--muted);margin-right:17px;letter-spacing:0}.service-tab .icon{border:1px solid var(--line);width:42px;height:42px;border-radius:50%;font-size:20px;transition:background .3s,transform .3s}.service-tab[aria-selected=true]{color:var(--green)}.service-tab[aria-selected=true] .icon{background:var(--green);color:#fff;border-color:var(--green);transform:rotate(45deg)}.service-panel{background:var(--paper);border-radius:var(--radius);overflow:hidden}.service-panel .panel-image{height:228px;overflow:hidden}.service-panel img{height:100%;object-fit:cover}.panel-copy{padding:30px 36px}.panel-copy h3{margin-bottom:14px;font-size:27px}.panel-copy p{font-size:16px;margin-bottom:13px}.service-footnote{font-size:14px;margin-top:20px}.industry-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px}.industry-card{display:flex;flex-direction:column;position:relative;min-width:0}.industry-card .image-frame{height:330px;margin-bottom:25px}.industry-card h3{font-size:24px;margin-bottom:12px;max-width:290px}.industry-card p{font-size:15px;line-height:1.65}.industry-card a{display:flex;justify-content:space-between;align-items:start;gap:15px}.industry-card:hover img{transform:scale(1.05)}.industry-card .icon{margin-top:3px}.values-section{padding:85px 0;background:var(--dark);color:#f3faed;border-radius:22px;overflow:hidden}.values-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:90px;align-items:center}.values-section h2{font-size:46px;max-width:440px}.values-section p{color:#c4d6c9}.values-section .eyebrow{color:var(--lime)}.values-list{display:grid;grid-template-columns:1fr 1fr;gap:36px}.value-item{border-top:1px solid #ffffff30;padding-top:24px}.value-item h3{font-size:20px;letter-spacing:-.025em;margin-bottom:14px;color:var(--lime)}.value-item p{font-size:15px}.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.partner-card{border:1px solid var(--line);border-radius:var(--radius);padding:38px;display:grid;grid-template-columns:95px 1fr;gap:26px;background:var(--paper);transition:transform .35s var(--ease),border-color .25s}.partner-card:hover{transform:translateY(-4px);border-color:var(--green)}.partner-monogram{height:95px;width:95px;border-radius:50%;background:var(--surface);color:var(--green);display:grid;place-items:center;font-family:Onest,sans-serif;font-weight:400;font-size:34px;letter-spacing:-3px}.partner-card h3{font-size:24px;margin:4px 0 8px}.partner-card .role{color:var(--green);font-size:13px;margin-bottom:18px}.partner-card p{font-size:15px}.partner-card .text-link{font-size:13px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.article-card .image-frame{height:235px;margin-bottom:25px}.article-meta{font-size:12px;color:var(--green);margin-bottom:12px;display:block}.article-card h3{font-size:23px;line-height:1.35;margin-bottom:13px}.article-card p{font-size:15px}.article-card .text-link{font-size:14px}.cta-banner{background:var(--lime);padding:56px 66px;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-banner h2{font-size:42px;margin-bottom:12px;color:#143c33}.cta-banner p{color:#3d5a43;max-width:570px}.cta-banner .btn{flex-shrink:0}.cta-section{padding-bottom:96px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-layout h2{max-width:460px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;padding:23px 42px 23px 0;font-family:Onest,sans-serif;font-size:18px;line-height:1.5;cursor:pointer;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:2px;top:21px;font-size:25px;color:var(--green);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details>div{padding:0 40px 25px 0}.faq-list p{font-size:16px}.faq-list details[open]>div{animation:fade-in .35s ease both}
/* Inner pages */
.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.content-grid .image-frame{height:430px}.content-grid h2{font-size:40px}.editorial-copy p{max-width:700px}.prose h2{font-size:34px;margin-top:44px}.prose h3{font-size:24px;margin-top:30px}.prose p,.prose li{color:var(--muted)}.prose li{margin-bottom:12px}.prose a{color:var(--green);text-decoration:underline;text-underline-offset:4px}.prose> :first-child{margin-top:0}.mission-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.mission-grid h2{font-size:40px}.mission-list{list-style:none;padding:0;margin:0;display:grid;gap:24px}.mission-list li{padding:0 0 22px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:35px 1fr;gap:20px}.mission-list .icon{color:var(--green)}.mission-list h3{font-size:20px;margin-bottom:8px}.mission-list p{font-size:15px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:38px;background:var(--paper);display:flex;flex-direction:column;align-items:start;position:relative;transition:border-color .3s,transform .3s}.service-card:hover{border-color:var(--green);transform:translateY(-4px)}.service-card .service-number{color:var(--green);font-size:13px;margin-bottom:42px}.service-card h2{font-size:28px;margin-bottom:18px}.service-card p{font-size:16px}.service-card .text-link{margin-top:auto}.service-card:last-child{grid-column:1 / -1;background:var(--surface)}.detail-layout{display:grid;grid-template-columns:290px 1fr;gap:78px;align-items:start}.sidebar{position:sticky;top:122px}.sidebar-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:18px}.sidebar-nav{list-style:none;padding:0;margin:0 0 32px;background:var(--surface);border-radius:12px;overflow:hidden}.sidebar-nav li{padding:0}.sidebar-nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;font-size:14px;border-bottom:1px solid var(--line)}.sidebar-nav li:last-child a{border-bottom:0}.sidebar-nav a[aria-current=page]{background:var(--green);color:#fff}.sidebar-contact{padding:27px;border:1px solid var(--line);border-radius:12px}.sidebar-contact h3{font-size:23px}.sidebar-contact p{font-size:14px}.sidebar-contact .btn{font-size:13px;padding:12px 18px;gap:12px}.detail-content h2{font-size:38px}.detail-content>.image-frame{height:365px;margin-bottom:42px}.offering-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:36px 0 55px}.offering{border-top:1px solid var(--line);padding-top:24px}.offering h3{font-size:21px;margin-bottom:12px}.offering p{font-size:15px}.benefits{list-style:none;padding:0;display:grid;gap:15px;margin:30px 0}.benefits li{display:flex;align-items:baseline;gap:14px;padding:0;color:var(--muted)}.benefits li:before{content:'✓';color:var(--green);flex:none}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:42px}.process-item{position:relative;border-top:1px solid var(--line);padding-top:25px}.process-item h3{font-size:21px}.process-item p{font-size:15px}.process-number{display:block;font-size:12px;color:var(--green);margin-bottom:20px}.sector-row{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-block:65px;border-bottom:1px solid var(--line)}.sector-row:first-child{padding-top:0}.sector-row:last-child{padding-bottom:0;border-bottom:0}.sector-row .image-frame{height:355px}.sector-row h2{font-size:38px}.sector-row p{font-size:17px}.profile-layout{display:grid;grid-template-columns:330px 1fr;gap:85px}.profile-aside{padding:40px;background:var(--surface);border-radius:var(--radius)}.profile-aside .partner-monogram{width:130px;height:130px;font-size:44px;background:var(--paper);margin-bottom:30px}.profile-aside h2{font-size:26px}.profile-aside p{font-size:15px}.profile-aside .tag-list{margin-top:26px}.profile-aside .pill{font-size:12px}.profile-body h2{font-size:38px}.profile-body .lead{color:var(--ink)}.resource-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:42px;flex-wrap:wrap}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{border:1px solid var(--line);border-radius:50px;padding:9px 17px;background:transparent;font-size:13px}.filter-btn[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}.search-box{max-width:310px;width:100%}.search-box input{border-radius:50px}.resource-results{font-size:13px;margin-top:25px}.tool-banner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:50px;padding:40px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:60px}.tool-banner h3{margin-bottom:12px}.tool-banner p{font-size:16px}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.download-card{display:flex;align-items:center;gap:20px;border:1px solid var(--line);border-radius:12px;padding:25px;background:var(--paper)}.download-card>.icon{font-size:30px;color:var(--green);width:36px}.download-card h3{font-size:18px;margin-bottom:7px}.download-card p{font-size:13px}.download-card:hover{border-color:var(--green)}.article-layout{display:grid;grid-template-columns:1fr 290px;gap:85px}.article-body{max-width:780px}.article-body h2{font-size:30px;margin-top:45px}.article-body li{color:var(--muted);margin-bottom:12px}.article-body .lead{color:var(--ink)}.article-body>.image-frame{height:350px;margin-bottom:40px}.article-toc{position:sticky;top:130px;background:var(--surface);padding:28px;border-radius:var(--radius)}.article-toc h2{font-size:18px;letter-spacing:-.015em}.article-toc ol{font-size:14px;margin-bottom:25px}.article-toc li{margin-bottom:12px}.article-toc .btn{font-size:12px;padding:12px 16px;gap:10px}.note{padding:22px 26px;border-left:3px solid var(--green);background:var(--surface);font-size:14px;margin-block:32px;border-radius:0 8px 8px 0}.note p{color:var(--muted)}
/* Forms and tools */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}.contact-details h2{font-size:38px}.contact-item{border-top:1px solid var(--line);padding-block:24px}.contact-item h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:13px;color:var(--green)}.contact-item address{font-style:normal;line-height:1.8;color:var(--muted)}.contact-item p{font-size:16px}.contact-item a{display:inline-block}.contact-item a:hover{text-decoration:underline}.contact-phone-list{display:grid;gap:4px;font-size:16px}.form-panel{padding:40px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.form-panel h2{font-size:30px;margin-bottom:13px}.form-panel>p{font-size:15px;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.field.full{grid-column:1 / -1}.field label,.field-label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}.field input,.field select,.field textarea,.search-box input{display:block;width:100%;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:13px 16px;border-radius:7px;font-size:15px;line-height:1.5;min-height:50px}.field textarea{resize:vertical;min-height:135px}.field input:focus,.field select:focus,.field textarea:focus,.search-box input:focus{border-color:var(--green)}input::placeholder,textarea::placeholder{color:#727f76}.form-consent{display:flex;align-items:start;gap:12px;font-size:13px;line-height:1.6;margin:25px 0;color:var(--muted)}input[type=checkbox],input[type=radio]{accent-color:var(--green);width:17px;height:17px;flex:none;margin-top:3px}.form-consent a{text-decoration:underline}.form-status{font-size:14px;margin-top:20px}.email-preview{border-top:1px solid var(--line);padding-top:25px;margin-top:28px}.email-preview h3{font-size:21px}.email-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.7 'DM Sans',sans-serif;padding:20px;background:var(--surface);border-radius:8px}.email-preview .button-row{gap:12px}.email-preview .btn{font-size:13px;padding:12px 17px;gap:12px}.location-panel{background:var(--surface);border:1px solid var(--line);padding:45px;border-radius:var(--radius);display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center}.location-panel h2{font-size:30px}.location-panel .image-frame{height:250px}.opportunity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.opportunity{border-top:1px solid var(--line);padding-top:25px}.opportunity h3{font-size:23px}.opportunity p{font-size:16px}.calculator-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}.calculator-form{border:1px solid var(--line);padding:38px;border-radius:var(--radius);background:var(--paper)}.calculator-form fieldset{border:0;margin:0 0 26px;padding:0}.calculator-form legend{font-size:14px;font-weight:600;margin-bottom:16px}.radio-group{display:flex;gap:20px;flex-wrap:wrap}.radio-group label{display:flex;align-items:center;gap:8px;font-size:14px}.calculator-form .field{margin-bottom:23px}.calculator-result{background:var(--surface);border-radius:var(--radius);padding:38px;border:1px solid var(--line)}.calculator-result h2{font-size:20px;margin-bottom:25px}.result-total{font-family:Onest,sans-serif;font-size:44px;letter-spacing:-.04em;color:var(--green);overflow-wrap:anywhere;line-height:1.3;margin-bottom:30px;display:block}.result-row{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-block:17px;font-size:15px}.result-row span{color:var(--muted)}.result-row strong{overflow-wrap:anywhere;min-width:0;text-align:right}.calculator-result>.small{margin-top:20px}.error-message{color:#a23524;font-size:14px}.checklist{padding:0;list-style:none}.checklist li{padding:16px 0;border-bottom:1px solid var(--line)}.checklist label{display:flex;gap:13px;align-items:start}.checklist input{margin-top:6px}.empty-state{background:var(--surface);border-radius:12px;text-align:center;padding:45px}.empty-state h3{font-size:22px}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.support-card{border:1px solid var(--line);border-radius:var(--radius);padding:36px;background:var(--paper)}.support-card h2{font-size:28px}.support-card p{font-size:16px}.error-page{text-align:center;padding:100px 24px}.error-number{font-family:Onest,sans-serif;color:var(--green);font-size:150px;line-height:1;letter-spacing:-.08em;margin-bottom:30px}.error-page h1{font-size:40px}.error-page p{max-width:510px;margin:0 auto 30px}
/* Footer */
.site-footer{border-top:1px solid var(--line);padding:65px 0 0;background:var(--surface)}.footer-grid{display:grid;grid-template-columns:1.45fr .8fr 1fr 1.25fr;gap:55px;padding-bottom:55px}.footer-brand .brand{margin-bottom:24px}.footer-brand p{font-size:14px;max-width:260px}.footer-grid h2{font-size:14px;font-weight:600;letter-spacing:0;margin:6px 0 22px}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:9px}.footer-links li{padding:0;font-size:13px;color:var(--muted)}.footer-contact address{font-size:13px;font-style:normal;color:var(--muted);margin-bottom:18px;line-height:1.9}.footer-contact a{font-size:14px;display:block}.footer-bottom{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:12px;color:var(--muted)}.footer-bottom-links{display:flex;gap:22px;align-items:center}.theme-toggle{border:0;background:transparent;font-size:12px;color:var(--muted);padding:8px 0}.back-top{position:fixed;right:24px;bottom:24px;z-index:10;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--green);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .35s,transform .35s,visibility .35s;box-shadow:0 4px 16px #143c3309}.back-top.visible{opacity:1;visibility:visible;transform:none}.back-top:hover{background:var(--lime);color:#143c33}
/* Motion is progressive enhancement; unenhanced pages remain readable. */
@keyframes fade-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes slow-pan{from{transform:scale(1.015)}to{transform:scale(1.075)}}
@media(prefers-reduced-motion:no-preference){.hero-copy .eyebrow{animation:hero-enter .8s var(--ease) both}.hero-copy h1{animation:hero-enter 1s .1s var(--ease) both}.hero-copy .lead{animation:hero-enter 1s .2s var(--ease) both}.hero-copy .button-row{animation:hero-enter 1s .3s var(--ease) both}.hero-slides img.active{animation:slow-pan 9s ease-out both}.hero-slides.paused img{animation-play-state:paused}.reveal.ready{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.ready.in-view{opacity:1;transform:none}.reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.16s}.service-panel.panel-enter{animation:fade-in .5s var(--ease) both}.inner-hero h1{animation:hero-enter .9s var(--ease) both}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.ready{opacity:1;transform:none}.motion-toggle{display:none}}
/* The reference palette is the default; an optional accessible night palette is available. */
html[data-theme=dark]{--bg:#14251f;--surface:#1b3027;--paper:#1d342a;--ink:#edf5e8;--muted:#b8c9bc;--green:#b5e69a;--lime:#c7f4aa;--line:#385044;--dark:#234b3c;color-scheme:dark}
html[data-theme=dark] .btn:not(.btn-light):not(.btn-outline){background:#c7f4aa;color:#143c33}html[data-theme=dark] .btn:not(.btn-light):not(.btn-outline):hover{background:#d9f9c6}html[data-theme=dark] .circle-link .icon{background:#c7f4aa;color:#143c33}html[data-theme=dark] .brand-symbol{background:#c7f4aa;color:#143c33}html[data-theme=dark] .service-tab[aria-selected=true] .icon,html[data-theme=dark] .filter-btn[aria-pressed=true],html[data-theme=dark] .sidebar-nav a[aria-current=page]{background:#c7f4aa;color:#143c33}html[data-theme=dark] .error-message{color:#ffb3a5}
input::placeholder,textarea::placeholder{color:#657269}.cta-banner a:focus-visible,.ticker-pause:focus-visible,.ticker-group a:focus-visible{outline-color:#143c33}html[data-theme=dark] .cta-banner .btn{background:#143c33;color:#f1f9ea}html[data-theme=dark] .cta-banner .btn:hover{background:#1f6f5b;color:#f1f9ea}
/* Responsive composition */
@media(min-width:1800px){.home-hero{min-height:760px}.hero-copy{padding-right:95px}.hero-copy h1{font-size:84px}}
@media(max-width:1200px){.container{width:calc(100% - 72px)}.header-inner{width:calc(100% - 60px);gap:20px}.nav-list{gap:20px}.brand-name{font-size:19px}.brand-symbol{width:43px;height:43px;font-size:22px}.header-cta{padding:12px 17px;gap:12px}.home-hero{min-height:610px}.hero-copy{padding:68px 30px 74px 36px}.hero-copy h1{font-size:clamp(43px,4.7vw,64px)}.hero-copy .lead{font-size:17px}.about-grid{gap:55px}.service-explorer{gap:50px}.values-grid{gap:50px}.values-section h2{font-size:39px}.partner-card{padding:28px;grid-template-columns:75px 1fr;gap:22px}.partner-monogram{width:75px;height:75px;font-size:28px}.partner-card h3{font-size:21px}.contact-grid{gap:55px}.detail-layout{gap:50px;grid-template-columns:250px 1fr}.footer-grid{gap:30px}.industry-card .image-frame{height:290px}.section{padding-block:85px}}
@media(max-width:1023px){.site-header{height:78px}.header-cta{margin-left:auto}.menu-toggle{display:block;flex:none;z-index:31}.site-nav{display:none;position:fixed;top:78px;left:0;right:0;height:calc(100dvh - 78px);background:var(--bg);z-index:30;padding:28px 36px;overflow:auto;border-top:1px solid var(--line)}.site-nav.is-open{display:block}.nav-list{display:block}.nav-list>li{border-bottom:1px solid var(--line)}.nav-top{justify-content:space-between}.nav-list>li>a,.nav-toggle{font-size:22px;padding:17px 0;display:flex;width:100%;justify-content:space-between}.dropdown{display:none;position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:var(--surface);border-radius:8px;margin:0 0 14px;padding:10px}.nav-list>li.open .dropdown{display:block}.dropdown:before{display:none}.dropdown a{font-size:15px}.mobile-contact{display:block;margin-top:28px}.mobile-contact a{font-size:16px}.home-hero{min-height:540px;grid-template-columns:56% 44%}.hero-copy h1{font-size:44px}.hero-copy .eyebrow{font-size:10px}.hero-bottom{gap:16px}.hero-bottom>div:last-child{display:none}.about-grid{gap:40px}.about-photo{height:420px}.service-explorer{gap:35px;grid-template-columns:1fr 1fr}.service-tab{font-size:20px}.service-tab .tab-index{margin-right:10px}.panel-copy{padding:26px}.industry-grid{gap:20px}.industry-card .image-frame{height:250px}.industry-card h3{font-size:20px}.values-grid{grid-template-columns:1fr}.values-section h2{max-width:620px}.partner-card{grid-template-columns:1fr}.partner-card .partner-monogram{width:65px;height:65px;font-size:26px}.article-grid{gap:24px}.article-card .image-frame{height:195px}.article-card h3{font-size:21px}.cta-banner{padding:42px}.cta-banner h2{font-size:34px}.faq-layout{gap:45px}.inner-hero-grid{gap:40px}.inner-hero h1{font-size:47px}.inner-hero .image-frame{height:260px}.detail-layout{grid-template-columns:210px 1fr;gap:40px}.offering-grid{gap:24px}.profile-layout{grid-template-columns:270px 1fr;gap:45px}.contact-grid{grid-template-columns:1fr 1.15fr;gap:38px}.form-panel{padding:28px}.form-grid{grid-template-columns:1fr}.form-grid .field{grid-column:1}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:40px}.footer-contact{grid-column:1 / -1;display:flex;gap:30px;align-items:start;border-top:1px solid var(--line);padding-top:30px}.footer-contact address{max-width:280px;margin:0}.footer-contact h2{min-width:125px}.footer-contact .contact-footer-links{margin-left:auto}.article-layout{gap:45px;grid-template-columns:1fr 240px}.calculator-layout{gap:25px}.calculator-form,.calculator-result{padding:28px}.result-total{font-size:36px}}
@media(max-width:767px){body{font-size:16px}.container{width:calc(100% - 40px)}.section{padding-block:64px}.section-sm{padding-block:45px}.header-inner{width:calc(100% - 40px);gap:16px}.site-header{height:76px}.brand-name{font-size:19px}.brand-caption{font-size:8px;letter-spacing:.14em}.brand-symbol{width:41px;height:41px}.header-cta{display:none}.menu-toggle{margin-left:auto}.site-nav{top:76px;height:calc(100dvh - 76px);padding:22px 24px}.home-hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:58px 24px 55px}.hero-copy h1{font-size:clamp(36px,7.4vw,55px);line-height:1.16;letter-spacing:-.06em;max-width:640px}.hero-copy .eyebrow{font-size:10px;margin-bottom:24px}.hero-copy .lead{font-size:17px;max-width:460px;margin-bottom:29px}.hero-copy .button-row{gap:25px}.circle-link{font-size:14px}.circle-link .icon{width:49px;height:49px}.hero-visual{min-height:340px;max-height:430px}.hero-slides img{object-position:50% 48%}.hero-bottom{padding-block:22px;justify-content:start;gap:35px}.hero-bottom p{font-size:11px}.hero-bottom strong{font-size:13px}.hero-bottom .mini-mark{display:none}.about-grid,.content-grid{grid-template-columns:1fr;gap:35px}.about-photo{height:360px}.about-copy h2{font-size:34px}.about-copy .lead{font-size:19px}.stats-strip{grid-template-columns:1fr 1fr;gap:32px;margin-top:40px;padding-top:32px}.stat+.stat{padding-left:0;border-left:0}.stat:nth-child(even){padding-left:25px;border-left:1px solid var(--line)}.stat-number{font-size:45px}.stat-label{font-size:12px}.section-heading-row{display:block;margin-bottom:32px}.section-heading-row h2{font-size:34px;margin-bottom:14px;max-width:560px}.service-explorer{grid-template-columns:1fr;gap:30px}.service-tab{font-size:21px;padding-block:19px}.service-panel .panel-image{height:230px}.panel-copy{padding:27px}.panel-copy h3{font-size:26px}.industry-grid{grid-template-columns:1fr}.industry-card{padding-bottom:22px}.industry-card .image-frame{height:300px;margin-bottom:22px}.industry-card h3{font-size:25px;max-width:none}.industry-card p{max-width:520px}.values-section{padding:47px 0;border-radius:15px}.values-section .container{width:calc(100% - 44px)}.values-section h2{font-size:34px}.values-grid{gap:33px}.values-list{gap:25px}.value-item h3{font-size:18px}.value-item p{font-size:14px}.partner-grid{grid-template-columns:1fr;gap:20px}.partner-card{padding:27px;grid-template-columns:65px 1fr;gap:20px}.partner-card h3{font-size:22px}.article-grid{grid-template-columns:1fr;gap:42px}.article-card .image-frame{height:260px;margin-bottom:20px}.article-card h3{font-size:25px}.article-card p{max-width:500px}.cta-section{padding-bottom:64px}.cta-banner{padding:33px 27px;flex-direction:column;align-items:start;gap:25px}.cta-banner h2{font-size:32px}.cta-banner p{font-size:15px}.faq-layout{grid-template-columns:1fr;gap:32px}.faq-list summary{font-size:16px;padding-block:21px}.faq-list p{font-size:15px}.inner-hero-grid{grid-template-columns:1fr;gap:30px;padding-block:40px;min-height:0}.inner-hero h1{font-size:41px}.inner-hero .image-frame{height:200px}.inner-hero p{font-size:17px}.breadcrumbs{margin-bottom:28px;font-size:11px}.hero-plain .inner-hero-grid{min-height:0;padding-block:44px}.section-header{margin-bottom:32px}.section-header h2{font-size:34px}.mission-grid{grid-template-columns:1fr;gap:30px}.mission-grid h2{font-size:32px}.service-grid{grid-template-columns:1fr;gap:20px}.service-card{padding:30px}.service-card .service-number{margin-bottom:26px}.service-card h2{font-size:27px}.detail-layout{display:flex;flex-direction:column-reverse;gap:45px}.sidebar{position:static;width:100%}.detail-content{min-width:0;width:100%}.detail-content>.image-frame{height:250px;margin-bottom:30px}.detail-content h2{font-size:31px}.offering-grid{grid-template-columns:1fr;gap:8px;margin-block:26px 40px}.offering{padding-block:22px}.offering h3{font-size:22px}.process{grid-template-columns:1fr;gap:25px}.process-item h3{margin-bottom:12px}.sector-row{grid-template-columns:1fr;gap:28px;padding-block:45px}.sector-row .image-frame{height:270px}.sector-row h2{font-size:31px}.profile-layout{grid-template-columns:1fr;gap:35px}.profile-aside{padding:30px}.profile-aside .partner-monogram{width:95px;height:95px;font-size:34px}.profile-body h2{font-size:30px}.resource-toolbar{gap:22px}.search-box{max-width:none}.tool-banner{grid-template-columns:1fr;gap:23px;padding:28px;margin-top:40px}.tool-banner .btn{justify-self:start}.download-grid{grid-template-columns:1fr}.article-layout{grid-template-columns:1fr;gap:40px}.article-toc{position:static;grid-row:1}.article-body>.image-frame{height:230px}.article-body h2{font-size:28px}.article-body .lead{font-size:18px}.contact-grid{grid-template-columns:1fr;gap:40px}.form-panel{padding:27px 23px}.contact-details h2{font-size:32px}.location-panel{grid-template-columns:1fr;gap:25px;padding:28px}.location-panel .image-frame{height:200px}.opportunity-grid{grid-template-columns:1fr;gap:25px}.calculator-layout{grid-template-columns:1fr}.calculator-form,.calculator-result{padding:28px}.support-grid{grid-template-columns:1fr}.support-card{padding:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px;padding-bottom:35px}.footer-brand{grid-column:1 / -1}.footer-brand p{max-width:400px}.footer-contact{display:block}.footer-contact h2{margin-top:0}.footer-contact address{margin-bottom:18px;max-width:300px}.footer-bottom{flex-direction:column;align-items:start;gap:10px;padding-bottom:26px}.footer-bottom-links{gap:18px;flex-wrap:wrap}.site-footer{padding-top:45px}.back-top{right:16px;bottom:16px;width:40px;height:40px}.content-grid .image-frame{height:300px}.content-grid h2{font-size:32px}.error-page{padding-block:70px}.error-number{font-size:110px}}
@media(max-width:380px){.hero-copy{padding-inline:20px}.hero-copy h1{font-size:34px}.brand-name{font-size:17px}.brand-caption{font-size:7px}.header-inner{gap:10px}.brand{gap:9px}.hero-bottom{gap:20px}.partner-card{grid-template-columns:1fr}.values-list{grid-template-columns:1fr}.btn{font-size:14px;padding:13px 21px}.service-tab{font-size:18px}.service-tab .tab-index{margin-right:7px}.inner-hero h1{font-size:36px}.filter-btn{padding:8px 13px}}
