
/* Portfolio wrap-up alignment and hierarchy pass */

/* Keep all major portfolio blocks on the same horizontal rhythm. */
.case-study-page main > section > .container,
.timeline-hero > .container,
.education-pillars > .container,
.timeline-search-section > .container {
  width:min(100% - 40px,var(--max));
}

/* Carbis / Moore: consistent two-column geometry instead of shifting ratios. */
@media(min-width:981px){
  .carbis-case-page .phase1-case-hero-grid,
  .moore-case-page .phase1-case-hero-grid,
  .carbis-case-page .case-story-grid,
  .carbis-case-page .media-story-row,
  .moore-case-page .mapping-console {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:clamp(32px,4vw,58px) !important;
    align-items:center !important;
  }
  .carbis-case-page .phase1-hero-panel,
  .moore-case-page .phase1-hero-panel {
    width:100%;
    max-width:520px;
    justify-self:end;
  }
}

/* Supporting headings should align and breathe without competing with the hero. */
.carbis-case-page main section:not(.case-hero) .section-head,
.moore-case-page main section:not(.case-hero) .section-head {
  max-width:820px !important;
  margin-bottom:20px !important;
}
.carbis-case-page main section:not(.case-hero) .section-3d-title,
.moore-case-page main section:not(.case-hero) .section-3d-title {
  margin-bottom:12px !important;
}

/* Homepage: deliberate six-column system.
   Flagship identity = full row.
   Three investigations = thirds.
   Two deep historical cases = halves. */
@media(min-width:921px){
  .case-grid.case-grid-expanded {
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    align-items:stretch;
  }
  .case-grid-expanded > .case-card {
    min-width:0;
    display:flex !important;
    flex-direction:column;
  }
  .case-grid-expanded > .case-card .case-actions { margin-top:auto; }
  .case-grid-expanded .starpet-identity-card { grid-column:1 / -1 !important; }
  .case-grid-expanded .pi-vignette-card,
  .case-grid-expanded .segmentation-note-card,
  .case-grid-expanded .isilon-case-card { grid-column:span 2 !important; }
  .case-grid-expanded .carbis-home-card,
  .case-grid-expanded .moore-case-card {
    grid-column:span 3 !important;
    width:100% !important;
    justify-self:stretch !important;
    display:flex !important;
  }
}

/* Flagship card gets a visual path instead of more paragraph mass. */
.starpet-identity-card {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(255,83,102,.09),transparent 24rem),
    radial-gradient(circle at 15% 0%,rgba(102,227,255,.10),transparent 24rem),
    linear-gradient(180deg,rgba(16,31,55,.86),rgba(6,15,27,.84)) !important;
  border-color:rgba(102,227,255,.28) !important;
}
.starpet-identity-card::after {
  content:"1355  →  57+ days  →  RPC 1722  →  end-to-end validation";
  display:block;
  margin-top:18px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(3,9,17,.70);
  border:1px solid rgba(102,227,255,.15);
  color:#8fbcd0;
  font:600 .78rem/1.4 "SFMono-Regular",Consolas,monospace;
}

/* Timeline: stable column widths and consistent cards/actions. */
.timeline-hero-grid {
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr) !important;
  align-items:start !important;
  gap:clamp(28px,4vw,56px) !important;
}
.timeline-signal-panel { width:100%; max-width:500px; justify-self:end; }
.capsule-layout {
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:24px !important;
  align-items:start !important;
}
.timeline-card { padding:24px 26px !important; }
.timeline-card > p { max-width:78ch; }
.timeline-actions {
  display:flex !important;
  flex-wrap:wrap;
  gap:10px !important;
  align-items:center;
  margin-top:18px !important;
}
.timeline-actions .btn { min-height:42px; }

/* Education title flame: keep it visually tied to the word. */
.education-fire {
  white-space:nowrap;
  display:inline-flex !important;
  align-items:center !important;
  gap:.10em !important;
}
.education-fire-mark {
  width:.42em !important;
  height:.60em !important;
  transform:translateY(.02em) !important;
}

/* Moore evidence board: equal cards with clean captions. */
.moore-case-page .mapping-evidence-grid { align-items:stretch; }
.moore-case-page .mapping-evidence-grid figure { height:100%; display:flex; flex-direction:column; }
.moore-case-page .mapping-evidence-grid img { flex:1; }
.moore-case-page .mapping-evidence-grid figcaption { min-height:78px; }

/* Prevent giant empty gaps at the bottom of the case-study pages. */
.carbis-case-page .phase1-closing,
.moore-case-page .phase1-closing {
  padding-top:30px !important;
  padding-bottom:44px !important;
}

@media(max-width:980px){
  .timeline-hero-grid,.capsule-layout { grid-template-columns:1fr !important; }
  .timeline-signal-panel { justify-self:stretch; max-width:none; }
}
