/* Shared directory, detail and company pages use the homepage's type and color tokens. */
.service-detail-link{margin-left:18px}.feature-grid>.capability-card:last-child:nth-child(odd){grid-column:1/-1}
.site-nav .desktop-nav{gap:22px!important}.site-nav .nav-trigger{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700}.nav-trigger>span{font-size:11px;transition:transform .2s}.nav-trigger[aria-expanded=true]>span{transform:rotate(180deg)}.mega-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(1198px,calc(100% - 64px));background:var(--paper);border:1px solid var(--line);border-top:0;box-shadow:0 24px 35px #14262212;padding:32px;max-height:75dvh;overflow:auto;animation:megaIn .2s ease}.mega-layout{display:grid;grid-template-columns:230px 1fr;gap:34px}.mega-intro{padding:8px 24px 10px 0;border-right:1px solid var(--line)}.mega-intro h2{font-size:30px;letter-spacing:-1.2px;margin-bottom:12px}.mega-intro p{font-size:13px;color:var(--muted);margin:0 0 15px}.mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 15px}.mega-links a{display:block;padding:11px 13px;border-radius:7px;transition:background .2s,transform .2s}.mega-links a:hover,.mega-links a:focus-visible{background:var(--mint);transform:translateX(3px)}.mega-links strong{font-size:13px;display:block}.mega-links small{font-size:11px;display:block;color:var(--muted);margin-top:3px}.mega-footer{padding-top:18px;margin-top:22px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.mega-footer a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}@keyframes megaIn{from{opacity:0;margin-top:-6px}to{opacity:1;margin-top:0}}
.full-footer{padding-top:46px}.footer-directory{display:grid;grid-template-columns:1.25fr 1.3fr 1.15fr 1fr;gap:30px;padding:35px 0 45px;border-top:1px solid var(--line)}.footer-directory h3{font-size:15px;font-weight:800;margin:0 0 18px}.footer-directory a{display:block;color:var(--muted);font-size:12px;line-height:1.6;padding:5px 0;transition:color .2s}.footer-directory a:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}.footer-directory .footer-subheading{margin-top:25px}.footer-notice{font-size:12px;max-width:470px;color:var(--muted);line-height:1.8;margin:10px 0 28px}.footer-brand-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand-row>.btn{font-size:13px}.footer-mobile-group{border-bottom:1px solid var(--line)}#mobile-nav details summary{padding:13px 0;cursor:pointer;list-style:none;font-size:15px;font-weight:800;display:flex;justify-content:space-between}#mobile-nav details[open] summary span{transform:rotate(45deg)}#mobile-nav details>a{font-size:13px;padding:9px 0 9px 15px}.mobile-direct{font-size:14px;font-weight:700}
.inner-page{overflow:clip}.page-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;padding:25px 34px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line)}.page-breadcrumb a:hover{color:var(--green);text-decoration:underline}.page-breadcrumb>span:last-child{color:var(--ink);font-weight:700}.page-hero{padding:65px 40px;position:relative}.page-hero.split{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center}.page-hero h1{font-size:clamp(42px,5vw,66px);font-weight:800;line-height:1.08;letter-spacing:-3px;margin:18px 0 23px;max-width:800px}.page-hero .page-description{font-size:17px;line-height:1.85;color:var(--muted);max-width:660px;margin:0}.page-hero .hero-actions{justify-content:flex-start;margin-top:27px}.page-hero.centered{text-align:center;padding-block:70px 65px}.page-hero.centered h1,.page-hero.centered .page-description{margin-left:auto;margin-right:auto}.page-hero.centered .hero-actions{justify-content:center}.category-label{font:11px/1.5 monospace;color:var(--green);display:inline-flex;align-items:center;gap:8px}.category-label:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--green)}.scope-label{font-size:11px;line-height:1.7;color:var(--muted);display:block;margin-top:16px;max-width:570px}.capability-visual{min-height:300px;border:1px solid #cfdcd0;border-radius:16px;background:#f0f5ed;position:relative;overflow:hidden;padding:25px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.visual-head{display:flex;justify-content:space-between;font:10px/1.5 monospace;color:var(--green);gap:10px}.visual-orbit{position:absolute;width:280px;height:280px;border:1px solid #ceddca;border-radius:50%;right:-70px;bottom:-45px;z-index:-1}.visual-orbit:after{content:'';position:absolute;inset:28px;border:1px solid #d5e2d0;border-radius:50%}.visual-diagram{width:100%;height:180px;overflow:visible}.diagram-path{stroke-dasharray:6 8;animation:pathMove 12s linear infinite}.diagram-node{transform-box:fill-box;transform-origin:center;animation:nodeRise 5s ease-in-out infinite}.diagram-node:nth-of-type(2){animation-delay:-1.8s}.diagram-node:nth-of-type(3){animation-delay:-3.2s}.visual-caption{font-size:11px;color:var(--muted);line-height:1.6}.visual-caption strong{font-size:15px;color:var(--ink);display:block;margin-bottom:5px}@keyframes pathMove{to{stroke-dashoffset:-140}}@keyframes nodeRise{50%{transform:translateY(-5px)}}
.page-block{padding:60px 40px;border-top:1px solid var(--line)}.page-block.tint{background:#f3f6f0}.block-top{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px}.block-top h2{font-size:clamp(32px,3.1vw,44px);letter-spacing:-1.8px}.block-top>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:380px;margin:0}.lead-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:60px}.lead-grid h2{font-size:38px;letter-spacing:-1.8px}.lead-copy{font-size:16px;color:var(--muted);line-height:1.95}.lead-copy p:first-child{margin-top:0}.lead-copy p:last-child{margin-bottom:0}.badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.badge-row span{font-size:11px;padding:5px 10px;border:1px solid #acbdae;border-radius:5px;background:white;color:#385a45}.directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}.directory-search{position:relative;flex:1;max-width:420px}.directory-search input{width:100%;padding:13px 15px;border:1px solid #92a397;background:white;border-radius:7px;min-height:48px;font-size:14px}.directory-count{font:11px/1.5 monospace;color:var(--muted)}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.directory-card{border:1px solid var(--line);border-radius:10px;background:white;padding:28px;display:flex;flex-direction:column;position:relative;transition:border-color .25s,transform .25s,box-shadow .25s}.directory-card:hover{border-color:#8caa93;transform:translateY(-4px);box-shadow:0 10px 24px #14262206}.directory-card .card-label{font:10px/1.4 monospace;color:var(--green);margin-bottom:26px}.directory-card h3{font-size:24px;font-weight:800;letter-spacing:-1px;line-height:1.25;margin:0 0 13px}.directory-card p{font-size:14px;color:var(--muted);line-height:1.85;margin:0 0 20px}.directory-card .card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;font-weight:800;color:var(--green);padding-top:10px}.card-bottom span:last-child{font-size:20px;transition:transform .25s}.directory-card:hover .card-bottom span:last-child{transform:translate(3px,-3px)}.directory-card .badge-row{margin:0 0 15px}.directory-card .badge-row span{font-size:10px;padding:3px 7px}.empty-results{padding:35px;border:1px dashed #9eafa3;border-radius:8px;color:var(--muted);font-size:15px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filter-button{border:1px solid #a4b4a9;border-radius:6px;padding:9px 12px;font-size:12px;font-weight:700;min-height:42px;transition:background .2s,color .2s}.filter-button:hover{background:var(--mint)}.filter-button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.capability-card{padding:30px;background:white}.capability-card:nth-child(even){border-left:1px solid var(--line)}.capability-card:nth-child(n+3){border-top:1px solid var(--line)}.capability-number{font:11px/1.5 monospace;color:var(--green);margin-bottom:23px;display:block}.capability-card h3{font-size:22px;font-weight:800;letter-spacing:-.6px;margin:0 0 11px;line-height:1.3}.capability-card p{font-size:15px;color:var(--muted);line-height:1.85;margin:0}.journey-tabs{display:flex;border-bottom:1px solid var(--line);gap:5px;flex-wrap:wrap}.journey-tab{padding:13px 20px;font-size:13px;font-weight:800;border:1px solid transparent;border-radius:7px 7px 0 0;transition:background .2s}.journey-tab[aria-selected=true]{background:var(--green);color:white}.journey-tab:hover{background:#dce8dc;color:var(--green)}.journey-panel{padding:30px;background:white;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;min-height:185px;animation:expand .3s ease}.journey-panel ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;padding:0;margin:0;list-style:none;counter-reset:journey}.journey-panel li{font-size:15px;line-height:1.8;color:var(--muted);counter-increment:journey}.journey-panel li:before{content:'0' counter(journey);display:block;font:11px/1.5 monospace;color:var(--green);margin-bottom:17px}.scope-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.scope-grid h2{font-size:38px}.scope-grid ul{list-style:none;padding:0;margin:0}.scope-grid li{padding:16px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.85;color:var(--muted);display:flex;gap:15px}.scope-grid li:before{content:'↗';color:var(--green)}.scope-grid li:first-child{padding-top:0}.mini-process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.mini-step{padding:0 0 15px}.mini-step>span{font:11px/1.4 monospace;color:var(--green)}.mini-step h3{font-size:17px;font-weight:800;margin:16px 0 9px}.mini-step p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.project-ref-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-ref{padding:23px;border:1px solid var(--line);border-radius:8px;background:var(--paper);display:block;transition:border-color .2s,transform .2s}.project-ref:hover{border-color:var(--green);transform:translateY(-3px)}.project-ref small{font-size:10px;color:var(--muted)}.project-ref h3{font-size:19px;font-weight:800;margin:20px 0 11px;line-height:1.3;letter-spacing:-.5px}.project-ref p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.project-ref>span{display:block;color:var(--green);font-size:12px;font-weight:800;margin-top:17px}.related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.related-links a{padding:22px;border:1px solid var(--line);border-radius:7px;font-size:16px;font-weight:800;line-height:1.5;transition:background .2s}.related-links a:hover{background:var(--mint)}.related-links a>span{display:block;font:10px/1.5 monospace;color:var(--green);margin-top:14px}.inner-faq .faq-list summary{font-size:16px}.inner-faq .faq-list p{font-size:14px}.inner-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.inner-faq h2{font-size:39px}.page-cta{background:#eff4ed;padding:55px 40px;display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid var(--line)}.page-cta h2{font-size:39px;letter-spacing:-1.8px}.page-cta p{font-size:14px;color:var(--muted);margin:15px 0 0;max-width:500px}.page-cta .btn{flex-shrink:0}.evidence-note{font:11px/1.8 monospace;color:var(--muted);margin:28px 0 0}.project-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-top:30px}.project-facts>div{padding:20px}.project-facts>div+div{border-left:1px solid var(--line)}.project-facts small{font-size:11px;color:var(--muted);display:block;margin-bottom:9px}.project-facts strong{font-size:14px;line-height:1.7}.project-detail .page-hero h1{font-size:70px}.company-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.company-values article{border-top:2px solid #b6c9b3;padding:22px 0}.company-values h3{font-size:21px;font-weight:800;line-height:1.4;margin:0 0 14px}.company-values p{font-size:15px;line-height:1.85;color:var(--muted);margin:0}.company-profile-link{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px;border:1px solid #b5c6b1;border-radius:10px;background:white}.company-profile-link h3{font-size:22px;font-weight:800;margin:0 0 9px}.company-profile-link p{font-size:14px;color:var(--muted);margin:0}.timeline{max-width:800px;margin:auto}.timeline-item{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}.timeline-item>span{font-size:26px;font-weight:800;color:var(--green)}.timeline-item h3{font-size:25px;font-weight:800;letter-spacing:-.7px;margin:0 0 12px}.timeline-item p{font-size:15px;color:var(--muted);line-height:1.85}.timeline-item ul{list-style:disc;padding-left:20px;font-size:14px;line-height:1.9;color:var(--muted)}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table th,.comparison-table td{padding:18px 20px;border:1px solid var(--line);text-align:left;line-height:1.8;vertical-align:top}.comparison-table th{background:var(--mint);font-weight:800}.comparison-table td{color:var(--muted)}.article-layout{display:grid;grid-template-columns:220px 1fr;gap:65px;align-items:start}.article-toc{position:sticky;top:120px;border-left:1px solid var(--line);padding-left:18px}.article-toc strong{font-size:12px;display:block;margin-bottom:15px}.article-toc a{font-size:12px;line-height:1.7;color:var(--muted);padding:7px 0;display:block}.article-toc a:hover{color:var(--green)}.article-body{max-width:690px}.article-body h2{font-size:32px;letter-spacing:-1.3px;margin:42px 0 18px;scroll-margin-top:120px}.article-body h2:first-child{margin-top:0}.article-body p{font-size:16px;line-height:2;color:var(--muted);margin:0 0 18px}.article-takeaway{padding:27px;border-left:3px solid var(--green);background:var(--mint);border-radius:0 8px 8px 0;margin-top:35px}.article-takeaway strong{font-size:13px;color:var(--green);display:block;margin-bottom:8px}.article-takeaway p{margin:0;font-size:15px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.contact-aside{padding:27px;border:1px solid var(--line);border-radius:10px;background:var(--mint);align-self:start}.contact-aside h2{font-size:28px;letter-spacing:-1.2px}.contact-aside p{font-size:14px;color:var(--muted);line-height:1.85}.contact-aside ol{padding-left:18px;font-size:14px;line-height:2;color:var(--muted)}.contact-form{display:flex;flex-direction:column;gap:18px}.contact-form label{font-size:13px;font-weight:800;display:flex;flex-direction:column;gap:9px}.contact-form input,.contact-form select,.contact-form textarea{padding:13px;border:1px solid #8da093;border-radius:6px;background:white;color:var(--ink);font-size:15px;min-height:48px;width:100%}.contact-form textarea{resize:vertical}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-success{padding:35px;border:1px solid #94b095;border-radius:10px;background:var(--mint)}.contact-success h2{font-size:34px;margin:0 0 18px}.contact-success p{font-size:15px;color:var(--muted);line-height:1.8}.contact-success .text-link{margin-left:20px}.form-state{padding:15px;background:#edf3eb;border:1px solid #b5c8b2;border-radius:6px;font-size:12px;color:#3f5e48;line-height:1.8}.sitemap-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.sitemap-groups h2{font-size:25px;letter-spacing:-.8px;margin-bottom:20px}.sitemap-groups a{font-size:13px;line-height:1.6;color:var(--muted);display:block;padding:6px 0}.sitemap-groups a:hover{color:var(--green);text-decoration:underline}.detail-anchor-nav{display:flex;gap:25px;padding:16px 40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white;font-size:12px;font-weight:800;flex-wrap:wrap}.detail-anchor-nav a:hover{color:var(--green)}
@media(max-width:1100px){.site-nav .desktop-nav{gap:15px!important}.site-nav .nav-trigger{font-size:12px}.site-nav{padding-inline:22px}.site-nav .wordmark{font-size:24px}.mega-layout{grid-template-columns:190px 1fr;gap:25px}.page-hero.split{gap:30px}.page-hero h1{font-size:54px}.page-description{font-size:16px!important}.capability-visual{padding:20px}.page-block{padding:50px 32px}.page-hero{padding:55px 32px}.workspace-copy>p{font-size:14px}.scope-grid,.lead-grid,.inner-faq{gap:35px}.project-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{gap:35px;grid-template-columns:180px 1fr}}
@media(max-width:850px){.mega-menu{display:none}.page-hero.split{grid-template-columns:1fr;gap:35px}.page-hero h1{font-size:54px;max-width:700px}.capability-visual{min-height:250px;max-width:100%}.visual-diagram{height:150px}.lead-grid{grid-template-columns:1fr;gap:20px}.lead-grid h2{font-size:35px}.scope-grid{grid-template-columns:1fr;gap:28px}.inner-faq{grid-template-columns:1fr;gap:28px}.page-cta{display:block}.page-cta .btn{margin-top:25px}.footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.company-values{grid-template-columns:1fr;gap:15px}.article-layout{grid-template-columns:1fr;gap:35px}.article-toc{position:static}.contact-layout{grid-template-columns:1fr;gap:30px}.sitemap-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.related-links{grid-template-columns:1fr}.page-hero.centered{padding-top:55px}.page-breadcrumb{padding-inline:28px}.mini-process{gap:25px}.mini-step h3{font-size:16px}.mini-step p{font-size:13px}}
@media(max-width:640px){.page-breadcrumb{padding:18px;font-size:10px;gap:6px}.page-hero{padding:36px 20px}.page-hero h1{font-size:41px;letter-spacing:-2px;margin:15px 0 20px;overflow-wrap:break-word}.page-hero .page-description{font-size:15px!important;line-height:1.85}.page-hero.centered{padding:40px 20px}.page-hero .hero-actions .btn{font-size:12px}.category-label{font-size:10px}.scope-label{font-size:10px}.capability-visual{min-height:260px;padding:19px}.visual-head{font-size:9px}.visual-caption strong{font-size:14px}.visual-caption{font-size:10px}.page-block{padding:38px 20px}.block-top{display:block;margin-bottom:25px}.block-top h2,.lead-grid h2,.scope-grid h2,.inner-faq h2{font-size:32px;letter-spacing:-1.5px}.block-top>p{font-size:13px;margin-top:16px}.lead-copy{font-size:14px;line-height:1.9}.badge-row span{font-size:10px}.directory-toolbar{gap:12px}.directory-search{max-width:none;flex-basis:100%}.directory-search input{font-size:13px}.directory-grid{grid-template-columns:1fr;gap:14px}.directory-card{padding:23px}.directory-card h3{font-size:23px}.directory-card p{font-size:13px}.directory-card .card-label{margin-bottom:20px}.directory-card .card-bottom{font-size:11px}.filter-row{gap:6px}.filter-button{font-size:10px;padding:8px 10px;min-height:42px}.feature-grid{grid-template-columns:1fr}.capability-card{padding:25px}.capability-card:nth-child(n){border-left:0;border-top:1px solid var(--line)}.capability-card:first-child{border-top:0}.capability-card h3{font-size:20px}.capability-card p{font-size:14px}.capability-number{margin-bottom:16px}.journey-tab{padding:12px 13px;font-size:11px}.journey-panel{padding:23px}.journey-panel ul{grid-template-columns:1fr;gap:20px}.journey-panel li{font-size:14px}.journey-panel li:before{margin-bottom:8px}.scope-grid li{font-size:14px}.mini-process{grid-template-columns:1fr;gap:15px}.mini-step{padding:18px 0;border-bottom:1px solid var(--line)}.mini-step h3{font-size:18px;margin:10px 0}.mini-step p{font-size:14px}.project-ref-grid{grid-template-columns:1fr;gap:14px}.project-ref h3{font-size:20px;margin-top:15px}.project-ref p{font-size:13px}.inner-faq .faq-list summary{font-size:14px}.inner-faq .faq-list p{font-size:13px}.page-cta{padding:36px 20px}.page-cta h2{font-size:32px}.page-cta p{font-size:13px}.page-cta .btn{font-size:12px}.footer-directory{gap:28px 20px;padding:28px 0}.footer-directory h3{font-size:14px;margin-bottom:12px}.footer-directory a{font-size:11px;padding:5px 0;min-height:30px}.footer-brand-row{display:block}.footer-brand-row>.btn{margin:20px 0}.footer-notice{font-size:11px}.full-footer{padding-top:28px}.footer-directory .footer-subheading{margin-top:23px}.project-detail .page-hero h1{font-size:43px}.project-facts{grid-template-columns:1fr}.project-facts>div{padding:17px}.project-facts>div+div{border-left:0;border-top:1px solid var(--line)}.project-facts strong{font-size:13px}.project-facts small{font-size:10px;margin-bottom:6px}.company-profile-link{display:block;padding:23px}.company-profile-link h3{font-size:22px}.company-profile-link p{font-size:13px}.company-profile-link .btn{margin-top:22px;font-size:12px}.company-values h3{font-size:21px}.company-values p{font-size:14px}.timeline-item{grid-template-columns:40px 1fr;gap:15px;padding:24px 0}.timeline-item>span{font-size:21px}.timeline-item h3{font-size:23px}.timeline-item p,.timeline-item ul{font-size:14px}.comparison-table{font-size:12px}.comparison-table th,.comparison-table td{padding:13px 11px}.article-body h2{font-size:27px;margin-top:32px}.article-body p{font-size:14px;line-height:1.95}.article-takeaway{padding:22px}.article-takeaway p{font-size:14px}.contact-form{gap:17px}.form-pair{grid-template-columns:1fr}.contact-form input,.contact-form select,.contact-form textarea{font-size:14px}.contact-aside{padding:24px}.contact-aside h2{font-size:27px}.contact-aside p,.contact-aside ol{font-size:13px}.contact-success{padding:25px}.contact-success h2{font-size:29px}.contact-success p{font-size:14px}.contact-success .text-link{margin:15px 0 0;display:flex}.sitemap-groups{grid-template-columns:1fr}.sitemap-groups h2{font-size:26px}.sitemap-groups a{font-size:13px}.detail-anchor-nav{padding:15px 20px;gap:16px;font-size:11px}}
