/* Shared page rhythm: navigation, work area, context and next action. */
:root{--layout-gap:24px;--section-space:64px;--layout-max:100%;--layout-gutter:clamp(20px,4vw,72px);--layout-edge:var(--layout-gutter)}
/* Use the viewport frame so ultrawide screens and browser zoom do not add outer gutters. */
.container{width:100%;max-width:var(--layout-max);margin-inline:auto;padding-inline:var(--layout-gutter)}
.header-inner>.brand{flex-shrink:0}
.app-shell{padding-top:20px;padding-bottom:48px}
.app-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:6px;margin-bottom:24px;border:1px solid var(--line);border-radius:18px;background:var(--white);align-items:stretch;scroll-padding-inline:8px}
.app-nav a{justify-content:center;min-width:0;min-height:44px;padding:10px 12px;border-radius:12px;gap:8px}
.app-nav a:focus-visible{outline-offset:-3px}
.app-heading{gap:20px;margin-bottom:24px}
.app-heading .eyebrow{margin-bottom:10px}
.app-heading p{margin-top:10px}
.scenario-bar{margin-bottom:24px}
.app-grid{gap:24px}
/* Put service context below the workspace instead of extending only its left side. */
.app-shell:not([data-page="launch"]) .app-grid>.service-overview{display:contents}
.app-shell:not([data-page="launch"]) .service-overview>:not(.info-block){grid-column:1;grid-row:1;min-width:0}
.app-shell:not([data-page="launch"]) .app-grid>.ticket{grid-column:2;grid-row:1}
.app-shell:not([data-page="launch"]) .service-overview>.info-block{grid-column:1/-1;grid-row:2;margin:0}
.app-shell:not([data-page="launch"]) .service-overview>.info-block .info-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.app-shell:not([data-page="launch"]) .service-overview>.info-block .info-list-item{border-bottom:0;padding-bottom:0;min-width:0}
.app-shell:not([data-page="launch"]) .service-overview>.info-block .panel-body:has(>.quote-row){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px}
.app-shell:not([data-page="launch"]) .service-overview>.info-block .panel-body>p{grid-column:1/-1}
.position-section{margin-top:24px}
.empty{padding:32px 24px}
.metrics-grid{margin-bottom:24px;gap:16px}
.portfolio-layout{gap:24px;align-items:start}
.portfolio-layout>.panel{min-width:0}
.section{padding:var(--section-space) 0}
.section+.section{padding-top:24px}
.section-heading{margin-bottom:32px;gap:32px}
.section-heading .eyebrow{margin-bottom:14px}
.product-card{min-height:0}
.principles{gap:48px}
.cta-band{padding:40px;margin-bottom:48px}
.learn-intro{max-width:52rem;margin-bottom:32px}
.learn-intro h1{margin:16px 0}
.docs-layout{max-width:none;grid-template-columns:210px minmax(0,1fr);gap:40px}
.doc-section{padding-bottom:28px;margin-bottom:28px}
.doc-section:last-child{margin-bottom:0}
.doc-section>p,.doc-section>ul{max-width:78ch}
.how-shell .steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.how-shell .step{padding:24px 0 0;min-width:0}
.how-shell .step>div{min-width:0}
.how-shell .step h2{margin-bottom:10px}
.how-shell .step .text-link{display:inline-flex;margin-top:14px}
.how-disclosure{margin-top:28px}
footer{padding-top:40px}
.footer-bottom{margin-top:32px}
:root[data-theme="dark"] .app-nav{background:var(--surface)}
@media(max-width:1000px){
 .app-shell:not([data-page="launch"]) .app-grid>.ticket{grid-column:1;grid-row:1}
 .app-shell:not([data-page="launch"]) .service-overview>:not(.info-block){grid-column:1;grid-row:2}
 .app-shell:not([data-page="launch"]) .service-overview>.info-block{grid-column:1;grid-row:3}
 .app-shell:not([data-page="launch"]) .service-overview>.info-block .info-list{grid-template-columns:minmax(0,1fr);gap:20px}
 .app-shell:not([data-page="launch"]) .service-overview>.info-block .info-list-item{padding-bottom:20px;border-bottom:1px solid var(--line)}
 .app-shell:not([data-page="launch"]) .service-overview>.info-block .info-list-item:last-child{padding-bottom:0;border-bottom:0}
 .section-heading{gap:20px}
 .principles{gap:32px}
 .docs-layout{grid-template-columns:180px minmax(0,1fr);gap:28px}
}
@media(max-width:900px){
 .app-nav{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;gap:4px}
 .app-nav a{flex:1 0 auto;padding:10px 14px}
 .app-nav::-webkit-scrollbar{height:4px}
 .app-nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}
}
@media(max-width:800px){
 :root{--section-space:48px}
 .app-shell{padding-top:16px;padding-bottom:40px}
 .app-heading{gap:12px}
 .app-shell:not([data-page="launch"]) .service-overview>.info-block .panel-body:has(>.quote-row){grid-template-columns:minmax(0,1fr)}
 .how-shell .steps{grid-template-columns:minmax(0,1fr);gap:24px}
 .docs-layout{grid-template-columns:150px minmax(0,1fr);gap:24px}
 .cta-band{padding:32px;margin-bottom:40px}
}
@media(max-width:600px){
 :root{--section-space:40px}
 .app-shell{padding-top:12px;padding-bottom:32px}
 .app-nav{margin-bottom:20px;border-radius:14px}
 .app-nav a{min-height:44px;padding:9px 12px;font-size:.8125rem}
 .app-heading,.scenario-bar{margin-bottom:20px}
 .app-grid{gap:20px}
 .section+.section{padding-top:20px}
 .section-heading{margin-bottom:24px}
 .principles{gap:28px}
 .cta-band{padding:28px 24px;margin-bottom:32px}
 .empty{padding:28px 20px}
 .metrics-grid{gap:12px;margin-bottom:20px}
 .portfolio-layout{gap:20px}
 .learn-intro{margin-bottom:28px}
 .docs-layout{grid-template-columns:minmax(0,1fr);gap:24px}
 .doc-section{margin-bottom:24px;padding-bottom:24px}
 .how-shell .step{grid-template-columns:30px minmax(0,1fr);gap:16px}
 footer{padding-top:32px}
 .footer-bottom{margin-top:28px}
}

/* Ecosystem workspaces: persistent vertical service navigation. */
.app-shell[data-page]{display:grid;grid-template-columns:192px minmax(0,1fr);align-items:start;gap:28px}
.app-shell[data-page]>.app-nav{display:flex;flex-direction:column;overflow:visible;position:sticky;top:110px;margin:0;padding:10px;gap:6px;border-radius:16px}
.app-shell[data-page]>.app-nav a{justify-content:flex-start;flex:none;min-height:48px;padding:12px;gap:12px;white-space:nowrap;border:0;border-radius:10px}
.app-shell[data-page]>.app-nav a .icon{flex-shrink:0;width:20px;height:20px}
.app-shell[data-page] .app-nav a.active{box-shadow:inset 3px 0 var(--service-color)}
.workspace-content{min-width:0}
@media(max-width:1200px){.app-shell[data-page]{grid-template-columns:170px minmax(0,1fr);gap:20px}.app-shell[data-page] .app-grid{grid-template-columns:minmax(0,1fr)}.app-shell[data-page]:not([data-page=launch]) .app-grid>.ticket{grid-column:1;grid-row:1}.app-shell[data-page]:not([data-page=launch]) .service-overview>:not(.info-block){grid-column:1;grid-row:2}.app-shell[data-page]:not([data-page=launch]) .service-overview>.info-block{grid-column:1;grid-row:3}}
@media(max-width:600px){.app-shell[data-page]{grid-template-columns:64px minmax(0,1fr);gap:12px;padding-inline:12px}.app-shell[data-page]>.app-nav{top:90px;padding:6px}.app-shell[data-page]>.app-nav a{font-size:0;justify-content:center;min-height:48px;padding:10px;gap:0}.app-shell[data-page]>.app-nav a .icon{width:22px;height:22px}.app-shell[data-page] .app-heading{flex-wrap:wrap}.workspace-content .panel-head,.workspace-content .ticket-body{padding-inline:16px}.workspace-content .lp-pool-reserves{grid-template-columns:minmax(0,1fr)}}

@media(max-width:600px){.app-shell[data-page]>.app-nav a>span{display:none}}
