/* Astra-06 Platform and Features migration: route-scoped rules only. */
/* Astra-06 core pages. The live information architecture is presented in the
   same cobalt, paper and midnight editorial language as the homepage. */
#main:is(:has(#application-framework),:has(#at-a-glance)){--core-ink:#171a20;--core-muted:#505660;--core-blue:#1847ed;--core-paper:#f3f5f8;--core-line:#d7dbe2;--core-night:#071f38;overflow:visible!important;background:#fff;color:var(--core-ink);counter-reset:core-section}
#main:is(:has(#application-framework),:has(#at-a-glance)) *{box-sizing:border-box}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h1,h2,h3,h4,p,li,th,td,a,button){font-family:Inter,Arial,sans-serif!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h1,h2,h3,h4){font-weight:600!important;color:var(--core-ink)!important;letter-spacing:-.045em!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(p,li,td){color:var(--core-muted)!important;line-height:1.7!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) a{color:var(--core-blue)!important;text-underline-offset:4px}
#main:is(:has(#application-framework),:has(#at-a-glance)) a:hover{color:#1034b6!important}
#main:is(:has(#application-framework),:has(#at-a-glance))> .container,#main:is(:has(#application-framework),:has(#at-a-glance))>section.container,#main:is(:has(#application-framework),:has(#at-a-glance))> .container-fluid>.container,#main:is(:has(#application-framework),:has(#at-a-glance)) .full-width-content>.container{width:calc(100% - 112px)!important;max-width:1280px!important;margin-inline:auto!important;padding-inline:0!important}
#main:is(:has(#application-framework),:has(#at-a-glance))>.container-fluid{width:100%!important;max-width:none!important;margin:0!important;padding:70px 0!important}
#main:is(:has(#application-framework),:has(#at-a-glance))>.container-fluid.gray-container{background:var(--core-paper)!important}
#main:is(:has(#application-framework),:has(#at-a-glance))>.container-fluid.white-container{background:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance))> :is(.container,section.container):not(.hero-block){padding-block:70px!important;border-bottom:1px solid var(--core-line)}
#main:is(:has(#application-framework),:has(#at-a-glance))> .container.hero-block{position:relative;isolation:isolate;width:100%!important;max-width:none!important;min-height:420px;margin:0!important;padding:66px max(56px,calc((100% - 1280px)/2)) 76px!important;background:var(--core-paper)!important;border-bottom:1px solid var(--core-line);overflow:hidden}
#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block::before{content:'CREATERUN  /  PRODUCT';display:block;margin-bottom:24px;color:var(--core-blue);font:500 11px/1.5 'JetBrains Mono',monospace;letter-spacing:.1em}
.inner-page.page-platform .astra-core> .hero-block::before{content:'01  /  PLATFORM'}
.inner-page.page-features .astra-core> .hero-block::before{content:'02  /  FEATURES'}
.inner-page.page-solutions .astra-core> .hero-block::before{content:'03  /  SOLUTIONS'}
.inner-page.page-ai .astra-core> .hero-block::before{content:'04  /  AI AGENT'}
.inner-page.page-developers .astra-core> .hero-block::before{content:'05  /  DEVELOPERS'}
.inner-page.page-marketplace .astra-core> .hero-block::before{content:'06  /  PUBLISH'}
.inner-page.page-integrations .astra-core> .hero-block::before{content:'07  /  INTEGRATIONS'}
.inner-page.page-compare .astra-core> .hero-block::before{content:'08  /  COMPARE'}
#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block::after{content:'';position:absolute;right:max(56px,calc((100% - 1280px)/2));top:90px;width:31%;height:235px;background:linear-gradient(90deg,transparent 0 49.5%,#cbd5ed 49.5% 50%,transparent 50% 100%),linear-gradient(0deg,transparent 0 49.5%,#cbd5ed 49.5% 50%,transparent 50% 100%);background-size:48px 48px;border:1px solid #d7dbe2;opacity:.72;z-index:-1}
#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block h1{max-width:870px;margin:0 0 22px!important;font-size:clamp(47px,5.1vw,76px)!important;line-height:1.04!important;letter-spacing:-.065em!important;text-wrap:balance}
#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block .hero-sub{max-width:760px;margin:0!important;font-size:18px!important;line-height:1.7!important;color:var(--core-muted)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-primary,.cta-secondary,.wide-card-blue-button,.top-footer-btn,.cta-button,.cta-secondary-light){display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;padding:12px 21px!important;border-radius:0!important;font-size:14px!important;font-weight:600!important;text-decoration:none!important;transition:transform .15s,background .15s}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-primary,.wide-card-blue-button,.top-footer-btn,.cta-button){background:var(--core-blue)!important;border:1px solid var(--core-blue)!important;color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-secondary,.cta-secondary-light){background:transparent!important;border:1px solid var(--core-ink)!important;color:var(--core-ink)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-primary,.cta-secondary,.wide-card-blue-button,.top-footer-btn,.cta-button,.cta-secondary-light):hover{transform:translateY(-2px)}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-primary,.wide-card-blue-button,.top-footer-btn,.cta-button):hover{background:#1034b6!important;color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cta-secondary,.cta-secondary-light):hover{background:#e7eaf2!important;color:var(--core-ink)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.headers-bordered,.badge,.tool-cat,.cr-esdp-nav-label){display:inline-flex;align-items:center;gap:9px;margin:0 0 19px!important;padding:0!important;background:none!important;border:0!important;color:var(--core-blue)!important;font:500 11px/1.5 'JetBrains Mono',monospace!important;letter-spacing:.1em!important;text-transform:uppercase}
#main:is(:has(#application-framework),:has(#at-a-glance)) .headers-bordered::before{content:'';display:block;flex:none;width:7px;height:7px;background:var(--core-blue)}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h2,.section-title,.wide-card-head){font-size:clamp(36px,3.45vw,54px)!important;line-height:1.12!important;margin:0 0 20px!important;max-width:930px;text-wrap:balance}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h3,.low-width){font-size:clamp(23px,2.1vw,31px)!important;line-height:1.2!important;margin:0 0 13px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) h4{font-size:19px!important;line-height:1.3!important;margin:0 0 12px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) p{font-size:16px!important;margin:0 0 18px!important;max-width:850px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .section-lead{font-size:18px!important;max-width:760px;margin-bottom:32px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(ul,ol){padding-left:22px;margin:20px 0}
#main:is(:has(#application-framework),:has(#at-a-glance)) li{font-size:15px!important;padding-left:4px;margin:6px 0}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cr-esdp-section,.section):not(.hero-block){scroll-margin-top:130px}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cr-esdp-section,.section):not(.hero-block)>h2:first-child{max-width:900px}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-cards,.vertical-grid,.mcp-grid,.tile-grid,.three-track,.cr-esdp-methods,.cr-esdp-paths,.publish-pipeline){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important;max-width:none!important;margin:32px 0 0!important;padding:1px!important;background:var(--core-line)!important;border:0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step){min-width:0!important;min-height:0!important;display:flex;flex-direction:column;padding:30px!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--core-ink)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step) :is(h3,h4){font-size:23px!important;line-height:1.25!important;margin:0 0 13px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step) p{font-size:14px!important;line-height:1.66!important;margin:0 0 16px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step) :is(.badge,.tool-cat){margin-bottom:25px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step) :is(a,.card-link){margin-top:auto!important;align-self:flex-start;font-size:13px!important;font-weight:600!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .platform-icon{display:block;width:37px;height:37px;margin-bottom:17px;color:var(--core-blue)}
#main:is(:has(#application-framework),:has(#at-a-glance)) .platform-icon svg{display:block;width:37px;height:37px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-badge{display:inline-block!important;width:auto!important;padding:5px 8px!important;margin:0 0 14px!important;border:1px solid #bdd0ff!important;background:#e9efff!important;color:#173aa9!important;font:600 11px/1.2 'JetBrains Mono',monospace!important;text-transform:uppercase;letter-spacing:.03em}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-badge--planned{background:#f0e9fa!important;border-color:#d9c9f1!important;color:#5e348d!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-badge--built{background:#fff0dc!important;border-color:#ecd1a6!important;color:#82530e!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .row{row-gap:24px}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.row,.d-flex)>[class*='col-']{min-width:0}
#main:is(:has(#application-framework),:has(#at-a-glance)) img{max-width:100%;height:auto}
#main:is(:has(#application-framework),:has(#at-a-glance)) .row img:not(.hawai-box-link img){display:block;max-height:390px;object-fit:contain;margin-inline:auto}
#main:is(:has(#application-framework),:has(#at-a-glance)) .architecture-block{background:var(--core-paper);padding:48px!important;border:1px solid var(--core-line);text-align:center}
#main:is(:has(#application-framework),:has(#at-a-glance)) .architecture-block img{display:block;max-height:500px;margin:0 auto 17px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .architecture-block a{font-size:13px;font-weight:600}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-photo-frame{display:block;margin:0;background:var(--core-paper);overflow:hidden}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-photo{display:block;width:100%;height:100%!important;min-height:230px;max-height:420px;object-fit:cover}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-section-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0!important;border-bottom:1px solid var(--core-line)}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-section-nav .cr-esdp-nav-label{margin:0 18px 0 0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-section-nav a{display:inline-flex;align-items:center;min-height:37px;padding:8px 11px;border:1px solid var(--core-line);font-size:12px!important;font-weight:600;text-decoration:none}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.problem,.fit){font-size:14px!important;line-height:1.6!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .feature-pills{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0!important;padding:0!important;list-style:none}
#main:is(:has(#application-framework),:has(#at-a-glance)) .feature-pills>*{padding:5px 8px!important;margin:0!important;background:var(--core-paper);color:var(--core-ink)!important;font:500 11px/1.4 'JetBrains Mono',monospace!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--core-line);margin:24px 0}
#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table{width:100%;min-width:650px;border-collapse:collapse;background:#fff}
#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table :is(th,td){padding:17px 19px!important;border:0;border-bottom:1px solid var(--core-line)!important;vertical-align:top;font-size:14px!important;line-height:1.55!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table th{background:var(--core-night)!important;color:#fff!important;font:500 11px/1.5 'JetBrains Mono',monospace!important;letter-spacing:.07em;text-transform:uppercase}
#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table tr:nth-child(even) td{background:#f7f8fa}
#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table td:first-child{font-weight:600;color:var(--core-ink)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple{position:relative;width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important;padding:65px max(56px,calc((100vw - 1280px)/2))!important;background:var(--core-night)!important;border:0!important;border-bottom:1px solid #34516b!important;color:#fff!important;text-align:left!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple :is(h2,h3){color:#fff!important;max-width:900px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple p{color:#c4d6e5!important;max-width:760px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple .wide-card-dekor{display:none!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple .wide-card-blue-button{background:#72e5ef!important;border-color:#72e5ef!important;color:var(--core-night)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple .wide-card-blue-button:hover{background:#a8f6fa!important;color:var(--core-night)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box{background:var(--core-night)!important;padding:0!important;color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card{padding:70px 0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card .d-flex{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:7%;align-items:center}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card :is(h2,h3,p){color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card p{color:#c4d6e5!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .tab-btns{display:flex!important;flex-wrap:wrap;gap:8px;border:0!important;margin:24px 0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box [role='tab']{padding:10px 13px!important;border:1px solid #55718c!important;border-radius:0!important;background:transparent!important;color:#e8f1ff!important;font-size:12px!important;font-weight:600!important;cursor:pointer}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box [role='tab'].active{background:#72e5ef!important;border-color:#72e5ef!important;color:var(--core-night)!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .tab-content{color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .tab-pane[hidden],#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .flextabs-img[hidden]{display:none!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .tab-pane:not(.active),#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .flextabs-img:not(.active){display:none!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .flextabs-img{width:100%;max-height:400px;object-fit:contain}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .mid-much-padding-top{padding:55px 0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .mid-much-padding-top :is(h3,p,li){color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .mid-much-padding-top p{color:#c4d6e5!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .mid-much-padding-top a{color:#72e5ef!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .mobile-hidden{display:block!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .center-align{text-align:center}
#main:is(:has(#application-framework),:has(#at-a-glance)) .center-align :is(h2,h3,p){margin-inline:auto!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .center-align img{display:block;margin:0 auto 22px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box-link img{width:16px;height:16px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-developer-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.62fr);gap:7%;align-items:center}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-developer-hero .cr-photo{min-height:320px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-diagram-link{display:inline-block;margin-top:15px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-methods .cr-esdp-card{min-height:190px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .tile-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .three-track{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .publish-pipeline{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .pipe-step{min-height:230px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .pipe-step::before{content:counter(core-section,decimal-leading-zero);color:var(--core-blue);font:500 11px/1.5 'JetBrains Mono',monospace;margin-bottom:20px}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.mcp-tool,.vertical-card) .tool-desc{font-size:14px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.cr-esdp-card,.tile) .cr-badge{align-self:flex-start}
#main:is(:has(#application-framework),:has(#at-a-glance)) .mcp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .vertical-card .problem{margin-top:10px!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .vertical-card .fit{border-top:1px solid var(--core-line);padding-top:15px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .vertical-card .cr-photo-frame{margin:-30px -30px 25px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .vertical-card .cr-photo{max-height:250px}
#main:is(:has(#application-framework),:has(#at-a-glance)) .section-title-bar{display:flex;justify-content:space-between;gap:30px;align-items:end}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-h4look{font-size:20px!important;font-weight:600}
#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.white-container,.gray-container) .row>div{align-self:start}
@media(max-width:1000px){#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block::after{width:25%;opacity:.4}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.tile-grid,.publish-pipeline){grid-template-columns:repeat(2,minmax(0,1fr))!important}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-cards,.vertical-grid,.mcp-grid,.three-track,.cr-esdp-methods,.cr-esdp-paths){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:767px){#main:is(:has(#application-framework),:has(#at-a-glance))> .container,#main:is(:has(#application-framework),:has(#at-a-glance))>section.container,#main:is(:has(#application-framework),:has(#at-a-glance))> .container-fluid>.container,#main:is(:has(#application-framework),:has(#at-a-glance)) .full-width-content>.container{width:calc(100% - 40px)!important}#main:is(:has(#application-framework),:has(#at-a-glance))> .container.hero-block{min-height:0;padding:44px 20px 52px!important}#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block::after{display:none}#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block h1{font-size:clamp(39px,10.5vw,54px)!important}#main:is(:has(#application-framework),:has(#at-a-glance))> .hero-block .hero-sub{font-size:16px!important}#main:is(:has(#application-framework),:has(#at-a-glance))> :is(.container,section.container):not(.hero-block){padding-block:52px!important}#main:is(:has(#application-framework),:has(#at-a-glance))>.container-fluid{padding:52px 0!important}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h2,.section-title,.wide-card-head){font-size:35px!important}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(h3,.low-width){font-size:25px!important}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-cards,.vertical-grid,.mcp-grid,.tile-grid,.three-track,.cr-esdp-methods,.cr-esdp-paths,.publish-pipeline){grid-template-columns:1fr!important}#main:is(:has(#application-framework),:has(#at-a-glance)) :is(.concrete-card,.vertical-card,.mcp-tool,.tile,.track-card,.cr-esdp-card,.pipe-step){padding:25px!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .vertical-card .cr-photo-frame{margin:-25px -25px 25px}#main:is(:has(#application-framework),:has(#at-a-glance)) .architecture-block{padding:22px!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple{padding:52px 20px!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card{padding:52px 0!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box>.wide-card .d-flex{display:block!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .hawai-box .flexbox-right{margin-top:25px}#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-developer-hero{display:block}#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-developer-hero .cr-photo-frame{margin-top:30px}#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-section-nav{gap:8px}#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-esdp-section-nav .cr-esdp-nav-label{flex-basis:100%;margin:0!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-table-scroll{margin-inline:-20px;max-width:calc(100% + 40px)}#main:is(:has(#application-framework),:has(#at-a-glance)) .comparison-table{min-width:620px}#main:is(:has(#application-framework),:has(#at-a-glance)) .row{row-gap:16px}#main:is(:has(#application-framework),:has(#at-a-glance)) .hero-ctas a{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){#main:is(:has(#application-framework),:has(#at-a-glance)) :is(a,button){transition:none!important}}

@media(max-width:767px){#main:is(:has(#application-framework),:has(#at-a-glance)) .section-title-bar{display:block!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .section-title-bar>*{width:100%!important;min-width:0!important;max-width:100%!important}#main:is(:has(#application-framework),:has(#at-a-glance)) .section-title-bar a{margin-top:18px!important}}


#main:is(:has(#application-framework),:has(#at-a-glance)) .container.wide-card.wide-card-purple{background:#071f38!important;border:0!important;border-bottom:1px solid #34516b!important}

/* Tighten legacy product accents to the Astra-06 palette. */
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-capabilities .cr-cap::before{background:#e9efff!important;border-bottom:1px solid #cdd9ff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-capabilities .cr-cap>.platform-icon{color:#1847ed!important;background:#fff!important;border-radius:0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .cr-capabilities .cr-cap>.badge{color:#173aa9!important;background:#fff!important;border-color:#cdd9ff!important;border-radius:0!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .publish-pipeline .pipe-step .cr-h4look{color:#171a20!important;font-size:21px!important;letter-spacing:-.035em!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .publish-pipeline .pipe-step::before{background:#1847ed!important;border-radius:0!important;box-shadow:none!important;color:#fff!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .publish-pipeline::before{display:none!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) .wide-card-purple>a{color:#72e5ef!important}
/* Match each information pattern to its actual item count. */
#main:has(#application-framework) .first-container .concrete-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.inner-page.page-solutions main.cr-inner.astra-core .cr-esdp-paths{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(300px,.65fr)!important;gap:15px 70px!important;align-items:start!important;text-align:left!important}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar>.headers-bordered{grid-column:1/-1!important;grid-row:1!important}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar>h2{grid-column:1!important;grid-row:2/4!important;max-width:720px!important;margin:0!important}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar>p{grid-column:2!important;grid-row:2!important;margin:0!important;max-width:520px!important;text-align:left!important}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar>a{grid-column:2!important;grid-row:3!important;justify-self:start!important;margin:0!important}
body.inner-page.page-developers main.cr-inner.astra-core .tile-grid>.tile:last-child{grid-column:1/-1!important;background:#f3f5f8!important}
body.inner-page.page-developers main.cr-inner.astra-core .tile-grid>.tile:last-child ul{columns:2;max-width:950px}
@media(max-width:767px){#main:has(#application-framework) .first-container .concrete-cards,body.inner-page.page-solutions main.cr-inner.astra-core .cr-esdp-paths{grid-template-columns:1fr!important}body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar{display:block!important}body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar>*{width:100%!important;max-width:100%!important;margin-bottom:18px!important}body.inner-page.page-developers main.cr-inner.astra-core .tile-grid>.tile:last-child{grid-column:auto!important}body.inner-page.page-developers main.cr-inner.astra-core .tile-grid>.tile:last-child ul{columns:1}}
body.inner-page.page-solutions main.cr-inner.astra-core .architecture-link .section-title-bar{width:100%!important;max-width:none!important}
#main:is(:has(#application-framework),:has(#at-a-glance)) code{color:#173aa9!important;background:#e9efff!important;padding:2px 5px;border-radius:0!important;font:500 .88em/1.5 'JetBrains Mono',monospace!important;overflow-wrap:anywhere}
#main:is(:has(#application-framework),:has(#at-a-glance)) .core-scroll-cue{display:none!important}
@media(max-width:767px){#main:is(:has(#application-framework),:has(#at-a-glance)) .core-scroll-cue{display:flex!important;align-items:center;justify-content:space-between;gap:14px;width:100%;max-width:none;margin:18px 0 0!important;padding:10px 12px!important;border-left:3px solid #1847ed;background:#e9efff;color:#173aa9!important;font:600 11px/1.5 'JetBrains Mono',monospace!important;letter-spacing:.04em;text-transform:uppercase}#main:is(:has(#application-framework),:has(#at-a-glance)) .core-scroll-cue+ .cr-table-scroll{margin-top:0!important}}

/* Features and Platform visual audit, 2026-10-03.
   The legacy capability-card grid in site.css is for the source design and
   conflicts with Astra's card header/body markup. Keep these overrides scoped. */
#main:has(#at-a-glance) .cr-capabilities .concrete-card.cr-cap{
  display:flex!important;flex-direction:column;gap:0!important;padding:0!important;
  min-width:0!important;background:#fff!important;
}
#main:has(#at-a-glance) .cr-capabilities .cr-cap::before{
  content:none!important;display:none!important;
}
#main:has(#at-a-glance) .cr-cap-head{
  display:grid;grid-template-columns:44px minmax(0,1fr);
  grid-template-areas:"icon kicker" "icon title" "status status";
  grid-template-rows:auto 1fr auto;column-gap:16px;align-items:start;
  min-height:164px;padding:25px 27px 23px;background:#e9efff;
  border-bottom:1px solid #cdd9ff;
}
#main:has(#at-a-glance) .cr-cap-head .platform-icon{
  grid-area:icon;display:flex!important;align-items:center;justify-content:center;
  width:44px!important;height:44px!important;min-height:44px!important;
  margin:0!important;background:#fff!important;border:1px solid #cdd9ff;border-radius:0!important;
}
#main:has(#at-a-glance) .cr-cap-head .platform-icon svg{
  display:block;width:25px!important;height:25px!important;flex:none;
}
#main:has(#at-a-glance) .cr-cap-head .badge{
  grid-area:kicker;display:block!important;justify-self:start;align-self:start;
  width:auto!important;margin:0 0 9px!important;padding:0!important;
  border:0!important;background:transparent!important;color:#173aa9!important;
  font:600 10px/1.45 'JetBrains Mono',monospace!important;letter-spacing:.09em!important;
}
#main:has(#at-a-glance) .cr-cap-head h3{
  grid-area:title;align-self:start;max-width:none!important;
  margin:0!important;font-size:21px!important;line-height:1.22!important;
}
#main:has(#at-a-glance) .cr-cap-head .cr-badge{
  grid-area:status;justify-self:start;align-self:end;margin:13px 0 0!important;
}
#main:has(#at-a-glance) .cr-cap-body{
  display:flex;flex:1;flex-direction:column;align-items:flex-start;
  min-width:0;padding:22px 27px 25px;background:#fff;
}
#main:has(#at-a-glance) .cr-cap-body p{
  max-width:none!important;margin:0 0 22px!important;font-size:14px!important;
  line-height:1.6!important;
}
#main:has(#at-a-glance) .cr-cap-body .card-link{
  margin-top:auto!important;align-self:flex-start!important;font-size:13px!important;
}

/* Platform page: the generic direct-child section padding had expanded the
   in-page navigation and small introduction sections beyond their content. */
#main:has(#application-framework)>.container.cr-esdp-section-nav{
  padding:16px 0!important;margin:0 auto!important;gap:9px 11px;
}
#main:has(#application-framework)>.container.cr-esdp-section-nav .cr-esdp-nav-label{
  width:100%;flex-basis:100%;margin:0 0 3px!important;
}
#main:has(#application-framework)>.container.cr-esdp-section{
  padding:48px 0!important;
}
#main:has(#application-framework)>.container.architecture-block{
  margin:28px auto!important;padding:42px 44px!important;
}
#main:has(#application-framework)>.container.architecture-block img{
  max-height:420px;
}
#main:has(#application-framework)>.container-fluid{
  padding:52px 0!important;
}
#main:has(#application-framework) .first-container .concrete-cards{
  margin-top:22px!important;
}
#main:has(#application-framework) .hawai-box>.wide-card.no-padding{
  margin:0 auto!important;padding:52px 0!important;
}
#main:has(#application-framework) .hawai-box .mid-much-padding-top{
  padding:42px 0!important;
}
#main:has(#application-framework) .hawai-box .mid-much-padding-top .row:first-child{
  margin-bottom:34px!important;padding-bottom:34px!important;
  border-bottom:1px solid #34516b;
}
#main:has(#application-framework) .hawai-box>.wide-card.wide-card-purple{
  margin:0 auto!important;padding:40px 0!important;
}
#main:has(#application-framework) .hawai-box>.wide-card.wide-card-purple + .wide-card-purple{
  border-top:1px solid #34516b!important;
}
#main:has(#application-framework)>.container:has(>.center-align){
  padding:52px 0!important;
}
#main:has(#application-framework)>.container:has(>.center-align) .center-align{
  display:grid;grid-template-columns:minmax(300px,.76fr) minmax(0,1fr);
  grid-template-rows:auto auto auto;gap:14px 7%;align-items:center;text-align:left;padding:0!important;
}
#main:has(#application-framework)>.container:has(>.center-align) .center-align>br{display:none}
#main:has(#application-framework)>.container:has(>.center-align) .center-align>img{
  grid-column:1;grid-row:1/4;justify-self:center;width:100%;max-width:450px;
  max-height:355px;max-width:450px!important;margin:0!important;
}
#main:has(#application-framework)>.container:has(>.center-align) .center-align>h3{
  grid-column:2;grid-row:1;margin:0!important;
}
#main:has(#application-framework)>.container:has(>.center-align) .center-align>p{
  grid-column:2;grid-row:2;max-width:none!important;margin:0!important;
}
#main:has(#application-framework)>.container:has(>.center-align) .center-align>a{
  grid-column:2;grid-row:3;justify-self:start;
}
@media(max-width:767px){
  #main:has(#at-a-glance) .cr-cap-head{
    min-height:148px;padding:23px 23px 20px;column-gap:14px;
  }
  #main:has(#at-a-glance) .cr-cap-body{padding:21px 23px 23px}
  #main:has(#application-framework)>.container.cr-esdp-section-nav{
    padding:16px 0!important;gap:8px;
  }
  #main:has(#application-framework)>.container.cr-esdp-section{
    padding:36px 0!important;
  }
  #main:has(#application-framework)>.container.architecture-block{
    margin:24px auto!important;padding:28px 22px!important;
  }
  #main:has(#application-framework)>.container-fluid{
    padding:42px 0!important;
  }
  #main:has(#application-framework) .hawai-box>.wide-card.no-padding{
    padding:40px 0!important;
  }
  #main:has(#application-framework) .hawai-box .mid-much-padding-top{
    padding:34px 0!important;
  }
  #main:has(#application-framework) .hawai-box .mid-much-padding-top .row:first-child{
    margin-bottom:28px!important;padding-bottom:28px!important;
  }
  #main:has(#application-framework) .hawai-box>.wide-card.wide-card-purple{
    padding:34px 0!important;
  }
  #main:has(#application-framework)>.container:has(>.center-align){
    padding:44px 0!important;
  }
  #main:has(#application-framework)>.container:has(>.center-align) .center-align{
    display:flex;flex-direction:column;gap:15px;align-items:flex-start;text-align:left;
  }
  #main:has(#application-framework)>.container:has(>.center-align) .center-align>img{
    max-width:100%!important;max-height:300px;align-self:center;margin:0 0 8px!important;
  }
  #main:has(#application-framework)>.container:has(>.center-align) .center-align>a{
    align-self:flex-start;
  }
}

#main:has(#application-framework) .cr-architecture-image{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
#main:has(#application-framework) .cr-architecture-scroll-hint{display:none}
@media(max-width:767px){#main:has(#application-framework) .cr-architecture-image{border:1px solid #cdd8e6;background:#f3f5f8}#main:has(#application-framework) .cr-architecture-image img{width:680px!important;max-width:none!important;max-height:none!important;margin:0!important}#main:has(#application-framework) .cr-architecture-scroll-hint{display:block;margin:11px 0 3px!important;color:#505660!important;font-size:12px!important;line-height:1.5!important;text-align:left}}

/* Platform: authoring choices, application runtime, and controls stay visually distinct. */
#main:has(#application-framework) > .container.platform-paths {
  padding: 52px 0 !important;
}
#main:has(#application-framework) .platform-path-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
#main:has(#application-framework) .platform-path {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 31px 34px 33px;
  background: #f4f6f9;
  border: 1px solid #d7dfe9;
  border-top: 4px solid #1847ed;
}
#main:has(#application-framework) .platform-path:nth-child(2) {
  background: #f0f7f5;
  border-top-color: #007d73;
}
#main:has(#application-framework) .platform-path-kicker {
  display: block;
  margin-bottom: 18px;
  color: #1847ed;
  font: 600 10px/1.4 'JetBrains Mono', monospace;
  letter-spacing: .12em;
}
#main:has(#application-framework) .platform-path:nth-child(2) .platform-path-kicker {
  color: #007d73;
}
#main:has(#application-framework) .platform-path h2 {
  max-width: none !important;
  margin: 0 0 20px !important;
  font-size: clamp(29px, 2.4vw, 36px) !important;
  line-height: 1.16 !important;
  letter-spacing: -.045em !important;
  scroll-margin-top: 115px;
}
#main:has(#application-framework) .platform-path p {
  max-width: none;
  margin: 0 0 13px !important;
  font-size: 14px !important;
  line-height: 1.68 !important;
}
#main:has(#application-framework) .platform-path p:last-child {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
#main:has(#application-framework) .platform-path a {
  font-size: 13px !important;
  font-weight: 700;
}

/* The architecture is an in-page diagram, sized for reading here. */
#main:has(#application-framework) > .container.platform-architecture-block {
  margin: 26px auto !important;
  padding: 44px 42px !important;
  background: #f3f5f8 !important;
  border: 1px solid #d7dfe9 !important;
  scroll-margin-top: 105px;
}
#main:has(#application-framework) .platform-architecture-intro {
  max-width: 1020px;
  margin-bottom: 26px;
}
#main:has(#application-framework) .platform-architecture-intro h2 {
  margin-bottom: 15px !important;
  scroll-margin-top: 105px;
}
#main:has(#application-framework) .platform-architecture-intro p {
  max-width: 980px;
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
#main:has(#application-framework) .platform-architecture-map {
  padding: 20px;
  background: #fff;
  border: 1px solid #d7dfe9;
}
#main:has(#application-framework) .platform-architecture-flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1fr);
  align-items: stretch;
}
#main:has(#application-framework) .platform-architecture-stage {
  min-width: 0;
  display: flex;
  flex-direction: column;
  border: 1px solid #d9e1ee;
  background: #fff;
}
#main:has(#application-framework) .platform-architecture-stage-head {
  min-height: 176px;
  padding: 23px 25px 22px;
  background: #1847ed;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-stage--run .platform-architecture-stage-head {
  background: #007d73;
}
#main:has(#application-framework) .platform-architecture-stage-head > span,
#main:has(#application-framework) .platform-architecture-govern-title > span {
  display: block;
  margin-bottom: 10px;
  color: #e7eeff;
  font: 600 10px/1.5 'JetBrains Mono', monospace;
  letter-spacing: .1em;
}
#main:has(#application-framework) .platform-architecture-stage-head h3,
#main:has(#application-framework) .platform-architecture-govern-title h3 {
  margin: 0 0 7px !important;
  color: #fff !important;
  font-size: 32px !important;
  line-height: 1.06 !important;
  letter-spacing: -.03em !important;
}
#main:has(#application-framework) .platform-architecture-stage-head p {
  max-width: none;
  margin: 0 !important;
  color: #e7eeff !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}
#main:has(#application-framework) .platform-architecture-stage-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 19px;
}
#main:has(#application-framework) .platform-architecture-method {
  display: grid;
  grid-template-columns: minmax(145px, .75fr) minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  min-height: 67px;
  padding: 12px 14px;
  background: #f2f5fc;
  border-left: 3px solid #1847ed;
}
#main:has(#application-framework) .platform-architecture-method strong,
#main:has(#application-framework) .platform-architecture-instance strong,
#main:has(#application-framework) .platform-architecture-release strong,
#main:has(#application-framework) .platform-architecture-output strong,
#main:has(#application-framework) .platform-architecture-govern-items strong,
#main:has(#application-framework) .platform-architecture-otherstack strong {
  color: #17212d;
  font: 700 14px/1.3 Inter, Arial, sans-serif;
}
#main:has(#application-framework) .platform-architecture-method span {
  color: #4d5969;
  font-size: 12px;
  line-height: 1.5;
}
#main:has(#application-framework) .platform-architecture-output {
  margin-top: auto;
  padding: 15px 17px;
  background: #e7edff;
  border: 1px solid #c6d4ff;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-output > span,
#main:has(#application-framework) .platform-architecture-instance > span,
#main:has(#application-framework) .platform-architecture-otherstack > span {
  display: block;
  margin-bottom: 8px;
  color: #1847ed;
  font: 600 10px/1.4 'JetBrains Mono', monospace;
  letter-spacing: .09em;
}
#main:has(#application-framework) .platform-architecture-output strong,
#main:has(#application-framework) .platform-architecture-instance strong {
  display: block;
  font-size: 20px;
}
#main:has(#application-framework) .platform-architecture-output p,
#main:has(#application-framework) .platform-architecture-instance p,
#main:has(#application-framework) .platform-architecture-release p {
  max-width: none;
  margin: 7px 0 0 !important;
  color: #4d5969 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
#main:has(#application-framework) .platform-architecture-arrow {
  align-self: center;
  color: #1847ed;
  font: 700 29px/1 Inter, Arial, sans-serif;
  text-align: center;
}
#main:has(#application-framework) .platform-architecture-instance {
  flex: 1;
  min-height: 232px;
  padding: 23px 21px;
  background: #e7f5f2;
  border: 1px solid #b6dfd8;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-instance > span {
  color: #00675f;
}
#main:has(#application-framework) .platform-architecture-release {
  padding: 18px 20px;
  background: #f0f7f5;
  border-left: 3px solid #007d73;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-govern {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  margin-top: 16px;
  border: 1px solid #d8c7e6;
}
#main:has(#application-framework) .platform-architecture-govern-title {
  padding: 23px 24px;
  background: #713d94;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-govern-title > span {
  color: #f1e9f8;
}
#main:has(#application-framework) .platform-architecture-govern-items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  background: #f8f3fb;
}
#main:has(#application-framework) .platform-architecture-govern-items > div {
  padding: 22px 19px;
  border-left: 1px solid #e2d4ec;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-govern-items strong,
#main:has(#application-framework) .platform-architecture-govern-items span {
  display: block;
}
#main:has(#application-framework) .platform-architecture-govern-items span {
  margin-top: 7px;
  color: #5a5360;
  font-size: 12px;
  line-height: 1.55;
}
#main:has(#application-framework) .platform-architecture-otherstack {
  margin-top: 16px;
  padding: 19px 22px;
  background: #f4f7fa;
  border: 1px dashed #a9bdd1;
  text-align: left;
}
#main:has(#application-framework) .platform-architecture-otherstack > span {
  color: #375573;
}
#main:has(#application-framework) .platform-architecture-otherstack > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
#main:has(#application-framework) .platform-architecture-otherstack > div > span {
  color: #1847ed;
  font: 700 20px/1 Inter, Arial, sans-serif;
}
#main:has(#application-framework) .platform-architecture-otherstack p {
  max-width: none;
  margin: 8px 0 0 !important;
  color: #4d5969 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}

/* Partner relationships are four equal controls; old button margins cannot force an orphan tab. */
#main:has(#application-framework) .hawai-box .wide-card-head {
  font-size: clamp(33px, 3vw, 44px) !important;
}
#main:has(#application-framework) .hawai-box .tab-btns {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px !important;
  width: 100%;
  margin: 23px 0 !important;
}
#main:has(#application-framework) .hawai-box .tab-btns [role="tab"] {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 10px 7px !important;
  white-space: nowrap;
  text-align: center;
  font-size: 11px !important;
}
@media (max-width: 1199px) {
  #main:has(#application-framework) .hawai-box .tab-btns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 800px) {
  #main:has(#application-framework) .platform-path-grid {
    grid-template-columns: 1fr;
  }
  #main:has(#application-framework) > .container.platform-paths {
    padding: 35px 0 !important;
  }
  #main:has(#application-framework) .platform-path {
    padding: 25px 23px;
  }
  #main:has(#application-framework) .platform-path h2 {
    font-size: 29px !important;
  }
  #main:has(#application-framework) > .container.platform-architecture-block {
    padding: 29px 21px !important;
  }
  #main:has(#application-framework) .platform-architecture-map {
    padding: 12px;
  }
  #main:has(#application-framework) .platform-architecture-flow {
    grid-template-columns: 1fr;
  }
  #main:has(#application-framework) .platform-architecture-arrow {
    padding: 9px;
    transform: rotate(90deg);
  }
  #main:has(#application-framework) .platform-architecture-stage-head {
    min-height: 0;
  }
  #main:has(#application-framework) .platform-architecture-govern {
    grid-template-columns: 1fr;
  }
  #main:has(#application-framework) .platform-architecture-govern-items {
    grid-template-columns: 1fr;
  }
  #main:has(#application-framework) .platform-architecture-govern-items > div {
    padding: 15px 19px;
    border-left: 0;
    border-top: 1px solid #e2d4ec;
  }
  #main:has(#application-framework) .platform-architecture-method {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}
@media (max-width: 420px) {
  #main:has(#application-framework) .platform-architecture-stage-head {
    padding: 20px;
  }
  #main:has(#application-framework) .platform-architecture-stage-body {
    padding: 12px;
  }
  #main:has(#application-framework) .platform-architecture-otherstack > div {
    gap: 5px 10px;
  }
  #main:has(#application-framework) .platform-architecture-otherstack > div > span {
    transform: rotate(90deg);
  }
}
#main:has(#application-framework) .platform-path:nth-child(2) p:last-child {
  margin-top: auto !important;
}
#main:has(#application-framework) .platform-architecture-services {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 20px;
}
#main:has(#application-framework) .platform-architecture-services span {
  padding: 7px 9px;
  background: #fff;
  border: 1px solid #aed7d0;
  color: #00675f;
  font: 700 11px/1.3 Inter, Arial, sans-serif;
}
@media (max-width: 800px) {
  #main:has(#application-framework) .platform-architecture-instance {
    min-height: 0;
  }
}

#main:has(#application-framework) .platform-path:first-child p:last-child { margin-top: 0 !important; }
#main:has(#application-framework) .platform-architecture-method span { font-size: 13px; }
#main:has(#application-framework) .platform-architecture-output p,
#main:has(#application-framework) .platform-architecture-instance p,
#main:has(#application-framework) .platform-architecture-release p { font-size: 13px !important; }
#main:has(#application-framework) .platform-architecture-govern-items span { font-size: 13px; }

/* The CMS renders path cards as consecutive root sections. Align them as the approved two-column prototype without crossing CMS node boundaries. */
#main:has(#application-framework) > #application-framework, #main:has(#application-framework) > #development-environment {width:calc((min(100% - 112px,1280px) - 18px)/2)!important;max-width:631px!important;min-height:333px;margin-block:52px 26px!important;}
#main:has(#application-framework) > #application-framework {float:left;margin-left:max(56px,calc((100% - 1280px)/2))!important;margin-right:0!important;}
#main:has(#application-framework) > #development-environment {float:right;margin-right:max(56px,calc((100% - 1280px)/2))!important;margin-left:0!important;background:#f0f7f5!important;border-top-color:#007d73!important;}
#main:has(#application-framework) > #development-environment .platform-path-kicker {color:#007d73!important;}
#main:has(#application-framework) > #architecture {clear:both;}
#main:has(#application-framework) > .cr-esdp-section-nav {clear:both;}
@media(max-width:800px){#main:has(#application-framework) > #application-framework,#main:has(#application-framework) > #development-environment {float:none;width:calc(100% - 40px)!important;max-width:none!important;min-height:0;margin:25px auto!important;}}
/* Fallback where template body classes are absent in the rendered Site. */
#main:is(:has(#application-framework),:has(#at-a-glance)) .headers-bordered {color:#1847ed!important;font-family:'JetBrains Mono',monospace!important;}

/* Make all six capability headers fill their cards. Legacy site.css left the first two at intrinsic width. */
#main:has(#at-a-glance) .cr-capabilities .cr-cap-head {width:100%!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important;}
@media (min-width:1200px) {
  #main:has(#application-framework) > #application-framework,
  #main:has(#application-framework) > #development-environment {min-height:443px!important;}
}
/* CMS path cards are direct children of #main; generic direct-section padding and the missing grid-parent :first-child rule must not override the approved cards. */
#main:has(#application-framework) > #application-framework,
#main:has(#application-framework) > #development-environment {
  padding:31px 34px 33px!important;
  min-height:369px!important;
}
#main:has(#application-framework) > #application-framework p:last-child {
  margin-top:0!important;
}
@media (max-width:800px) {
  #main:has(#application-framework) > #application-framework,
  #main:has(#application-framework) > #development-environment {
    padding:25px 23px!important;
    min-height:446px!important;
  }
}
/* Full-page Platform flow matched against approved prototype at 1440 and 390. */
#main:has(#application-framework) > .hero-block { display:block!important; }
#main:has(#application-framework) > .hero-block .hero-sub { max-width:850px!important; }
#main:has(#application-framework) > #application-framework, #main:has(#application-framework) > #development-environment { margin-bottom:79px!important; }
#main:has(#application-framework) > nav.container.cr-esdp-section-nav { padding:16px 0!important; }
#main:has(#application-framework) > #architecture.platform-architecture-block { margin-top:26px!important; padding:44px 42px!important; }
@media(max-width:800px){
 #main:has(#application-framework) > #application-framework { margin-top:35px!important; margin-bottom:0!important; }
 #main:has(#application-framework) > #development-environment { margin-top:18px!important; margin-bottom:0!important; }
 #main:has(#application-framework) > #architecture.platform-architecture-block { margin-top:62px!important; padding:29px 21px!important; }
}

/* Restore the split Platform hero of the HTTP-served Astra-06 reference. */
#main:has(#application-framework) > .hero-block { display:grid!important; }
#main:has(#application-framework) > .hero-block .hero-sub { max-width:none!important; }