/* Ecosystem follows the shared type, spacing and color system. All diagrams
   retain semantic text; they do not depict product execution or partner proof. */
.hub-ecosystem .hub-hero h1{max-width:680px}.hub-ecosystem .hub-hero-grid{grid-template-columns:1.15fr .85fr;align-items:center}.hub-ecosystem .hub-hero-grid>div>p{max-width:700px}.hub-ecosystem .hub-hero-grid>div>p:first-of-type{font-size:21px;color:var(--ink);line-height:1.5}.eco-hero-composition{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b6cbc0;border-radius:8px;overflow:hidden;background:#eaf0e6}.eco-hero-composition>div{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:24px;padding:36px 28px;min-height:180px;border-bottom:1px solid #b6cbc0;border-right:1px solid #b6cbc0}.eco-hero-composition>div:nth-child(even){border-right:0}.eco-hero-composition>div:nth-child(n+3){border-bottom:0}.eco-hero-composition>div:nth-child(2),.eco-hero-composition>div:nth-child(3){background:#f1f4ea}.eco-hero-composition strong{font-size:26px;font-weight:500;letter-spacing:-.6px;line-height:1.2}.eco-hero-composition svg{width:36px;height:36px;color:var(--teal)}.eco-path-grid,.eco-solution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.eco-path-card{padding:32px;background:var(--cream);border:1px solid #c3d3c7;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start}.eco-path-card>svg,.eco-program-grid>article>svg,.eco-benefit-grid>article>svg{margin-bottom:24px;color:var(--teal)}.eco-path-card .eyebrow{margin-bottom:10px}.eco-path-card h3{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.65px}.eco-path-card p{font-size:14px;line-height:1.8;margin-bottom:18px}.eco-path-card .text-link{margin-top:auto;min-height:44px;white-space:normal}.eco-detail{display:grid;grid-template-columns:1.4fr .6fr;gap:52px;align-items:start}.eco-detail p,.eco-value-copy p{font-size:15px;line-height:1.85}.eco-activities{display:grid;gap:0;margin-top:28px}.eco-activities>article{padding:15px 0;border-top:1px solid #c5d5c9}.eco-activities p{margin:0;font-size:14px}.eco-diagram{margin:0;border:1px solid #c0d3c6;background:#eef3e9;border-radius:6px;overflow:hidden}.eco-diagram ol{list-style:none;margin:0;padding:14px 24px}.eco-diagram li{display:flex;align-items:center;gap:18px;padding:22px 0;font-size:17px;border-bottom:1px solid #c4d5c9}.eco-diagram li:last-child{border-bottom:0}.eco-diagram svg{color:var(--teal);flex-shrink:0}.eco-diagram figcaption{border-top:1px solid #c0d3c6;padding:17px 24px;color:#4a6860;font-size:11px;line-height:1.6}.eco-value-copy{max-width:1000px;border-left:2px solid var(--teal);padding-left:24px;margin:28px 0}.eco-value-copy p:last-child{margin-bottom:0}.eco-value-copy a{text-decoration:underline;text-underline-offset:4px}.eco-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.eco-actions .text-link{margin:0}.eco-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:32px}.eco-program-grid>article,.eco-solution-grid>article{background:#f4f6f0;border:1px solid #c5d4c8;border-radius:6px;padding:28px}.eco-program-grid .eyebrow,.eco-solution-grid .eyebrow{display:block;margin-bottom:13px}.eco-program-grid h3,.eco-solution-grid h3{font-size:24px;letter-spacing:-.5px;line-height:1.25;font-weight:500}.eco-program-grid p,.eco-solution-grid p{font-size:14px;line-height:1.85}.eco-program-grid p:last-child,.eco-solution-grid p:last-child{padding-top:18px;border-top:1px solid #c2d3c6;margin-bottom:0}.eco-solution-grid{margin-top:30px}.eco-solution-grid>article{background:var(--cream)}.eco-solution-grid p:last-child{border-top:0;padding-top:0}.eco-delivery-visual{display:grid;grid-template-columns:1fr .55fr;gap:24px;align-items:stretch;margin-top:28px}.eco-delivery-visual .eco-diagram ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:22px;gap:20px}.eco-delivery-visual .eco-diagram li{flex-direction:column;align-items:flex-start;gap:20px;padding:8px 0;border:0;font-size:15px}.eco-commercial{padding:24px;border:1px solid #b9cdc1;border-radius:6px;display:flex;align-items:center;gap:18px;background:#e0ebe1;font-size:16px;line-height:1.6}.eco-commercial svg{flex-shrink:0;color:var(--teal)}.eco-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.eco-benefit-grid>article{padding-top:24px;border-top:1px solid #bed0c2}.eco-benefit-grid h3{font-size:22px;line-height:1.3;font-weight:500;letter-spacing:-.4px}.eco-benefit-grid p{font-size:14px;line-height:1.8}.hub-ecosystem #choose-your-route .hub-table-wrap{margin-bottom:25px}.eco-faq{border-top:1px solid #b9cdc0}.eco-faq article{border-bottom:1px solid #b9cdc0}.eco-faq h3{margin:0}.eco-faq button{border:0;background:none;color:var(--ink);padding:22px 0;width:100%;min-height:72px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:24px;font:inherit;font-size:18px;font-weight:500;line-height:1.5;cursor:pointer}.eco-faq button:disabled{cursor:default}.eco-faq button>span{font-size:26px;flex-shrink:0;color:var(--teal);font-weight:400}.eco-faq button[aria-expanded=true]>span{transform:rotate(45deg)}.eco-faq article>div{max-width:950px;padding:0 25px 15px 0}.eco-faq p{font-size:15px;line-height:1.85}.hub-ecosystem [hidden]{display:none!important}.hub-ecosystem :focus-visible{outline:2px solid var(--teal);outline-offset:4px}.hub-ecosystem section[id],.hub-ecosystem [id]:is(input,select,textarea,button){scroll-margin-top:125px}.eco-form-heading{max-width:880px;padding-bottom:40px}.eco-form-heading h1{font-size:48px;letter-spacing:-1.6px;line-height:1.15;max-width:800px}.eco-form-heading>p{font-size:17px;line-height:1.8}.eco-form-heading .eco-form-note{font-size:14px;max-width:780px;color:var(--muted);margin-top:22px}.eco-form-section{padding-top:50px}.eco-form-section .container{max-width:880px}.eco-form-section .hub-interest-form{width:100%;max-width:none;padding:40px}.eco-form-section legend{font-size:18px;letter-spacing:0;font-weight:500}.eco-form-section .hub-field label{font-size:14px;line-height:1.6}.eco-form-section .hub-field>.hub-small{font-size:12px;line-height:1.7;margin:8px 0 0}.eco-form-section input,.eco-form-section select,.eco-form-section textarea{border-color:#789c8d}.eco-form-section .hub-path-checkboxes{grid-template-columns:1fr}.eco-form-section .hub-path-checkboxes label{font-size:14px;min-height:48px;line-height:1.65;border-color:#aac2b3}.eco-form-section .hub-specific-interests legend{font-size:14px;padding-inline:7px}.eco-form-section .hub-specific-interests label{font-size:14px;min-height:44px}.eco-form-section .hub-consent{font-size:14px}.eco-optional{font-size:12px;font-weight:400;color:var(--muted)}.eco-field-error{color:#8d2e20;font-size:13px!important;line-height:1.6;margin-top:8px!important}.eco-form-section [aria-invalid=true]{border-color:#9d3627;outline-color:#9d3627}.eco-error-summary{border:2px solid #9d3627;padding:24px;margin-bottom:30px;scroll-margin-top:130px}.eco-error-summary h2{font-size:20px;margin-bottom:15px;line-height:1.4}.eco-error-summary ul{padding-left:22px;margin:0}.eco-error-summary li{padding:6px 0;font-size:14px;line-height:1.6}.eco-error-summary a{text-decoration:underline;text-underline-offset:3px}.eco-error-summary:focus{outline:2px solid var(--teal);outline-offset:4px}.eco-form-return{margin-top:24px}.eco-form-section .hub-form-status h2{font-size:20px;line-height:1.6;margin-bottom:15px}.eco-form-section .hub-interest-form button:disabled{cursor:wait}.eco-form-section #message-count{font-variant-numeric:tabular-nums}
@media(max-width:1050px){.eco-detail{gap:30px;grid-template-columns:1.2fr .8fr}.eco-program-grid{gap:16px}.eco-program-grid>article{padding:23px}.eco-hero-composition>div{padding:30px 23px}.eco-hero-composition strong{font-size:23px}.eco-delivery-visual{grid-template-columns:1fr}.eco-commercial{min-height:90px}}
@media(max-width:899px){.hub-ecosystem .hub-hero-grid{grid-template-columns:1fr}.eco-hero-composition{max-width:620px;width:100%}.eco-program-grid{grid-template-columns:1fr}.eco-program-grid>article{padding:28px}.eco-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eco-form-heading h1{font-size:43px}}
@media(max-width:767px){.eco-detail,.eco-path-grid,.eco-solution-grid{grid-template-columns:1fr}.eco-path-card{padding:26px}.eco-path-card h3{font-size:25px}.eco-detail{gap:24px}.eco-diagram{width:100%;max-width:470px}.eco-detail .eco-diagram ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.eco-detail .eco-diagram li{font-size:15px;flex-direction:column;align-items:flex-start;gap:16px}.eco-detail .eco-diagram li:nth-last-child(-n+2){border-bottom:0}.eco-benefit-grid{grid-template-columns:1fr;gap:10px}.eco-benefit-grid>article>svg{margin-bottom:18px}.eco-value-copy{padding-left:18px}.eco-value-copy p,.eco-detail p{font-size:14px}.eco-delivery-visual .eco-diagram{max-width:none}.eco-delivery-visual .eco-diagram ol{grid-template-columns:repeat(2,minmax(0,1fr))}.eco-faq button{font-size:16px;gap:16px}.eco-faq p{font-size:14px}.eco-faq article>div{padding-right:0}.eco-hero-composition>div{min-height:150px;padding:26px 22px;gap:20px}.eco-hero-composition strong{font-size:23px}.hub-ecosystem .hub-hero-grid>div>p:first-of-type{font-size:19px}.eco-form-heading h1{font-size:36px}.eco-form-heading>p{font-size:15px}.eco-form-section .hub-interest-form{padding:24px}.eco-form-section{padding-top:30px}.eco-form-section .hub-field label{font-size:13px}.eco-form-section .hub-specific-interests{padding:13px}.eco-form-section .hub-specific-interests legend{font-size:12px;max-width:100%}.eco-form-section .hub-specific-interests label{font-size:13px}.eco-form-section .hub-form-status{padding:16px}.eco-form-section .hub-form-status h2{font-size:18px}.eco-form-heading .hub-breadcrumbs{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hub-ecosystem{scroll-behavior:auto}.hub-ecosystem *{transition:none!important}}
.eco-form-subheading{font-size:15px;font-weight:600;line-height:1.5;margin-bottom:12px}.eco-form-section .hub-small{font-size:12px;line-height:1.7}.eco-hero-composition strong{overflow-wrap:normal}
.eco-form-section .hub-small:empty{display:none}
/* Repeat both comparison labels when the table reflows into stacked pairs. */
@media(max-width:700px){.hub-ecosystem #choose-your-route tbody th:before{content:attr(data-label);display:block;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--teal);margin-bottom:3px}}
