/* Human-facing stack page */
.pitch-body .stack-hero::before {
  inset: 0 0 0 30%;
  opacity: .62 !important;
  filter: saturate(.86) contrast(.99) !important;
}
.stack-hero::after {
  background: linear-gradient(90deg,#060a0d 0%,rgba(6,10,13,.94) 35%,rgba(6,10,13,.44) 61%,rgba(6,10,13,.08) 100%);
}

.stack-intro-note {
  margin-top: 42px;
  max-width: 760px;
  padding-left: 22px;
  border-left: 2px solid rgba(143,217,231,.42);
  color: #9cafb4;
  line-height: 1.75;
  font-size: 15px;
}

.stack-flow {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(161,213,222,.12);
}

.stack-flow-item {
  --stack-art: none;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 150px minmax(0,1.05fr) minmax(300px,.7fr);
  gap: 42px;
  align-items: center;
  min-height: 235px;
  padding: 36px 0;
  border-bottom: 1px solid rgba(161,213,222,.12);
}

.stack-flow-item::before {
  content: '';
  position: absolute;
  inset: 0 0 0 55%;
  background:
    linear-gradient(90deg, #060a0d 0%, rgba(6,10,13,.76) 26%, rgba(6,10,13,.32) 78%, rgba(6,10,13,.82) 100%),
    linear-gradient(180deg, rgba(6,10,13,.25), #060a0d),
    var(--stack-art) center / cover no-repeat;
  opacity: .25;
  filter: saturate(.7);
  pointer-events: none;
}

.stack-flow-item > * { position: relative; z-index: 1; }

.stack-index {
  color: #7fd4e3;
  font-size: 12px;
  font-weight: 700;
}
.stack-index strong {
  display: block;
  margin-top: 9px;
  color: #edf4f5;
  font: 500 clamp(34px,4vw,50px)/1 'Newsreader', Georgia, serif;
}

.stack-main h3,
.stack-question h3 {
  margin: 0 0 10px;
  font: 500 clamp(28px,3.3vw,40px)/1.06 'Newsreader', Georgia, serif;
}
.stack-main p,
.stack-question p {
  margin: 0;
  color: #95a7ac;
  line-height: 1.72;
  font-size: 14px;
}
.stack-question {
  padding-left: 24px;
  border-left: 1px solid rgba(143,217,231,.17);
}
.stack-question .question-label {
  display: block;
  margin-bottom: 12px;
  color: #7fd4e3;
  font-size: 11px;
  font-weight: 700;
}
.stack-question h3 { font-size: clamp(24px,2.5vw,32px); }
.stack-question a {
  display: inline-flex;
  margin-top: 16px;
  color: #93dce8;
  font-size: 12px;
  text-decoration: none;
}

.stack-principles {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 28px;
}
.stack-principle {
  padding-top: 20px;
  border-top: 1px solid rgba(143,217,231,.2);
}
.stack-principle span {
  color: #80d6e5;
  font-size: 11px;
  font-weight: 700;
}
.stack-principle h3 {
  margin: 22px 0 10px;
  font: 500 27px/1.1 'Newsreader', Georgia, serif;
}
.stack-principle p {
  margin: 0;
  color: #8fa3a9;
  font-size: 13px;
  line-height: 1.7;
}

.domain-proof-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}
.domain-proof-card {
  --proof-art: none;
  position: relative;
  min-height: 430px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px;
  border: 1px solid rgba(161,213,222,.12);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(6,10,13,.12), rgba(6,10,13,.66) 48%, rgba(6,10,13,.98)),
    var(--proof-art) center / cover no-repeat;
  text-decoration: none;
}
.domain-proof-card:nth-child(3) { --proof-art:url('png_images/digital_infrastructure_twin.png') !important; }
.domain-proof-card::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(143,217,231,.07),transparent 34%);
  pointer-events:none;
}
.domain-proof-card > * { position:relative; z-index:1; }
.domain-proof-status {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 18px;
  padding: 7px 10px;
  border: 1px solid rgba(161,213,222,.16);
  border-radius: 999px;
  background: rgba(6,10,13,.58);
  color: #9bcbd3;
  font-size: 10px;
  font-weight: 700;
}
.domain-proof-card h3 {
  margin: 0 0 10px;
  font: 500 34px/1.05 'Newsreader', Georgia, serif;
}
.domain-proof-card p {
  margin: 0;
  color: #a3b2b6;
  font-size: 13px;
  line-height: 1.7;
}
.domain-proof-card .proof-link {
  display:inline-flex;
  margin-top:22px;
  color:#92dce8;
  font-size:12px;
}

.stack-boundary {
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:60px;
  align-items:start;
}
.stack-boundary-list {
  display:grid;
  gap:0;
  border-top:1px solid rgba(161,213,222,.12);
}
.stack-boundary-row {
  display:grid;
  grid-template-columns:160px 1fr;
  gap:24px;
  padding:20px 0;
  border-bottom:1px solid rgba(161,213,222,.1);
}
.stack-boundary-row strong {
  color:#dfeaec;
  font:500 20px/1.2 'Newsreader',Georgia,serif;
}
.stack-boundary-row span {
  color:#8fa3a9;
  font-size:13px;
  line-height:1.65;
}

@media(max-width:1000px){
  .stack-flow-item { grid-template-columns:100px 1fr; gap:26px; }
  .stack-question { grid-column:2; padding:18px 0 0; border-left:0; border-top:1px solid rgba(143,217,231,.14); }
  .stack-principles { grid-template-columns:1fr 1fr; }
  .domain-proof-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:720px){
  .pitch-body .stack-hero::before { inset:0; opacity:.42 !important; }
  .stack-flow-item { grid-template-columns:1fr; gap:18px; min-height:0; }
  .stack-question { grid-column:auto; }
  .stack-index strong { display:inline; margin-left:10px; font-size:32px; }
  .stack-flow-item::before { inset:0; opacity:.12; }
  .stack-principles,
  .domain-proof-grid,
  .stack-boundary { grid-template-columns:1fr; }
  .stack-boundary-row { grid-template-columns:1fr; gap:8px; }
  .domain-proof-card { min-height:360px; }
}
