/* Praxis v4: a dimensional research dossier and a quieter, more deliberate grid. */
.concept-v4 {
  --v4-forest: #173f30;
  --v4-sage: #a5bfa5;
  --v4-paper: #f7f9ef;
}
.concept-v4 .site-header {
  height: 86px;
}
.concept-v4 .desktop-nav {
  gap: 28px;
}
.concept-v4 .desktop-nav a {
  position: relative;
  padding: 12px 0;
}
.concept-v4 .desktop-nav a:after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #c8f879;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s;
}
.concept-v4 .desktop-nav a:is(:hover, :focus-visible):after {
  transform: scaleX(1);
}
.concept-v4 .header-cta {
  background: #ecf6dd;
  color: #163627;
  border: 1px solid #e8f5d5;
  border-radius: 7px;
  font-weight: 650;
  padding: 10px 12px 10px 17px;
  gap: 18px;
}
.concept-v4 .header-cta > span {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  background: #d3e6bb;
  border-radius: 4px;
  transition: background 0.2s;
}
.concept-v4 .header-cta:hover {
  background: #d8f1b2;
  color: #102b20;
}
.concept-v4 .header-cta:hover > span {
  background: #c3e794;
}
.concept-v4 .button-lime {
  position: relative;
  overflow: hidden;
  border: 1px solid #d6ffa4;
  border-radius: 7px;
  background: linear-gradient(135deg, #dbffa5, #bfee79);
  box-shadow:
    inset 0 1px 0 #ffffff80,
    0 3px 0 #46612930,
    0 8px 24px #b1e5610a;
  padding: 17px 19px 17px 22px;
  gap: 24px;
}
.concept-v4 .button-lime:before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: -100% 0;
  width: 45%;
  background: linear-gradient(90deg, transparent, #ffffff55, transparent);
  transform: translateX(-180%) rotate(22deg);
}
.concept-v4 .button-lime:is(:hover, :focus-visible):before {
  animation: button-glint 0.65s ease-out;
}
.concept-v4 .button-lime > span {
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
}
.concept-v4 .hero-chapter {
  background:
    radial-gradient(ellipse at 78% 35%, #244b3026, transparent 48%), #0a1d17;
}
.concept-v4 .hero-light {
  top: 20px;
  right: -130px;
  height: 830px;
  width: 930px;
  opacity: 0.65;
  background: radial-gradient(ellipse, #96c98422, transparent 64%);
}
.concept-v4 .hero {
  padding-top: 72px;
  padding-bottom: 42px;
  gap: 40px;
  grid-template-columns: 1fr 1fr;
  min-height: 700px;
}
.concept-v4 .hero-copy {
  padding-top: 9px;
}
.concept-v4 .hero .eyebrow {
  color: #c4d8c8;
  font-size: 10px;
  letter-spacing: 1.5px;
  margin-bottom: 31px;
}
.concept-v4 .hero h1 {
  font-weight: 550;
  line-height: 1.07;
  font-size: 60px;
  letter-spacing: -3px;
}
.concept-v4 .title-muted {
  color: #adc5b5;
}
.concept-v4 .title-accent {
  color: #cbf68e;
}
.concept-v4 .hero-description {
  font-size: 16px;
  line-height: 1.85;
  margin: 29px 0 30px;
  color: #bed0c3;
}
.concept-v4 .hero-actions {
  gap: 24px;
}
.concept-v4 .hero-secondary {
  font-size: 12px;
}
.concept-v4 .hero-bottom {
  margin-top: 44px;
}
.concept-v4 .hero-bottom > span {
  font-size: 8px;
  letter-spacing: 1.3px;
}
.concept-v4 .hero-bottom p {
  font-size: 11px;
  color: #a5bdaa;
}
.concept-v4 .architecture {
  height: auto;
  margin-top: -8px;
}
.concept-v4 .scene-masthead {
  height: 30px;
  font-size: 8px;
  letter-spacing: 1px;
}
.concept-v4 .scene-label {
  color: #bfd5b2;
}
.concept-v4 .scene-edition {
  font-size: 6px;
  color: #8ba68f;
  letter-spacing: 0.6px;
}
.concept-v4 .scene-visual {
  height: 470px;
  perspective: 1400px;
}
.concept-v4 .scene-grid {
  opacity: 0.35;
  background-size: 26px 26px;
}
.concept-v4 .scene-halo {
  display: none;
}
.concept-v4 .scene-routes {
  opacity: 0.34;
}
.dossier-orbit {
  position: absolute;
  width: 113%;
  height: auto;
  left: -6%;
  top: -9px;
  pointer-events: none;
  stroke: #8cad8f;
  transform: rotateX(45deg) rotateZ(-18deg);
  opacity: 0.35;
}
.dossier-orbit-rings > circle {
  stroke-width: 0.5;
}
.orbit-ticks {
  stroke-width: 1;
  opacity: 0.5;
}
.dossier-orbit-signal {
  stroke: #d7ffa5;
  stroke-width: 1.2;
  opacity: 0.9;
  transform-origin: 300px 242px;
}
.dossier-orbit-signal circle {
  fill: #ddffad;
  stroke: none;
}
.concept-v4 .architecture.is-tracing .dossier-orbit-signal {
  animation: dossier-orbit-trace 1.35s cubic-bezier(0.16, 0.7, 0.3, 1);
}
.concept-v4 .architecture[data-scene] .object-plane {
  --plane-y: 0px;
  top: 0;
  left: 20%;
  width: 66%;
  height: 194px;
  padding: 21px 24px;
  border-radius: 10px;
  transform: translateY(var(--plane-y)) rotateX(38deg) rotateZ(-20deg);
  transition:
    transform 0.85s var(--ease),
    opacity 0.6s;
}
.concept-v4 .object-plane:after {
  background: linear-gradient(
    118deg,
    #ffffff28,
    transparent 35%,
    transparent 75%,
    #ffffff10
  );
  border-top: 1px solid #e5ffda66;
}
.concept-v4 .architecture[data-scene] .plane-source {
  --plane-y: 235px;
  background: linear-gradient(140deg, #bdd5ae, #7ea98d);
  color: #183c2d;
  border-color: #d7edc666;
  box-shadow:
    1px 2px 0 #c0d9ae,
    4px 5px 0 #6f8c72,
    6px 8px 0 #3c624c,
    6px 9px 0 #c9e5b336,
    12px 25px 35px #0004;
  opacity: 0.85;
}
.concept-v4 .architecture[data-scene] .plane-research {
  --plane-y: 131px;
  background: linear-gradient(135deg, #315e46, #173c2c);
  border-color: #a6c49199;
  color: #eef8df;
  box-shadow:
    1px 2px 0 #76966b,
    4px 5px 0 #315b3c,
    7px 8px 0 #123520,
    8px 10px 0 #e4ffd51a,
    16px 25px 35px #0004;
  opacity: 1;
}
.concept-v4 .architecture[data-scene] .plane-report {
  --plane-y: 26px;
  background: linear-gradient(125deg, #fbfff1, #dcebbf);
  color: #183c2b;
  border-color: #f3ffda;
  box-shadow:
    1px 2px 0 #f4ffd9,
    3px 4px 0 #b3c493,
    5px 6px 0 #e4efce,
    7px 8px 0 #739463,
    9px 11px 0 #d8e9b940,
    16px 30px 45px #020e0670;
  opacity: 1;
}
.concept-v4 .architecture[data-scene="sources"] .plane-source {
  --plane-y: 72px;
  opacity: 1;
  z-index: 4;
}
.concept-v4 .architecture[data-scene="sources"] .plane-research {
  --plane-y: 174px;
  opacity: 0.3;
  z-index: 2;
}
.concept-v4 .architecture[data-scene="sources"] .plane-report {
  --plane-y: 260px;
  opacity: 0.15;
  z-index: 1;
}
.concept-v4 .architecture[data-scene="research"] .plane-research {
  --plane-y: 77px;
  z-index: 4;
}
.concept-v4 .architecture[data-scene="research"] .plane-report {
  --plane-y: 178px;
  opacity: 0.28;
  z-index: 2;
}
.concept-v4 .architecture[data-scene="research"] .plane-source {
  --plane-y: 265px;
  opacity: 0.25;
  z-index: 1;
}
.concept-v4 .plane-report-title {
  font-size: 29px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.8px;
  margin-top: 21px;
}
.concept-v4 .plane-report-title > span {
  color: #54724b;
}
.concept-v4 .plate-topline {
  font-size: 9px;
  letter-spacing: 0.75px;
}
.concept-v4 .plate-topline .ui-icon {
  height: 18px;
  width: 18px;
}
.concept-v4 .plate-bottom {
  margin-top: 14px;
  font-size: 7px;
  letter-spacing: 0.7px;
}
.concept-v4 .plate-rule {
  margin-top: 15px;
}
.concept-v4 .plate-sources {
  gap: 7px;
  margin-top: 30px;
}
.concept-v4 .plate-sources span {
  color: #163d2a;
  background: #f0f9df70;
  border-color: #ebf6d955;
  font-size: 10px;
  padding: 10px;
}
.concept-v4 .research-core {
  gap: 19px;
  margin-top: 22px;
}
.concept-v4 .research-core-emblem {
  width: 58px;
  height: 58px;
  border-radius: 10px;
  background: linear-gradient(145deg, #f2ffd3, #abc978);
  border-color: #edffd4;
  box-shadow:
    2px 3px 0 #7a9b61,
    4px 6px 0 #0b291955,
    0 10px 15px #0002;
  transform: rotate(-5deg);
}
.concept-v4 .research-core-emblem:before {
  inset: -5px;
  border: 1px solid #d4efb233;
}
.engine-mark {
  width: 33px;
  height: 33px;
  fill: #294d31;
}
.concept-v4 .core-label {
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: -0.3px;
}
.concept-v4 .core-label span {
  color: #c1d6ad;
}
.concept-v4 .scene-node {
  z-index: 5;
  gap: 10px;
  padding: 11px 13px;
  background: linear-gradient(135deg, #244936, #143023);
  border: 1px solid #9dbf8644;
  border-radius: 8px;
  box-shadow:
    0 12px 22px #0002,
    inset 0 1px 0 #c9ebac15;
}
.concept-v4 .node-law {
  top: 205px;
  left: -6px;
}
.concept-v4 .node-brief {
  top: 137px;
  right: -4px;
}
.concept-v4 .scene-node .scene-node-icon {
  width: 29px;
  height: 33px;
  display: grid;
  place-items: center;
  background: #abc48a16;
  border: 1px solid #b0d38f30;
  border-radius: 5px;
}
.concept-v4 .scene-node .scene-node-copy {
  display: grid;
  gap: 3px;
  margin: 0;
}
.scene-node-copy strong {
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.5px;
  line-height: 1;
  color: #eaf3d9;
}
.scene-node-copy small {
  font-size: 8px;
  color: #c0d1b5;
}
.concept-v4 .foreground-result {
  top: 335px;
  left: 5%;
  right: 0;
  background: #f6f9ef;
  border: 1px solid #d2e0bf;
  border-radius: 9px;
  box-shadow:
    0 16px 32px #0004,
    0 0 0 5px #b3d59a0b,
    inset 0 1px 0 #fff;
}
.concept-v4 .result-topline {
  font-size: 8px;
  padding: 11px 15px;
  background: #e5edda80;
}
.concept-v4 .result-body {
  padding: 18px;
  gap: 15px;
}
.concept-v4 .result-body > div {
  min-width: 0;
}
.concept-v4 .result-title {
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: -0.4px;
}
.concept-v4 .result-kicker {
  font-size: 7px;
  margin: 0 0 7px;
  letter-spacing: 0.7px;
}
.concept-v4 .result-meta {
  font-size: 9px;
  gap: 7px;
  flex-wrap: wrap;
}
.concept-v4 .result-open {
  min-width: 44px;
  width: 44px;
  height: 44px;
  border-radius: 7px;
  background: #204631;
  color: #e8ffcc;
  border-color: #204631;
  box-shadow: 0 4px 7px #21452322;
}
.concept-v4 .result-open:hover {
  background: #3c6542;
  color: #fff;
}
.concept-v4 .scene-controls {
  margin: 26px 0 0 5%;
  padding: 5px;
  gap: 5px;
  background: #16322580;
  border-radius: 9px;
  border-color: #c1daab32;
}
.concept-v4 .scene-controls button {
  padding: 11px 10px;
  font-size: 12px;
  min-height: 45px;
  gap: 9px;
  border-radius: 5px;
  color: #bfd2bd;
}
.concept-v4 .scene-controls button[aria-pressed="true"] {
  background: #d6efb5;
  color: #1c3b25;
  box-shadow:
    inset 0 1px 0 #f0ffdd,
    0 3px 8px #0002;
}
.concept-v4 .scene-controls button[aria-pressed="true"] .ui-icon {
  color: #335732;
}
.concept-v4 .scene-instruction {
  margin: 12px 0 0;
  font-size: 8px;
  color: #abc5a3;
}
.concept-v4 .chapter-bottom {
  padding: 23px 0;
}
.concept-v4 .capability-ribbon {
  gap: 39px;
}
.concept-v4 .capability-ribbon > span {
  display: flex;
  align-items: center;
  gap: 12px;
}
.concept-v4 .capability-ribbon i {
  width: 38px;
  height: 40px;
  border-radius: 7px;
  background: linear-gradient(135deg, #9ecb8024, #aec38a0a);
  border: 1px solid #c0da9b32;
  box-shadow:
    inset 0 1px 0 #d9ffc611,
    0 2px 0 #0002;
}
.concept-v4 .capability-ribbon .ui-icon {
  width: 19px;
  height: 19px;
  stroke-width: 1.6;
}
.concept-v4 .capability-copy {
  display: grid;
  gap: 5px;
}
.concept-v4 .capability-copy strong {
  font-weight: 550;
  font-size: 12px;
  color: #dfedce;
}
.concept-v4 .capability-copy small {
  font-size: 9px;
  color: #9ab094;
}
/* More space for the work, less furniture around it. */
.concept-v4 .platform-section {
  padding-top: 91px;
  padding-bottom: 58px;
  background: linear-gradient(180deg, #f4f7f0, #fafbf7);
}
.concept-v4 .platform-heading {
  margin-bottom: 34px;
}
.concept-v4 .platform-heading h2 {
  font-size: 45px;
  line-height: 1.14;
  letter-spacing: -1.8px;
}
.concept-v4 .platform-heading > p {
  font-size: 15px;
  line-height: 1.8;
}
.concept-v4 .product-tabs {
  padding: 5px;
  border-radius: 9px;
  background: #e7ede0;
  border: 1px solid #dbe4d1;
  gap: 6px;
}
.concept-v4 .product-tab {
  min-height: 56px;
  border-radius: 5px;
  padding: 14px 18px;
  gap: 12px;
  font-size: 13px;
}
.concept-v4 .product-tab .tab-icon {
  background: #6486430b;
  width: 28px;
  height: 28px;
  padding: 5px;
  border-radius: 5px;
}
.concept-v4 .tab-indicator {
  border-radius: 5px;
  box-shadow: 0 2px 6px #1835150b;
}
/* Editorial case cards with original dimensional art. */
.concept-v4 .usecase-section {
  padding: 89px 0 96px;
  background: #f0f4e9;
}
.concept-v4 .usecase-heading {
  margin-bottom: 35px;
}
.concept-v4 .usecase-heading h2 {
  font-size: 44px;
  letter-spacing: -1.7px;
  line-height: 1.14;
}
.concept-v4 .usecase-heading h2 span {
  color: #587249;
}
.concept-v4 .usecase-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.concept-v4 .usecase-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  grid-template-rows: 34px 1fr 56px;
  gap: 14px 12px;
  min-height: 282px;
  padding: 23px 26px 0;
  border-radius: 11px;
  border: 1px solid #d0debf;
  background: linear-gradient(135deg, #fbfdf6, #f5f8ec);
  box-shadow: 0 2px 2px #274f2003;
  isolation: isolate;
}
.concept-v4 .usecase-card:hover {
  transform: translateY(-4px);
  border-color: #92b17e;
  box-shadow:
    0 20px 30px -24px #1d492e50,
    0 5px 9px #29482a08;
}
.concept-v4 .usecase-top {
  grid-column: 1/3;
  grid-row: 1;
  display: flex;
  gap: 10px;
  margin: 0;
}
.concept-v4 .case-type-icon {
  height: 29px;
  width: 29px;
  border-radius: 6px;
  background: #e6efdc;
  border-color: #d3e2c5;
}
.concept-v4 .case-type-icon .ui-icon {
  width: 16px;
  height: 16px;
}
.case-edition {
  font-size: 8px;
  letter-spacing: 1.1px;
  color: #627756;
}
.concept-v4 .usecase-arrow {
  margin-left: auto;
  color: #617858;
}
.concept-v4 .case-visual {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
  margin: -14px -6px -8px;
  width: auto;
  height: 166px;
  overflow: visible;
}
.concept-v4 .case-visual:before {
  display: none;
}
.topic-art {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  overflow: visible;
  transform-origin: 50% 70%;
  transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.concept-v4 .usecase-card:is(:hover, :focus-visible) .topic-art {
  transform: translateY(-5px) rotate(-2deg);
}
.concept-v4 .usecase-text {
  grid-column: 1;
  grid-row: 2;
  align-self: center;
}
.case-markets {
  display: block;
  font-size: 11px;
  color: #627753;
  line-height: 1.6;
  margin-bottom: 8px;
}
.concept-v4 .usecase-text h3 {
  font-size: 25px;
  line-height: 1.18;
  letter-spacing: -0.8px;
  margin: 0 0 12px;
}
.concept-v4 .usecase-text p {
  font-size: 13px;
  line-height: 1.75;
  margin: 0;
  min-height: 0;
  color: #5b6d50;
  max-width: 290px;
}
.concept-v4 .usecase-action {
  grid-column: 1/3;
  grid-row: 3;
  display: flex;
  align-items: center;
  padding: 0;
  gap: 15px;
  font-size: 11px;
  border-top: 1px solid #dce5d1;
}
.concept-v4 .usecase-action > span:first-child {
  font-weight: 650;
}
.case-source-total {
  font-size: 9px;
  margin-left: auto;
  color: #687a5b;
  font-weight: 400;
}
.concept-v4 .usecase-action > .ui-icon {
  width: 27px;
  height: 27px;
  border-radius: 50%;
  border: 1px solid #c5d7b4;
  background: #edf4e3;
  padding: 5px;
}
/* A compact paper sculpture closes the visual story. */
.concept-v4 .closing-section {
  padding: 77px 0 69px;
  overflow: clip;
  background:
    radial-gradient(ellipse at 78% 100%, #50714050, transparent 55%), #112e22;
}
.concept-v4 .closing-inner {
  min-height: 227px;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  position: relative;
  align-items: center;
  gap: 40px;
}
.concept-v4 .closing-inner > div:first-child {
  z-index: 2;
}
.concept-v4 .closing-section h2 {
  font-size: 54px;
}
.concept-v4 .closing-action {
  z-index: 2;
  width: max-content;
  max-width: 100%;
  margin-left: 0;
}
.concept-v4 .closing-action > p {
  font-size: 14px;
  color: #c5d4b9;
}
.concept-v4 .closing-orbit {
  display: none;
}
.closing-document {
  position: absolute;
  right: -130px;
  top: 36px;
  width: 250px;
  height: 252px;
  padding: 24px;
  background: linear-gradient(130deg, #f6fce6, #b4d091);
  border: 1px solid #d4e7ba;
  border-radius: 9px;
  transform: perspective(850px) rotateY(-19deg) rotateZ(15deg);
  opacity: 0.5;
  color: #254632;
  box-shadow:
    4px 6px 0 #607c54,
    7px 10px 0 #adc79444,
    0 30px 50px #0003;
  pointer-events: none;
}
.closing-document-mark {
  display: block;
  font-weight: 800;
  font-size: 27px;
  letter-spacing: -2px;
  line-height: 1;
}
.closing-document > small {
  font-size: 6px;
  letter-spacing: 1.2px;
  display: block;
  margin-top: 15px;
}
.closing-document > strong {
  font-size: 20px;
  font-weight: 650;
  display: block;
  margin-top: 14px;
  letter-spacing: -0.8px;
}
.closing-document-lines {
  display: grid;
  gap: 7px;
  margin-top: 19px;
}
.closing-document-lines i {
  height: 2px;
  width: 90%;
  background: #769c65;
  opacity: 0.4;
}
.closing-document-lines i:nth-child(2) {
  width: 73%;
}
.closing-document-lines i:nth-child(3) {
  width: 82%;
}
.closing-document-foot {
  font-size: 6px;
  letter-spacing: 0.8px;
  display: block;
  margin-top: 19px;
}
@keyframes button-glint {
  to {
    transform: translateX(370%) rotate(22deg);
  }
}
@keyframes dossier-orbit-trace {
  from {
    opacity: 0;
    transform: rotate(-90deg);
  }
  30% {
    opacity: 1;
  }
  to {
    opacity: 0.9;
    transform: rotate(0);
  }
}
@media (min-width: 1600px) {
  .concept-v4 .hero h1 {
    font-size: 64px;
  }
}
@media (max-width: 1199px) {
  .concept-v4 .hero {
    gap: 26px;
    padding-top: 60px;
    min-height: 650px;
  }
  .concept-v4 .hero h1 {
    font-size: 48px;
    letter-spacing: -2.3px;
  }
  .concept-v4 .hero-description {
    font-size: 14px;
    line-height: 1.8;
  }
  .concept-v4 .hero-actions {
    gap: 17px;
  }
  .concept-v4 .hero-secondary {
    font-size: 10px;
  }
  .concept-v4 .scene-visual {
    height: 415px;
  }
  .concept-v4 .architecture[data-scene] .object-plane {
    left: 17%;
    width: 70%;
    height: 173px;
    padding: 19px;
  }
  .concept-v4 .architecture[data-scene] .plane-report {
    --plane-y: 22px;
  }
  .concept-v4 .architecture[data-scene] .plane-research {
    --plane-y: 116px;
  }
  .concept-v4 .architecture[data-scene] .plane-source {
    --plane-y: 205px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-source,
  .concept-v4 .architecture[data-scene="research"] .plane-research {
    --plane-y: 62px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-research,
  .concept-v4 .architecture[data-scene="research"] .plane-report {
    --plane-y: 155px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-report,
  .concept-v4 .architecture[data-scene="research"] .plane-source {
    --plane-y: 242px;
  }
  .concept-v4 .plane-report-title {
    font-size: 25px;
    margin-top: 19px;
  }
  .concept-v4 .plate-topline {
    font-size: 8px;
  }
  .concept-v4 .plate-bottom {
    font-size: 6px;
    margin-top: 12px;
  }
  .concept-v4 .research-core {
    gap: 14px;
    margin-top: 18px;
  }
  .concept-v4 .research-core-emblem {
    width: 49px;
    height: 49px;
  }
  .concept-v4 .engine-mark {
    width: 28px;
    height: 28px;
  }
  .concept-v4 .core-label {
    font-size: 14px;
  }
  .concept-v4 .scene-node {
    padding: 9px;
    gap: 8px;
  }
  .concept-v4 .scene-node-icon {
    display: none !important;
  }
  .concept-v4 .node-law {
    top: 180px;
    left: -1px;
  }
  .concept-v4 .node-brief {
    top: 120px;
    right: -2px;
  }
  .concept-v4 .foreground-result {
    top: 287px;
    left: 0;
  }
  .concept-v4 .result-title {
    font-size: 13px;
  }
  .concept-v4 .result-body {
    padding: 15px;
    gap: 10px;
  }
  .concept-v4 .result-topline {
    padding: 10px 13px;
  }
  .concept-v4 .result-open {
    min-width: 44px;
    width: 44px;
    height: 44px;
  }
  .concept-v4 .scene-controls {
    margin: 20px 0 0;
  }
  .concept-v4 .capability-ribbon {
    gap: 25px;
  }
  .concept-v4 .capability-copy strong {
    font-size: 10px;
  }
  .concept-v4 .capability-copy small {
    font-size: 8px;
  }
  .concept-v4 .capability-ribbon i {
    width: 32px;
    height: 34px;
  }
  .concept-v4 .platform-heading h2 {
    font-size: 39px;
  }
  .concept-v4 .usecase-card {
    grid-template-columns: minmax(0, 1fr) 174px;
    padding: 22px 22px 0;
    min-height: 265px;
  }
  .concept-v4 .case-visual {
    height: 135px;
  }
  .concept-v4 .usecase-text h3 {
    font-size: 23px;
  }
  .concept-v4 .usecase-text p {
    font-size: 12px;
  }
  .closing-document {
    right: -165px;
    opacity: 0.35;
  }
}
@media (max-width: 900px) {
  .concept-v4 .hero {
    grid-template-columns: 1fr;
    padding-top: 48px;
    gap: 40px;
  }
  .concept-v4 .hero-copy {
    max-width: 650px;
  }
  .concept-v4 .hero h1 {
    font-size: 58px;
  }
  .concept-v4 .hero-description {
    font-size: 16px;
  }
  .concept-v4 .hero-actions {
    flex-direction: row;
    align-items: center;
    gap: 25px;
  }
  .concept-v4 .hero-bottom {
    margin-top: 30px;
  }
  .concept-v4 .architecture {
    max-width: 550px;
    margin: 0 auto;
  }
  .concept-v4 .scene-node {
    display: flex;
  }
  .concept-v4 .chapter-bottom > a {
    display: none;
  }
  .concept-v4 .capability-ribbon {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    gap: 20px;
  }
  .concept-v4 .capability-ribbon > span {
    gap: 9px;
  }
  .concept-v4 .platform-heading h2 {
    font-size: 36px;
  }
  .concept-v4 .platform-heading > p {
    font-size: 13px;
  }
  .concept-v4 .usecase-grid {
    grid-template-columns: 1fr;
    gap: 17px;
  }
  .concept-v4 .usecase-card {
    grid-template-columns: minmax(0, 1fr) 240px;
    min-height: 265px;
  }
  .concept-v4 .case-visual {
    height: 170px;
  }
  .concept-v4 .usecase-text h3 {
    font-size: 28px;
  }
  .concept-v4 .usecase-text p {
    font-size: 14px;
  }
  .concept-v4 .closing-section h2 {
    font-size: 43px;
  }
  .closing-document {
    display: none;
  }
}
@media (max-width: 650px) {
  .concept-v4 .site-header {
    height: 72px;
    gap: 10px;
  }
  .concept-v4 .header-cta {
    font-size: 10px;
    padding: 8px 9px 8px 12px;
    gap: 10px;
  }
  .concept-v4 .header-cta > span {
    width: 22px;
    height: 22px;
  }
  .concept-v4 .hero {
    padding-top: 31px;
    padding-bottom: 24px;
    gap: 32px;
  }
  .concept-v4 .hero-copy {
    padding-top: 0;
  }
  .concept-v4 .hero h1 {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -1.8px;
  }
  .concept-v4 .hero .eyebrow {
    font-size: 8px;
    letter-spacing: 1.1px;
    margin-bottom: 22px;
  }
  .concept-v4 .hero-description {
    font-size: 14px;
    line-height: 1.85;
    margin: 21px 0 24px;
  }
  .concept-v4 .hero-actions {
    gap: 16px;
  }
  .concept-v4 .button-lime {
    padding: 13px 13px 13px 16px;
    gap: 14px;
    font-size: 11px;
  }
  .concept-v4 .hero-secondary {
    font-size: 10px;
  }
  .concept-v4 .hero-bottom {
    display: none;
  }
  .concept-v4 .architecture {
    width: 100%;
    max-width: 440px;
  }
  .concept-v4 .scene-masthead {
    font-size: 6px;
    height: 27px;
  }
  .concept-v4 .scene-edition {
    font-size: 5px;
  }
  .concept-v4 .scene-visual {
    height: 362px;
  }
  .dossier-orbit {
    width: 116%;
    left: -8%;
    top: -9px;
  }
  .concept-v4 .architecture[data-scene] .object-plane {
    width: 72%;
    left: 16%;
    height: 136px;
    padding: 14px 16px;
    border-radius: 8px;
    transform: translateY(var(--plane-y)) rotateX(33deg) rotateZ(-20deg);
  }
  .concept-v4 .architecture[data-scene] .plane-report {
    --plane-y: 18px;
  }
  .concept-v4 .architecture[data-scene] .plane-research {
    --plane-y: 94px;
  }
  .concept-v4 .architecture[data-scene] .plane-source {
    --plane-y: 169px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-source,
  .concept-v4 .architecture[data-scene="research"] .plane-research {
    --plane-y: 40px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-research,
  .concept-v4 .architecture[data-scene="research"] .plane-report {
    --plane-y: 122px;
  }
  .concept-v4 .architecture[data-scene="sources"] .plane-report,
  .concept-v4 .architecture[data-scene="research"] .plane-source {
    --plane-y: 202px;
  }
  .concept-v4 .plate-topline {
    font-size: 6px;
    letter-spacing: 0.5px;
  }
  .concept-v4 .plate-topline .ui-icon {
    width: 12px;
    height: 12px;
  }
  .concept-v4 .plate-bottom {
    margin-top: 11px;
    font-size: 5px;
    letter-spacing: 0.5px;
  }
  .concept-v4 .plate-rule {
    margin-top: 11px;
  }
  .concept-v4 .plane-report-title {
    font-size: 22px;
    margin-top: 14px;
    line-height: 1.05;
    letter-spacing: -0.6px;
  }
  .concept-v4 .research-core {
    gap: 14px;
    margin-top: 14px;
  }
  .concept-v4 .research-core-emblem {
    width: 38px;
    height: 38px;
    border-radius: 7px;
  }
  .concept-v4 .engine-mark {
    width: 23px;
    height: 23px;
  }
  .concept-v4 .core-label {
    font-size: 11px;
  }
  .concept-v4 .plate-sources {
    gap: 4px;
    margin-top: 23px;
  }
  .concept-v4 .plate-sources span {
    font-size: 7px;
    padding: 7px;
  }
  .concept-v4 .scene-node {
    display: none;
  }
  .concept-v4 .foreground-result {
    top: 232px;
  }
  .concept-v4 .result-topline {
    font-size: 6px;
    padding: 9px 12px;
  }
  .concept-v4 .result-kicker {
    font-size: 6px;
    letter-spacing: 0.55px;
  }
  .concept-v4 .result-title {
    font-size: 12px;
    line-height: 1.5;
  }
  .concept-v4 .result-meta {
    font-size: 7px;
    gap: 5px;
    margin-top: 8px;
  }
  .concept-v4 .result-body {
    padding: 14px 12px;
    gap: 9px;
  }
  .concept-v4 .result-open {
    min-width: 44px;
    width: 44px;
    height: 44px;
  }
  .concept-v4 .scene-controls {
    margin: 13px 0 0;
    padding: 4px;
    gap: 4px;
  }
  .concept-v4 .scene-controls button {
    font-size: 11px;
    min-height: 44px;
    padding: 9px 6px;
    gap: 8px;
  }
  .concept-v4 .scene-instruction {
    font-size: 7px;
    margin-top: 10px;
  }
  .concept-v4 .chapter-bottom {
    margin-top: 0;
    padding: 18px 0;
  }
  .concept-v4 .capability-ribbon {
    gap: 8px;
  }
  .concept-v4 .capability-ribbon > span,
  .concept-v4 .capability-ribbon > span:last-child {
    display: flex;
    gap: 7px;
    align-items: flex-start;
  }
  .concept-v4 .capability-ribbon i {
    width: 25px;
    height: 28px;
    border-radius: 5px;
  }
  .concept-v4 .capability-ribbon .ui-icon {
    width: 14px;
    height: 14px;
  }
  .concept-v4 .capability-copy {
    display: block !important;
    padding-top: 2px;
  }
  .concept-v4 .capability-copy strong {
    font-size: 8px;
    line-height: 1.5;
    display: block;
  }
  .concept-v4 .capability-copy small {
    display: none;
  }
  .concept-v4 .platform-section {
    padding-top: 53px;
    padding-bottom: 35px;
  }
  .concept-v4 .platform-heading h2 {
    font-size: 32px;
    letter-spacing: -1.2px;
  }
  .concept-v4 .platform-heading > p {
    font-size: 13px;
  }
  .concept-v4 .product-tabs {
    gap: 3px;
    padding: 4px;
  }
  .concept-v4 .product-tab {
    font-size: 10px;
    gap: 5px;
    padding: 9px 5px;
    min-height: 46px;
  }
  .concept-v4 .product-tab .tab-icon {
    width: 20px;
    height: 20px;
    padding: 3px;
  }
  .concept-v4 .usecase-section {
    padding: 52px 0;
  }
  .concept-v4 .usecase-heading h2 {
    font-size: 33px;
    letter-spacing: -1.4px;
  }
  .concept-v4 .usecase-card {
    grid-template-columns: minmax(0, 1fr) 135px;
    grid-template-rows: 28px 1fr 47px;
    padding: 17px 18px 0;
    gap: 13px 7px;
    min-height: 247px;
  }
  .concept-v4 .case-visual {
    height: 114px;
    margin: 0 -8px 0 -4px;
  }
  .concept-v4 .case-edition {
    font-size: 7px;
    letter-spacing: 0.6px;
  }
  .concept-v4 .case-type-icon {
    width: 25px;
    height: 25px;
  }
  .concept-v4 .usecase-text h3 {
    font-size: 21px;
    letter-spacing: -0.6px;
    margin-bottom: 10px;
  }
  .concept-v4 .usecase-text p {
    font-size: 12px;
    line-height: 1.7;
  }
  .case-markets {
    font-size: 10px;
    margin-bottom: 7px;
  }
  .concept-v4 .usecase-action {
    font-size: 10px;
    gap: 9px;
  }
  .case-source-total {
    font-size: 8px;
  }
  .concept-v4 .usecase-action > .ui-icon {
    width: 25px;
    height: 25px;
  }
  .concept-v4 .closing-section {
    padding: 48px 0;
  }
  .concept-v4 .closing-inner {
    display: block;
    min-height: 0;
  }
  .concept-v4 .closing-section h2 {
    font-size: 43px;
    letter-spacing: -1.7px;
  }
  .concept-v4 .closing-action {
    margin-top: 26px;
  }
  .concept-v4 .closing-action > p {
    font-size: 13px;
  }
}
@media (max-width: 360px) {
  .concept-v4 .site-header {
    gap: 8px;
  }
  .concept-v4 .header-cta {
    font-size: 9px;
    gap: 6px;
    padding: 8px;
  }
  .concept-v4 .header-cta > span {
    width: 18px;
    height: 21px;
  }
  .concept-v4 .hero h1 {
    font-size: 34px;
    letter-spacing: -1.5px;
  }
  .concept-v4 .hero-description {
    font-size: 13px;
  }
  .concept-v4 .hero-actions {
    gap: 11px;
  }
  .concept-v4 .button-lime {
    padding: 12px 11px;
    gap: 8px;
    font-size: 10px;
  }
  .concept-v4 .hero-secondary {
    font-size: 9px;
  }
  .concept-v4 .scene-visual {
    height: 342px;
  }
  .concept-v4 .architecture[data-scene] .object-plane {
    width: 76%;
    left: 13%;
    height: 122px;
    padding: 12px 13px;
  }
  .concept-v4 .plane-report-title {
    font-size: 20px;
    margin-top: 12px;
  }
  .concept-v4 .plate-bottom {
    font-size: 4px;
    margin-top: 9px;
  }
  .concept-v4 .plate-rule {
    margin-top: 9px;
  }
  .concept-v4 .architecture[data-scene] .plane-source {
    --plane-y: 158px;
  }
  .concept-v4 .architecture[data-scene] .plane-research {
    --plane-y: 87px;
  }
  .concept-v4 .research-core {
    margin-top: 13px;
    gap: 11px;
  }
  .concept-v4 .research-core-emblem {
    width: 33px;
    height: 33px;
  }
  .concept-v4 .core-label {
    font-size: 10px;
  }
  .concept-v4 .foreground-result {
    top: 221px;
  }
  .concept-v4 .result-title {
    font-size: 11px;
  }
  .concept-v4 .result-meta {
    font-size: 6px;
    gap: 4px;
  }
  .concept-v4 .result-body {
    padding: 12px 11px;
  }
  .concept-v4 .scene-controls button {
    font-size: 10px;
    gap: 6px;
  }
  .concept-v4 .capability-ribbon i {
    display: none;
  }
  .concept-v4 .capability-copy strong {
    font-size: 8px;
  }
  .concept-v4 .usecase-card {
    grid-template-columns: minmax(0, 1fr) 110px;
    padding: 16px 15px 0;
  }
  .concept-v4 .case-visual {
    height: 93px;
  }
  .concept-v4 .usecase-text h3 {
    font-size: 19px;
  }
  .concept-v4 .usecase-text p {
    font-size: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .concept-v4 .button-lime:before,
  .concept-v4 .architecture.is-tracing .dossier-orbit-signal {
    animation: none;
  }
  .concept-v4 .usecase-card:is(:hover, :focus-visible) .topic-art {
    transform: none;
  }
  .concept-v4 .topic-art,
  .concept-v4 .object-plane {
    transition: none;
  }
}
