.seo-card{padding:22px;border:1px solid #dce8e5;border-radius:16px;background:#fff}.seo-card a{color:#08755c}.seo-card p{line-height:1.6}.seo-detail{padding-top:40px;padding-bottom:60px}.seo-detail h1{font-size:clamp(32px,4vw,52px)}.seo-detail h2{font-size:21px}.seo-detail li{margin:12px 0}.seo-prose{white-space:pre-line;line-height:1.7}.standalone-info{margin:32px auto;max-width:980px;padding:0;border-radius:24px;overflow:hidden}.info-hero h1{margin:0;font-size:42px;line-height:1.1;letter-spacing:-1px;color:white}.language a{padding:6px;color:#145b4b}.site-footer{order:10}.seo-links{padding:32px 0}.seo-links ul{display:flex;flex-wrap:wrap;gap:14px 30px;list-style:none;padding:0}.seo-links a{color:#08755c}@media(max-width:760px){.standalone-info{margin:16px 10px}.info-hero h1{font-size:30px}}
.seo-links>a{display:inline-block;margin:0 22px 16px 0;font-size:14px;text-underline-offset:4px}.seo-links h2{font-size:25px}.seo-detail .media:empty{display:none}
.site-header{background:#fff!important;backdrop-filter:none!important}.form-connection{margin:16px 0;padding:0 12px}.form-connection .status{color:#325d51}.form-connection:has(.status[hidden]):has(button[hidden]){display:none}#project{scroll-margin-top:110px}
/* Six navigation tabs, including News, stay reachable on narrow screens. */
.site-header nav{gap:24px}.site-header nav a{white-space:nowrap}
@media(min-width:901px) and (max-width:1200px){.site-header nav{gap:16px}.header-inner{gap:16px}.header-actions{gap:12px}}
@media(min-width:901px) and (max-width:1100px){.header-inner{flex-wrap:wrap;padding:12px 0}.site-header nav{order:3;flex-basis:100%;justify-content:center}.header-actions{margin-left:auto}}
@media(max-width:900px){.site-header nav{order:3;flex-basis:100%;max-width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px}.header-actions{margin-left:auto}.site-header nav a{white-space:normal;text-align:center;font-size:12px;line-height:1.4;padding:9px 0}}
@media(max-width:440px){.header-inner{gap:12px}.header-actions{gap:8px}.header-actions .button.small{min-width:0;padding:10px 12px;font-size:12px}.header-actions .button.small>span:last-child{display:none}.brand #brand-wordmark{font-size:24px}.brand-tagline{font-size:9px}}
/* Shared slim footer: one horizontal row, no oversized closing banner. */
body .site-footer.ptd-footer--slim{display:block!important;background:#20383f;color:#dce8e6;padding:0;order:10;margin:0;border:0;border-top:1px solid #355057}
.ptd-footer--slim .ptd-footer-row{display:flex;flex-wrap:nowrap;align-items:center;gap:24px;min-height:56px;padding-top:8px;padding-bottom:8px}
.ptd-footer-wordmark{flex:none;display:inline-block;white-space:nowrap;text-decoration:none;color:#fff;font-size:21px;font-weight:750;line-height:1;letter-spacing:-.8px}
.ptd-footer-wordmark span{color:#8cc8af}.ptd-footer-company{font-size:12px;color:#bdcece;white-space:nowrap;line-height:1.4}
.ptd-footer-meta{display:flex;flex-wrap:nowrap;align-items:center;gap:24px;margin-left:auto;min-width:0;white-space:nowrap;font-size:12px;line-height:1.4}
.ptd-footer-email{display:inline-flex;align-items:center;gap:8px;color:#e2ecea;text-decoration:none;min-width:0;min-height:32px}.ptd-footer-email svg{width:16px;height:16px;flex:none}.ptd-footer-email>span{max-width:24vw;overflow:hidden;text-overflow:ellipsis}
.ptd-footer-copyright{color:#b7ccca;flex:none}.ptd-footer--slim #privacy-link{display:inline-flex;align-items:center;min-height:32px;margin:0;color:#d1e2de;font-size:12px;text-decoration:none}
.ptd-footer-wordmark:hover,.ptd-footer-email:hover,.ptd-footer--slim #privacy-link:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.ptd-footer--slim a:focus-visible{outline:2px solid #a3dfc2;outline-offset:4px;border-radius:3px}
@media(max-width:1100px){.ptd-footer-company{display:none}}
@media(max-width:760px){.ptd-footer--slim .container{width:calc(100% - 40px)}.ptd-footer--slim .ptd-footer-row{gap:14px;min-height:52px}.ptd-footer-meta{gap:14px}.ptd-footer-wordmark{font-size:19px}}
@media(max-width:600px){.ptd-footer-email>span,.ptd-footer-owner{display:none}.ptd-footer-meta{gap:12px;font-size:11px}.ptd-footer-email{justify-content:center;width:32px;flex:none}.ptd-footer--slim #privacy-link{font-size:11px}}
body .compact-logos{padding-top:30px;padding-bottom:30px;display:flex;flex-direction:column;gap:20px;text-align:center}
.compact-logos .eyebrow{margin:0}.compact-logos .logo-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 56px;width:100%}.compact-logos .logo-row img{width:auto;max-width:180px;height:42px;object-fit:contain}.compact-logos .logo-row a{display:flex;align-items:center}
@media(max-width:760px){.compact-logos .logo-row{gap:22px}.compact-logos .logo-row img{max-width:125px;height:32px}}
.share-intro-row{margin-top:16px}.share-intro-button{display:inline-flex;align-items:center;gap:9px;border:0;background:transparent;color:#286452;padding:8px 0;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.share-intro-button svg{width:19px;height:19px}
#share-composer{width:min(920px,calc(100vw - 32px));max-width:920px;max-height:90dvh;padding:0;border:1px solid #dce8e5;border-radius:22px;color:#151b35;overflow:auto;box-shadow:0 24px 90px #102b3240}
#share-composer::backdrop{background:#122d4266}#share-composer .share-shell{position:relative;padding:32px}#share-composer h2{font-size:30px;margin:0 40px 8px 0}#share-composer .eyebrow{color:#438371;margin-bottom:8px}#share-intro{margin:0 0 24px;color:#516b78}
.share-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px}.share-image-panel{border:1px solid #dce8e5;border-radius:14px;background:#f2f7f5;padding:12px;align-self:start;min-height:100px}.share-image-panel img{display:block;width:100%;height:auto;border-radius:6px}.share-image-panel p{font-size:13px;line-height:1.5;color:#526770;margin:10px 0 0}
.share-message-panel{min-width:0}#share-message-label{display:block;font-size:14px;font-weight:650;margin:0 0 10px}#share-message{box-sizing:border-box;display:block;width:100%;font-size:15px;line-height:1.6;padding:14px;border:1px solid #c7d8d3;border-radius:10px;color:#243a45;min-height:200px;max-height:350px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;background:#fafcfb}#share-help{font-size:13px;color:#516b78;line-height:1.5;margin:12px 0 18px}#share-native{width:100%;background:#438371;color:white;font-size:15px}.share-fallback-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.share-fallback-actions .button{font-size:13px;padding:11px 14px}#share-status{font-size:13px;line-height:1.5;margin:14px 0 0;color:#325d51}
@media(max-width:640px){#share-composer .share-shell{padding:24px 18px}.share-grid{grid-template-columns:1fr;gap:20px}.share-image-panel{width:min(100%,280px);justify-self:center}#share-composer h2{font-size:25px}.share-fallback-actions .button{flex:1 1 auto}#share-message{min-height:180px;max-height:none}}
/* Mobile home hero: compact overlay card and separate quote. */
/* Solutions: keep the impact message below the hero photograph on mobile. */
@media (max-width:900px) {
 #page-solutions .solutions-hero-inner { grid-template-columns:minmax(0,1fr); }
 #page-solutions .solutions-copy { min-width:0; }
 #page-solutions .solutions-visual { display:grid; grid-template-columns:minmax(0,1fr); min-width:0; min-height:0; padding-bottom:8px; }
 #page-solutions .solutions-photo { position:relative; grid-area:1/1; inset:auto; min-height:360px; overflow:hidden; border-radius:18px; z-index:0; }
 #page-solutions .solutions-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:70% center; mask-image:none; }
 #page-solutions .visual-orbit { right:0; top:36px; z-index:0; }
 #page-solutions .hero-annotation { z-index:1; font-size:14px; left:12px; }
 #page-solutions .integration-card { position:relative; grid-area:1/1; inset:auto; align-self:end; width:62%; max-width:238px; margin:92px 0 20px 8px; padding:12px 10px; z-index:1; }
 #page-solutions .integration-card h2 { font-size:13px; }
 #page-solutions .hero-service { gap:7px; padding:7px 5px; }
 #page-solutions .hero-service .service-icon { width:28px; height:28px; }
 #page-solutions .hero-service .service-icon svg { width:21px; height:21px; }
 #page-solutions .impact-card { position:relative; grid-area:2/1; inset:auto; width:100%; min-width:0; transform:none; margin:18px 0 0; padding:18px; border:1px solid #dce9e5; border-radius:14px; background:#fff; box-shadow:none; }
 #page-solutions .impact-card h2 { font-size:18px; line-height:1.35; margin:0 0 16px; white-space:normal; }
 #page-solutions #impact-outcomes { display:flex; flex-wrap:wrap; gap:12px; }
 #page-solutions .impact-card .outcome { flex:1 1 75px; min-width:0; padding:0; gap:6px; }
 #page-solutions .impact-card .outcome strong { font-size:13px; }
 #page-solutions .impact-card .outcome .service-icon { flex:0 0 22px; }
}
.mobile-photo-brand { display:none; }
@media (max-width:900px) {
 #page-home .experience-inner { grid-template-columns:minmax(0,1fr); }
 #page-home .experience-copy { min-width:0; }
 #page-home .experience-visual { display:grid; grid-template-columns:minmax(0,1fr); min-height:0; min-width:0; padding-bottom:24px; isolation:isolate; }
 #page-home .experience-photo { position:relative; grid-area:1/1; inset:auto; min-height:390px; aspect-ratio:auto; background:none; overflow:hidden; border-radius:18px; z-index:0; }
 #page-home .experience-photo img { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:70% center; mask-image:none; }
 #page-home .experience-orbit { display:none; }
 #page-home .mobile-photo-brand { display:flex; flex-direction:column; grid-area:1/1; align-self:start; justify-self:start; margin:18px; z-index:2; color:#151a33; }
 #page-home .mobile-photo-brand strong { font-size:29px; line-height:1; letter-spacing:-1.4px; font-weight:800; }
 #page-home .mobile-photo-brand span { color:#468574; }
 #page-home .mobile-photo-brand small { font-size:9px; line-height:1.6; letter-spacing:0; }
 #page-home .home-dashboard { position:relative; grid-area:1/1; inset:auto; align-self:end; width:65%; max-width:260px; margin:110px 0 24px 8px; padding:14px 10px; transform:rotate(-3deg); border:1px solid #dfeae7; border-radius:15px; background:#ffffffeb; box-shadow:0 8px 25px #2a547710; z-index:1; }
 #page-home .home-dashboard h2 { font-size:14px; line-height:1.35; margin:0 0 12px; }
 #page-home .dashboard-body { flex-direction:column; gap:12px; }
 #page-home #home-benefits { display:block; }
 #page-home .home-benefit { min-width:0; min-height:34px; margin:0 0 6px; padding:5px; gap:7px; font-size:11px; line-height:1.4; }
 #page-home .home-benefit:last-child { margin-bottom:0; }
 #page-home .home-benefit .service-icon { flex:0 0 24px; width:24px; height:24px; }
 #page-home .home-benefit svg { width:18px; height:18px; }
 #page-home .home-quote { position:relative; grid-area:2/1; inset:auto; width:100%; max-width:none; margin:22px 0 0; padding:0 0 0 14px; border-left:3px solid #85b7a8; font-size:14px; line-height:1.65; color:#496476; }
}
@media (max-width:360px) {
 #page-home .home-dashboard h2 { font-size:12px; }
 #page-home .experience-copy h1 { font-size:36px; }
 #page-home .experience-copy .button-row { flex-direction:column; align-items:stretch; }
}


