.home-page .reveal,
.home-page .reveal-left{
  opacity:1;
}

.home-hero{
  position:relative;
  padding-top:var(--n-space-4);
  padding-bottom:var(--n-space-6);
}

.home-hero .n-hero-copy{
  min-width:0;
}

.home-hero .n-hero-copy h1{
  max-width:15ch;
  font-size:clamp(2.5rem,5vw,4.25rem);
  line-height:1.15;
}

.home-hero .n-hero-copy h1 span{
  color:var(--n-primary);
}

.home-hero .n-lead{
  max-width:36rem;
}

.home-hero .c-actions{
  margin-top:var(--n-space-3);
  margin-bottom:var(--n-space-3);
}

.hero-price{
  display:flex;
  align-items:baseline;
  gap:.55rem;
  color:var(--n-ink);
}

.hero-price span{
  color:var(--n-muted);
  font-size:var(--n-fs-1);
}

.hero-price strong{
  font-family:var(--n-mono);
  font-size:1.65rem;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.04em;
}

.hero-facts{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem 1.1rem;
  margin-top:var(--n-space-2);
  color:var(--n-muted);
  font-size:var(--n-fs-0);
}

.hero-facts span{
  display:flex;
  align-items:center;
  gap:.4rem;
}

.hero-facts span::before{
  content:"";
  width:.5rem;
  height:.5rem;
  flex:none;
  border-radius:50%;
  background:var(--n-primary);
}

.home-stage{
  position:relative;
  min-width:0;
  height:clamp(25rem,42vw,34rem);
  margin:0;
  overflow:visible;
  border-radius:var(--n-radius-lg);
  background:var(--n-indigo-pale);
  box-shadow:var(--n-shadow-lg);
}

.home-stage>img{
  width:100%;
  height:100%;
  border-radius:var(--n-radius-lg);
  object-fit:cover;
}

.run-card{
  position:absolute;
  z-index:3;
  max-width:calc(100% - 2rem);
  padding:1rem 1.1rem;
  border-radius:var(--n-radius-sm);
  color:#F7F3FA;
  background:#241F2D;
  box-shadow:var(--n-shadow-sm);
}

.run-card strong,
.run-card span{
  display:block;
  font-family:var(--n-mono);
  font-size:var(--n-fs-0);
  font-variant-numeric:tabular-nums;
}

.run-card span{
  margin-top:.35rem;
  color:#C8C1CD;
}

.run-card-a{
  top:1rem;
  right:1rem;
  width:12rem;
}

.run-card-b{
  bottom:1rem;
  left:1rem;
  width:14rem;
  color:#241F2D;
  background:#FFFFFF;
}

.run-card-b span{
  color:#625C68;
}

.live{
  display:inline-block;
  width:.5rem;
  height:.5rem;
  margin-right:.45rem;
  border-radius:50%;
  background:#38A574;
  box-shadow:0 0 0 .3rem rgba(56,165,116,.15);
}

.capability-section,
.workflow-section,
.usecase-section,
.plans-section,
.regions-section,
.migration-section,
.evidence-section,
.updates-section,
.faq-section,
.closeout-section{
  padding-block:var(--n-space-6);
}

.capability-heading .n-kicker{
  margin-inline:auto;
}

.cap-wall{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:.75rem;
}

.cap-wall div{
  display:grid;
  min-width:0;
  min-height:5.5rem;
  place-items:center;
  padding:1rem;
  border-radius:var(--n-radius-sm);
  color:#625C68;
  background:#F4F3EF;
  font-size:var(--n-fs-1);
  font-weight:700;
  text-align:center;
  overflow-wrap:anywhere;
}

.home-section-head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);
  gap:var(--n-space-4);
  align-items:end;
  margin-bottom:var(--n-space-4);
}

.home-section-head>*{
  min-width:0;
}

.home-section-head>p,
.home-section-head .section-side>p{
  color:var(--n-muted);
}

.section-side{
  display:grid;
  gap:var(--n-space-2);
  justify-items:start;
}

.section-link{
  margin-top:var(--n-space-1);
}

.rail-controls{
  display:flex;
  gap:.5rem;
}

.rail-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.75rem;
  height:2.75rem;
  padding:0;
  border:0;
  border-radius:50%;
  color:#FFFFFF;
  background:var(--n-primary);
  box-shadow:0 8px 18px rgba(52,38,211,.18);
  transition:transform .2s var(--n-ease),background .2s var(--n-ease);
}

.rail-button:hover{
  transform:translateY(-2px);
  background:var(--n-primary-hover);
}

.rail-button svg{
  width:1.1rem;
  height:1.1rem;
}

.workflow-viewport{
  max-width:100%;
  overflow:hidden;
}

.workflow-rail{
  display:grid;
  grid-template-columns:repeat(4,minmax(17rem,1fr));
  gap:var(--n-space-2);
  min-width:0;
  scroll-behavior:smooth;
}

.workflow-card{
  position:relative;
  display:flex;
  min-width:0;
  min-height:27rem;
  flex-direction:column;
  padding:1.75rem;
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#F3F1EA;
}

.workflow-card:nth-child(3){
  color:#241F2D;
  background:#F2F0FF;
}

.workflow-card small{
  color:#625C68;
}

.workflow-card h3{
  margin-top:var(--n-space-3);
}

.workflow-card p{
  margin-top:var(--n-space-1);
  color:#625C68;
}

.workflow-card pre{
  width:100%;
  min-height:9rem;
  margin-top:auto;
  padding:1.25rem;
  border-radius:var(--n-radius-sm);
  color:#DCD6E1;
  background:#241F2D;
}

.usecase-grid{
  align-items:start;
}

.usecase-card{
  display:flex;
  min-height:0;
  flex-direction:column;
}

.usecase-card h3{
  margin-top:var(--n-space-3);
}

.usecase-card>p{
  margin-top:var(--n-space-1);
  color:#625C68;
}

.usecase-card dl{
  display:grid;
  gap:.75rem;
  margin:var(--n-space-3) 0 0;
  padding-top:var(--n-space-2);
  border-top:1px solid var(--n-paper-line);
}

.usecase-card dl div{
  display:grid;
  grid-template-columns:6rem minmax(0,1fr);
  gap:.75rem;
  min-width:0;
}

.usecase-card dt{
  color:#625C68;
}

.usecase-card dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.plans-section .c-price-grid{
  align-items:start;
}

.plans-section .c-price{
  display:flex;
  flex-direction:column;
}

.plans-section .c-price .c-actions{
  margin-top:var(--n-space-3);
}

.sheet{
  overflow:hidden;
  border-radius:var(--n-radius-md);
  color:#F6F2F8;
  background:#241F2D;
}

.sheet-head{
  display:flex;
  justify-content:space-between;
  gap:var(--n-space-2);
  padding:1.1rem 1.5rem;
  border-bottom:1px solid rgba(255,255,255,.14);
  color:#C7C0CC;
  font-family:var(--n-mono);
  font-size:var(--n-fs-0);
}

.sheet-scroll{
  border-radius:0;
  background:#241F2D;
}

.sheet-table{
  display:table;
  width:100%;
  min-width:48rem;
  border-collapse:collapse;
  color:#F6F2F8;
  background:#241F2D;
}

.sheet-table th,
.sheet-table td{
  padding:1rem 1.25rem;
  border-bottom:1px solid rgba(255,255,255,.14);
  text-align:left;
  vertical-align:middle;
}

.sheet-table th{
  color:#C7C0CC;
  background:#2E2838;
  font-family:var(--n-mono);
  font-weight:650;
}

.sheet-table td{
  color:#F6F2F8;
  font-family:var(--n-mono);
  font-size:var(--n-fs-1);
}

.sheet-table tbody tr:last-child td{
  border-bottom:0;
}

.checklist{
  display:grid;
  grid-template-columns:minmax(14rem,.7fr) minmax(0,1.3fr);
  gap:var(--n-space-4);
  margin-top:var(--n-space-3);
  padding:var(--n-space-4);
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#F2F0FF;
}

.checklist h3{
  margin-top:var(--n-space-2);
}

.checklist>div>p{
  margin-top:var(--n-space-1);
  color:#625C68;
}

.check-items{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--n-space-2);
}

.check-items span{
  display:grid;
  grid-template-columns:1.35rem minmax(0,1fr);
  gap:.2rem .65rem;
  min-width:0;
  padding:var(--n-space-2);
  border-radius:var(--n-radius-sm);
  color:#241F2D;
  background:#FFFFFF;
}

.check-items span::before{
  content:"";
  grid-row:1/3;
  width:1.35rem;
  height:1.35rem;
  margin-top:.1rem;
  border-radius:.4rem;
  background:var(--n-primary);
  box-shadow:inset 0 0 0 .38rem #FFFFFF;
}

.check-items b{
  font-size:var(--n-fs-1);
}

.check-items small{
  color:#625C68;
}

.regions-section{
  color:#F8F5FF;
  background:#241F2D;
}

.regions-copy h2{
  color:#F8F5FF;
}

.regions-copy .n-kicker{
  color:#AFA2FF;
}

.regions-copy .n-lead{
  color:#C9C2CE;
}

.region-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--n-space-2);
  margin-top:var(--n-space-4);
  align-items:start;
}

.region-card{
  min-width:0;
  padding:var(--n-space-3);
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#F7F4ED;
}

.region-top{
  display:flex;
  justify-content:space-between;
  gap:var(--n-space-1);
  color:#625C68;
  font-family:var(--n-mono);
  font-size:var(--n-fs-0);
}

.stock{
  color:#247653;
  font-weight:750;
  white-space:nowrap;
}

.region-top .stock{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}

.region-top .stock i{
  width:.45rem;
  height:.45rem;
  border-radius:50%;
  background:#247653;
}

.region-card h3{
  margin-top:var(--n-space-3);
}

.region-card p{
  color:#625C68;
}

.region-card small{
  display:block;
  margin-top:var(--n-space-2);
  color:#625C68;
}

.region-table-wrap{
  margin-top:var(--n-space-3);
  background:#FFFFFF;
}

.region-table{
  min-width:48rem;
  color:#241F2D;
  background:#FFFFFF;
}

.region-table caption{
  padding:1rem 1.1rem;
  color:#625C68;
  background:#F3F1EA;
  font-size:var(--n-fs-1);
  text-align:left;
}

.region-note{
  margin-top:var(--n-space-2);
  color:#C9C2CE;
  font-size:var(--n-fs-1);
}

.migration-path{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--n-space-2);
  align-items:start;
}

.path-card{
  display:flex;
  min-width:0;
  min-height:17rem;
  flex-direction:column;
  padding:var(--n-space-3);
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#FFFFFF;
}

.path-card small{
  color:#625C68;
}

.path-card h3{
  margin-top:var(--n-space-2);
}

.path-card p{
  margin-top:var(--n-space-1);
  color:#625C68;
}

.path-result{
  display:block;
  margin-top:var(--n-space-3);
  padding-top:var(--n-space-2);
  border-top:1px solid var(--n-paper-line);
  color:#247653;
  font-family:var(--n-mono);
  font-size:var(--n-fs-0);
}

.migration-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--n-space-3);
  margin-top:var(--n-space-4);
  padding:var(--n-space-3);
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#E8E4FF;
}

.migration-action p{
  max-width:42rem;
  color:#4E4854;
}

.migration-action .c-btn{
  flex:none;
}

.evidence{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr);
  gap:var(--n-space-2);
  align-items:stretch;
}

.build-log{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:var(--n-space-3);
  border-radius:var(--n-radius-md);
  color:#EDE8F1;
  background:#241F2D;
  box-shadow:var(--n-shadow-sm);
}

.build-log-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--n-space-2);
  color:#BEB7C5;
  font-size:var(--n-fs-0);
}

.build-state{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:#8ED9B9;
  font-family:var(--n-mono);
}

.build-state i{
  width:.45rem;
  height:.45rem;
  border-radius:50%;
  background:#38A574;
}

.build-log h3{
  margin-top:var(--n-space-3);
}

.build-log pre{
  flex:1;
  margin-top:var(--n-space-2);
  padding:var(--n-space-2);
  border-radius:var(--n-radius-sm);
  color:#D8D2DD;
  background:#1B1722;
}

.log-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--n-space-2);
  margin-top:var(--n-space-3);
}

.log-summary span{
  min-width:0;
}

.log-summary b,
.log-summary small{
  display:block;
}

.log-summary b{
  font-family:var(--n-mono);
  font-size:var(--n-fs-3);
}

.log-summary small{
  margin-top:.25rem;
  color:#BEB7C5;
}

.metrics{
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:var(--n-space-2);
}

.metric{
  min-width:0;
  padding:var(--n-space-3);
  border-radius:var(--n-radius-md);
  color:#241F2D;
  background:#F3F1EA;
  box-shadow:var(--n-shadow-sm);
}

.metric small{
  color:#625C68;
}

.metric strong{
  display:block;
  margin-top:var(--n-space-1);
  font-family:var(--n-mono);
  font-size:clamp(1.55rem,3cqi,2rem);
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;
}

.metric p{
  margin-top:var(--n-space-1);
  color:#625C68;
  font-size:var(--n-fs-1);
}

.evidence-notes{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--n-space-2);
  margin-top:var(--n-space-4);
  align-items:start;
}

.evidence-notes article{
  min-width:0;
}

.evidence-notes h3{
  font-size:var(--n-fs-3);
}

.evidence-notes p{
  margin-top:var(--n-space-1);
  color:var(--n-muted);
  font-size:var(--n-fs-1);
}

.updates-head{
  align-items:center;
}

.updates-head>a{
  justify-self:end;
}

.updates{
  border-top:1px solid var(--n-paper-line);
}

.update-row{
  display:grid;
  grid-template-columns:minmax(14rem,.9fr) minmax(0,1.35fr) 7rem;
  gap:var(--n-space-4);
  align-items:center;
  padding:var(--n-space-3) var(--n-space-2);
  border-bottom:1px solid var(--n-paper-line);
  color:#241F2D;
  background:#F3F1EA;
  transition:background .2s var(--n-ease),padding .2s var(--n-ease);
}

.update-row[hidden]{
  display:none;
}

.update-row:hover{
  padding-inline:var(--n-space-3);
  background:#FFFFFF;
}

.update-title{
  min-width:0;
}

.update-title>span{
  display:block;
  width:fit-content;
  margin-bottom:.4rem;
  color:var(--n-primary);
  font-size:var(--n-fs-0);
  font-weight:750;
}

.update-row h3{
  font-size:var(--n-fs-3);
}

.update-row p{
  display:-webkit-box;
  min-width:0;
  overflow:hidden;
  color:#625C68;
  font-size:var(--n-fs-1);
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.update-row time{
  color:#625C68;
  font-family:var(--n-mono);
  font-size:var(--n-fs-0);
  text-align:right;
}

.update-cover{
  display:none;
}

.updates-empty{
  padding:var(--n-space-4) var(--n-space-2);
  color:#241F2D;
  background:#F3F1EA;
  border-bottom:1px solid var(--n-paper-line);
}

.updates-empty span{
  color:#625C68;
}

.updates-empty h3{
  margin-top:var(--n-space-2);
}

.updates-empty p{
  max-width:42rem;
  margin-top:var(--n-space-1);
  color:#625C68;
}

.faq-paired{
  align-items:stretch;
}

.faq-intro{
  min-width:0;
}

.faq-intro .c-actions{
  margin-top:var(--n-space-3);
}

.home-faq{
  align-self:stretch;
  border-color:var(--n-paper-line);
}

.home-faq details{
  color:#241F2D;
  background:#FFFDFC;
}

.home-faq .c-faq-content{
  padding-top:var(--n-space-2);
  border-top:1px solid var(--n-paper-line);
  color:#625C68;
}

.closeout-section{
  padding-top:var(--n-space-4);
  padding-bottom:var(--n-space-3);
}

.home-closeout{
  color:#FFFFFF;
  background:#241F2D;
}

.home-closeout>div:first-child{
  min-width:0;
  max-width:48rem;
}

.closeout-label{
  margin-bottom:var(--n-space-1);
  color:#AFA2FF;
  font-size:var(--n-fs-0);
  font-weight:750;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.home-closeout small{
  display:block;
  margin-top:var(--n-space-2);
  color:#C8C1CD;
}

.home-closeout .c-btn-ghost{
  color:#FFFFFF;
  border-color:rgba(255,255,255,.38);
}

@media(max-width:64rem){
  .home-section-head{
    grid-template-columns:1fr;
    align-items:start;
  }

  .cap-wall{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .workflow-viewport{
    overflow-x:auto;
    padding-bottom:var(--n-space-1);
  }

  .workflow-rail{
    grid-template-columns:repeat(4,minmax(18rem,22rem));
    width:max-content;
  }

  .region-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .checklist{
    grid-template-columns:1fr;
  }

  .evidence{
    grid-template-columns:1fr;
  }

  .updates-head>a{
    justify-self:start;
  }
}

@media(max-width:48rem){
  .migration-path,
  .evidence-notes{
    grid-template-columns:1fr;
  }

  .migration-action{
    align-items:flex-start;
    flex-direction:column;
  }

  .migration-action .c-btn{
    flex:none;
  }

  .update-row{
    grid-template-columns:1fr;
    gap:var(--n-space-1);
  }

  .update-row time{
    text-align:left;
  }
}

@media(max-width:42rem){
  .home-hero{
    padding-bottom:var(--n-space-5);
  }

  .home-hero .n-hero-copy h1{
    max-width:none;
  }

  .home-stage{
    height:27rem;
    overflow:visible;
  }

  .run-card{
    max-width:calc(100% - 1rem);
    padding:.8rem .9rem;
  }

  .run-card-a{
    top:.5rem;
    right:.5rem;
  }

  .run-card-b{
    bottom:.5rem;
    left:.5rem;
  }

  .cap-wall,
  .region-grid,
  .check-items{
    grid-template-columns:1fr;
  }

  .workflow-card{
    min-height:29rem;
  }

  .sheet-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .log-summary{
    grid-template-columns:1fr;
  }

  .build-log-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-closeout .c-actions{
    width:100%;
  }
}

@media(max-width:24.375rem){
  .home-stage{
    height:24rem;
  }

  .run-card-a,
  .run-card-b{
    width:auto;
    right:.5rem;
    left:.5rem;
  }

  .workflow-rail{
    grid-template-columns:repeat(4,minmax(16rem,calc(100vw - 2rem)));
  }

  .workflow-card{
    padding:var(--n-space-3);
  }
}

@media(prefers-reduced-motion:reduce){
  .workflow-rail{
    scroll-behavior:auto;
  }
}
