/* v7: diagram first, request/improvement paths second, matrices on demand. */.editorial-key { display: flex; align-items: baseline; gap: 16px; margin: 22px 0 0; padding: 11px 14px; border: 1px solid rgba(173,126,37,.32); border-radius: 6px; background: #FFF9EA; color: #6B5327; font-size: 11px; line-height: 1.5; } .editorial-key strong { flex: none; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; } .editorial-review { position: relative; outline: 1px dashed rgba(173,126,37,.55); outline-offset: 7px; } .editorial-review::after { content: attr(data-review); position: absolute; z-index: 8; top: -27px; right: 0; padding: 4px 8px; border-radius: 999px; background: #F3D996; color: #5F481D; font-size: 9px; font-weight: 700; line-height: 1.3; letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; } .architecture-page .product-hero { padding-bottom: 30px; } .architecture-figure { padding: 18px 20px 14px; border: 1px solid var(--rule); border-radius: 10px; background: #F8FAF6; box-shadow: 0 22px 52px rgba(30,26,21,.045); } .architecture-figure .product-diagram { border: 0; background: transparent; padding: 0; } .architecture-figure .diagram-caption { margin: 0; padding: 10px 0 0; } .path-summary { padding-top: 46px; padding-bottom: 43px; } .path-summary .detail-heading { margin-bottom: 28px; } .path-summary .v6-result-grid { gap: 14px; padding: 0; border: 0; } .path-summary .v6-result-grid article { padding: 27px 28px 29px; border: 1px solid var(--rule); border-radius: 7px; background: var(--paper); } .path-summary .v6-result-grid article:first-child { border-color: #C9D8BB; background: #F3F6EF; } .path-summary .v6-result-grid h3::before { display: block; margin-bottom: 22px; color: #577247; font-size: 9px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; } .path-summary .v6-result-grid article:first-child h3::before { content: "Synchronous"; } .path-summary .v6-result-grid article:last-child h3::before { content: "Asynchronous"; } .presentation-disclosure { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); } .presentation-disclosure > summary { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 42px; align-items: center; padding: 27px 0 29px; list-style: none; cursor: pointer; } .presentation-disclosure > summary::-webkit-details-marker { display: none; } .presentation-disclosure > summary::marker { content: ""; } .disclosure-summary-copy { display: grid; grid-template-columns: minmax(0,.83fr) minmax(0,1.17fr); gap: 64px; align-items: end; } .disclosure-summary-copy h2 { max-width: 21ch; font-size: clamp(29px,3vw,42px); font-weight: 700; line-height: 1.04; letter-spacing: -.04em; } .disclosure-summary-copy p { max-width: 53ch; font-size: 15px; line-height: 1.65; } .disclosure-control { display: inline-flex; align-items: center; gap: 13px; min-width: max-content; color: #506b3d; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; } .disclosure-control i { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(111,168,76,.45); border-radius: 50%; font-style: normal; font-size: 18px; font-weight: 400; line-height: 1; transition: transform .25s ease, background .25s ease; } .presentation-disclosure[open] .disclosure-control i { transform: rotate(45deg); background: #F1F5EA; } .presentation-disclosure > summary:hover .disclosure-control i { background: #F1F5EA; } .disclosure-body { padding: 0 0 34px; } .module-options .process-grid { counter-reset: module-choice; gap: 0; padding: 0; overflow: hidden; border: 1px solid var(--rule); border-radius: 8px; background: #F8FAF6; } .module-options .process-item { counter-increment: module-choice; min-width: 0; padding: 27px 25px 29px; } .module-options .process-item + .process-item { border-left: 1px solid var(--rule); } .module-options .process-item::before { content: "Option 0" counter(module-choice); display: block; margin-bottom: 24px; color: #577247; font-size: 9px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; } @media (max-width: 900px) { .architecture-figure {  padding: 12px; }  .disclosure-summary-copy {  grid-template-columns: 1fr;  gap: 12px; }  .module-options .process-grid {  grid-template-columns: repeat(2,minmax(0,1fr)); }  .module-options .process-item + .process-item {  border-left: 0; }  .module-options .process-item:nth-child(even) {  border-left: 1px solid var(--rule); }  .module-options .process-item:nth-child(n+3) {  border-top: 1px solid var(--rule); } } @media (max-width: 700px) { .editorial-key {  align-items: flex-start;  flex-direction: column;  gap: 3px; }  .editorial-review::after {  right: 4px;  font-size: 8px; }  .architecture-figure {  padding: 8px; }  .path-summary .v6-result-grid {  grid-template-columns: 1fr; }  .presentation-disclosure > summary {  grid-template-columns: 1fr;  gap: 18px; }  .disclosure-control {  justify-self: start; }  .module-options .process-grid {  grid-template-columns: 1fr; }  .module-options .process-item + .process-item, .module-options .process-item:nth-child(even) {  border-left: 0;  border-top: 1px solid var(--rule); } } @media (prefers-reduced-motion: reduce) { .disclosure-control i {  transition: none; } } @media print { .presentation-disclosure:not([open]) > .disclosure-body {  display: block !important; }  .disclosure-control {  display: none; } }

/* v8: the three statements share one row from 1100px; between 901 and 1099px the grid stays two-up and the trailing statement centres. */@media (min-width: 1100px) { .two-notes {  grid-template-columns: repeat(3, minmax(0,1fr)); } } @media (min-width: 901px) and (max-width: 1099px) { .two-notes > article:nth-child(3) {  grid-column: 1 / -1;  text-align: center; }  .two-notes > article:nth-child(3) p {  margin-inline: auto; } }

.site-header{gap:20px}.primary-nav{gap:18px;font-size:10px;letter-spacing:.1em}
.mobile-menu[open]>nav{max-height:calc(100dvh - 95px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:1199px){.site-header .primary-nav{display:none}.site-header .mobile-menu{display:block}}
@media(min-width:1200px){.site-header .primary-nav{display:flex}.site-header .mobile-menu{display:none}}
