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

.home-page .c-kicker{
  font-size:.75rem;
}

.home-hero{
  padding-block:0;
}

.home-hero .d-hero-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.88fr);
  align-items:start;
  gap:var(--d-space-4);
  padding-block:var(--d-hero-pad) var(--d-space-5);
}

.home-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
}

.home-copy h1{
  max-width:13ch;
  line-height:1.15;
}

.home-hero h1 em{
  color:#C23800;
  font-style:normal;
}

.home-copy>p{
  max-width:42rem;
  margin-top:var(--d-space-3);
  color:#000000;
  font-size:var(--d-text-lg);
}

.home-terminal{
  width:100%;
  margin-top:var(--d-space-3);
}

.term-scroll{
  height:10rem;
  overflow:hidden;
  padding:var(--d-space-2);
}

.term-lines{
  animation:term-roll 12s steps(1,end) infinite;
}

.term-lines div{
  min-width:max-content;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-sm);
  line-height:1.75;
  white-space:nowrap;
}

.term-prompt{
  color:#FF8C5D;
}

.term-ok{
  color:#8FC2A3;
}

.term-dim{
  color:#A9A8AF;
}

.term-path{
  color:#D5C1EF;
}

.home-hero-actions{
  justify-content:flex-start;
  margin-block:var(--d-space-3) 0;
}
.home-hero-actions .c-btn-ghost{color:#000000;background:#FFFFFF;border-color:#000000}

.queue-stage{
  min-width:0;
  height:auto;
  align-self:start;
  padding:1.75rem;
  overflow:visible;
  color:#2C2238;
  background:#EEEAF3;
  border-radius:var(--d-radius-md);
}

.queue-sheet{
  position:relative;
  z-index:1;
  width:100%;
  max-width:none;
  height:auto;
  overflow:hidden;
  color:#141210;
  background:#FFFFFF;
  border:1px solid #CBC5D2;
  border-radius:var(--d-radius-md);
}

.queue-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--d-space-2);
  padding:var(--d-space-2) var(--d-space-3);
  border-bottom:1px solid #DED9E3;
  color:#141210;
  background:#FFFFFF;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.live{
  display:inline-flex;
  flex:none;
  align-items:center;
  gap:.45rem;
  color:#C23800;
  font-weight:700;
}

.live:before{
  width:.45rem;
  height:.45rem;
  flex:none;
  background:#141210;
  content:"";
}

.queue-row{
  display:grid;
  grid-template-columns:minmax(6.5rem,7.25rem) minmax(0,1fr);
  color:#141210;
  background:#FFFFFF;
  border-bottom:1px solid #E7E3E9;
}

.queue-row:last-child{
  border-bottom:0;
}

.queue-key{
  display:flex;
  min-width:0;
  align-items:center;
  padding:.9rem var(--d-space-3);
  color:#625B68;
  background:#FAF9FB;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
  overflow-wrap:anywhere;
}

.queue-value{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.9rem var(--d-space-3);
  color:#141210;
  background:#FFFFFF;
  font-size:var(--d-text-sm);
  font-weight:700;
  overflow-wrap:anywhere;
}

.queue-value span{
  min-width:0;
  color:#625D67;
  font-weight:500;
  overflow-wrap:anywhere;
}

.queue-value .ready{
  flex:none;
  padding:.3rem .55rem;
  color:#15322D;
  background:#E8F0EE;
  border-radius:var(--d-radius-pill);
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.stage-bar{
  position:relative;
  z-index:1;
  margin-top:.9rem;
  padding:var(--d-space-2) var(--d-space-3);
  color:#FFFFFF;
  background:#141210;
  border-radius:var(--d-radius-sm);
}

.stage-bar strong{
  display:flex;
  justify-content:space-between;
  gap:var(--d-space-2);
  margin-bottom:.8rem;
  color:#FFFFFF;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.stage-bar strong span{
  color:#FF9B72;
}

.stage-track{
  height:.55rem;
  overflow:hidden;
  background:#35312F;
}

.stage-track:after{
  display:block;
  width:72%;
  height:100%;
  background:#C23800;
  animation:stage-grow 3.8s ease-in-out infinite alternate;
  content:"";
}

.handoff{
  position:relative;
  z-index:2;
  width:11.5rem;
  max-width:100%;
  margin:-.5rem 0 0 auto;
  padding:.8rem .9rem;
  color:#2B211A;
  background:#F3EEE7;
  border:1px solid #C9C5C1;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
  line-height:1.7;
  transform:rotate(-2deg);
}

.tool-wall{
  padding:var(--d-space-3) 0;
  color:#141210;
  background:#FAFAF8;
  border-top:1px solid var(--d-line);
  border-bottom:1px solid var(--d-line);
}

.tool-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));
  gap:var(--d-space-1);
  color:#4E4A46;
}

.tool-row b,
.tool-row span{
  display:flex;
  min-width:0;
  min-height:2.75rem;
  align-items:center;
  justify-content:center;
  padding:.55rem .75rem;
  color:#403D39;
  background:#FFFFFF;
  border:1px solid #DEDCD7;
  border-radius:var(--d-radius-sm);
  font-size:var(--d-text-sm);
  text-align:center;
  overflow-wrap:anywhere;
}

.tool-note{
  margin-top:var(--d-space-2);
  color:#68645F;
  font-size:var(--d-text-xs);
}

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

.home-page .d-section-head>div,
.home-page .d-section-head>p{
  min-width:0;
}

.home-page .d-section-head>p{
  color:inherit;
  opacity:.78;
}

.node-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:start;
}

.node{
  container-type:inline-size;
  min-width:0;
  min-height:16.5rem;
  padding:var(--d-space-3);
  color:#2B211A;
  background:#F3EEE7;
}

.node:nth-child(2){
  color:#15322D;
  background:#E8F0EE;
}

.node:nth-child(3){
  color:#2C2238;
  background:#EEEAF3;
}

.node:nth-child(4){
  color:#302416;
  background:#F3EDE2;
}

.node:nth-child(5){
  color:#172A39;
  background:#E9EEF3;
}

.node-top{
  display:flex;
  justify-content:space-between;
  gap:var(--d-space-1);
  margin-bottom:var(--d-space-4);
  color:inherit;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.node-top span{
  font-weight:700;
}

.node h3{
  color:inherit;
  font-size:clamp(1rem,9cqi,1.25rem);
}

.node p{
  margin-top:.6rem;
  color:inherit;
  font-size:var(--d-text-sm);
  opacity:.78;
}

.node-meta{
  margin-top:1.2rem;
  padding-top:.8rem;
  border-top:1px solid color-mix(in srgb,currentColor 18%,transparent);
  color:inherit;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
  overflow-wrap:anywhere;
}

.node-follow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--d-space-3);
  margin-top:var(--d-space-4);
  padding:var(--d-space-3);
  color:#172A39;
  background:#E9EEF3;
  border-radius:var(--d-radius-md);
}

.node-follow p{
  max-width:54rem;
  color:#526571;
}

.node-follow .c-btn{
  flex:none;
}

.price-ribbon{
  min-width:82rem;
  color:#141210;
  background:#FFFFFF;
  border-top:1px solid #DEDCD7;
  border-bottom:1px solid #DEDCD7;
}

.plan-row{
  display:grid;
  grid-template-columns:minmax(13rem,1.4fr) minmax(11rem,.8fr) repeat(4,minmax(10rem,1fr)) minmax(9rem,.75fr);
  color:#141210;
  background:#FFFFFF;
}

.plan-row+.plan-row{
  border-top:1px solid #DEDCD7;
}

.plan-row>div{
  min-width:0;
  padding:1.2rem 1rem;
}

.plan-name b{
  display:block;
  color:#141210;
  font-family:var(--d-font-heading);
  font-size:var(--d-text-lg);
}

.plan-name small,
.price-cell span{
  display:block;
  color:#66615C;
  font-family:var(--d-font-mono);
}

.spec-cell{
  color:#172A39;
  background:#E9EEF3;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-sm);
}

.price-cell{
  color:#141210;
  background:#FFFFFF;
  border-left:1px solid #C8C5BE;
}

.price-cell strong{
  color:#141210;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xl);
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.price-cell.featured{
  color:#15322D;
  background:#E8F0EE;
  border-left-color:#A8BAB5;
}

.price-cell.featured span,
.price-cell.featured strong{
  color:#15322D;
}

.plan-action{
  display:flex;
  align-items:center;
  border-left:1px solid #ECEAE6;
}

.plan-action .c-btn{
  width:100%;
  white-space:normal;
}

.price-note{
  margin-top:var(--d-space-3);
  color:#625F5B;
}

.cap-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  border:1px solid var(--d-line);
}

.cap{
  position:relative;
  min-width:0;
  padding:3.25rem var(--d-space-3) var(--d-space-3);
  color:#141210;
  background:#FFFFFF;
}

.cap+.cap{
  border-left:1px solid var(--d-line);
}

.sticker{
  position:absolute;
  top:-1.15rem;
  right:var(--d-space-2);
  width:6.5rem;
  height:3.8rem;
  display:grid;
  place-items:center;
  padding:.45rem;
  color:#2C2238;
  background:#EEEAF3;
  clip-path:polygon(5% 22%,15% 5%,28% 12%,38% 2%,48% 13%,61% 3%,71% 15%,91% 16%,88% 31%,100% 42%,87% 52%,98% 66%,82% 72%,85% 91%,67% 84%,55% 98%,43% 84%,24% 93%,21% 77%,4% 81%,11% 62%,0 49%,13% 36%);
  font-family:var(--d-font-mono);
  font-size:.75rem;
  font-weight:800;
  line-height:1.15;
  text-align:center;
}

.cap:nth-child(2) .sticker{
  color:#15322D;
  background:#E8F0EE;
}

.cap:nth-child(3) .sticker{
  color:#172A39;
  background:#E9EEF3;
}

.cap:nth-child(4) .sticker{
  color:#302416;
  background:#F3EDE2;
}

.cap p{
  margin-top:.65rem;
  color:#625F5B;
  font-size:var(--d-text-sm);
}

.cap dl{
  margin:1.2rem 0 0;
  padding-top:1rem;
  border-top:1px solid var(--d-line);
}

.cap dl div{
  display:flex;
  justify-content:space-between;
  gap:var(--d-space-2);
  margin:.45rem 0;
}

.cap dt,
.cap dd{
  min-width:0;
}

.cap dt{
  flex:1 1 auto;
  overflow-wrap:anywhere;
  hyphens:auto;
}

.cap dd{
  font-family:var(--d-font-mono);
  text-align:right;
  overflow-wrap:anywhere;
}

.boundary{
  margin-top:var(--d-space-2);
  padding:.8rem;
  color:#625F5B;
  background:#FAFAF8;
  font-size:var(--d-text-xs);
}

.path{
  display:grid;
  grid-template-columns:9rem repeat(3,minmax(0,1fr));
  align-items:stretch;
  color:#141210;
  background:#FFFFFF;
  border-radius:var(--d-radius-md);
  overflow:hidden;
}

.path-origin{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:space-between;
  padding:var(--d-space-3);
  color:#FFFFFF;
  background:#141210;
}

.path-origin small,
.path-origin h3{
  color:#FFFFFF;
}

.path-origin b{
  color:#FF9A71;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-md);
}

.path-step{
  min-width:0;
  padding:var(--d-space-3);
  color:#141210;
  background:#FFFFFF;
  border-right:1px solid var(--d-line);
}

.path-step:last-child{
  border-right:0;
}

.path-no{
  display:flex;
  justify-content:space-between;
  gap:var(--d-space-1);
  margin-bottom:var(--d-space-3);
  color:#66615D;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.path-item{
  margin-top:var(--d-space-2);
}

.path-item span{
  color:#716C66;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
}

.path-item p{
  color:#4E4A46;
  font-size:var(--d-text-sm);
}

.path-verify{
  margin-top:var(--d-space-2);
  padding:.8rem;
  color:#15322D;
  background:#E8F0EE;
  font-size:var(--d-text-xs);
}

.quotes{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  border-top:1px solid var(--d-line);
  border-bottom:1px solid var(--d-line);
}

.quote{
  display:flex;
  min-width:0;
  min-height:14rem;
  flex-direction:column;
  justify-content:space-between;
  gap:var(--d-space-3);
  padding:var(--d-space-3);
  color:#141210;
  background:#FFFFFF;
}

.quote+.quote{
  border-left:1px solid var(--d-line);
}

.quote p{
  color:#2F2C29;
  font-size:var(--d-text-lg);
}

.quote cite{
  color:#68635E;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-xs);
  font-style:normal;
}

.quote cite b{
  display:block;
  color:#141210;
}

.stock-table{
  min-width:52rem;
}

.stock-table caption{
  padding:0 0 var(--d-space-2);
  color:#625F5B;
  font-size:var(--d-text-sm);
  text-align:left;
}

.stock-table th,
.stock-table td{
  text-align:left;
}

.stock-table tbody th{
  color:#141210;
  background:#FAFAF8;
}

.stock-table tbody th small{
  color:#625F5B;
  font-family:var(--d-font-mono);
}

.stock-table .is-highlight{
  color:#15322D;
  background:#E8F0EE;
}

.delivery-notes{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  margin-top:var(--d-space-4);
}

.delivery-notes article{
  min-width:0;
  padding:var(--d-space-3);
  color:#2B211A;
  background:#F3EEE7;
}

.delivery-notes article:nth-child(2){
  color:#15322D;
  background:#E8F0EE;
}

.delivery-notes article:nth-child(3){
  color:#2C2238;
  background:#EEEAF3;
}

.delivery-notes article:nth-child(4){
  color:#172A39;
  background:#E9EEF3;
}

.delivery-notes span{
  display:block;
  margin-bottom:var(--d-space-2);
  color:inherit;
  font-family:var(--d-font-mono);
  font-size:var(--d-text-sm);
  font-weight:800;
}

.delivery-notes h3{
  color:inherit;
}

.delivery-notes p{
  margin-top:.55rem;
  color:inherit;
  opacity:.78;
}

.home-closing-section{
  padding-top:var(--d-section-pad);
  padding-bottom:var(--d-space-4);
}

.home-closing{
  color:#FFFFFF;
  background:#141210;
}

.home-closing .c-cta-inner{
  align-items:center;
}

.closing-title{
  min-width:0;
  max-width:43rem;
}

.closing-title .c-kicker{
  color:#FFB394;
}

.closing-title .c-kicker:before{
  background:#FFFFFF;
}

.closing-title h2{
  color:#FFFFFF;
}

.closing-title p{
  margin-top:var(--d-space-2);
  color:#C8C4BF;
}

.closing-actions{
  display:flex;
  min-width:15rem;
  flex-direction:column;
  align-items:stretch;
  gap:var(--d-space-1);
}

.closing-actions .c-btn{
  width:100%;
}

.home-closing .c-btn-ghost{
  color:#FFFFFF;
  background:transparent;
  border-color:rgba(255,255,255,.42);
}

.home-closing .c-btn-ghost:hover{
  color:#141210;
  background:#FFFFFF;
  border-color:#FFFFFF;
}

@keyframes term-roll{
  0%,22%{transform:translateY(0)}
  28%,48%{transform:translateY(-2.6rem)}
  54%,74%{transform:translateY(-5.2rem)}
  80%,96%{transform:translateY(-7.8rem)}
  100%{transform:translateY(0)}
}

@keyframes stage-grow{
  from{width:38%}
  to{width:86%}
}

@media (max-width:64rem){
  .home-hero .d-hero-split{
    grid-template-columns:minmax(0,1fr);
  }

  .home-copy h1{
    max-width:15ch;
  }

  .queue-stage{
    width:100%;
    height:auto;
    overflow:visible;
  }

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

  .node{
    min-height:0;
  }

  .node:last-child{
    grid-column:1/-1;
  }

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

  .cap:nth-child(3){
    border-top:1px solid var(--d-line);
    border-left:0;
  }

  .cap:nth-child(4){
    border-top:1px solid var(--d-line);
  }

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

  .path-origin{
    min-height:9rem;
  }

  .path-step{
    border-right:0;
    border-bottom:1px solid var(--d-line);
  }

  .path-step:last-child{
    border-bottom:0;
  }

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

@media (max-width:45rem){
  .home-hero .d-hero-split{
    gap:var(--d-space-3);
    padding-block:var(--d-space-4);
  }

  .home-copy h1{
    max-width:none;
    font-size:clamp(2.55rem,13vw,4.25rem);
  }

  .home-copy>p{
    font-size:var(--d-text-md);
  }

  .home-hero-actions{
    width:100%;
  }

  .queue-stage{
    padding:var(--d-space-3);
  }

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

  .queue-row{
    grid-template-columns:minmax(5.75rem,6rem) minmax(0,1fr);
  }

  .queue-key,
  .queue-value{
    padding:.85rem var(--d-space-2);
  }

  .queue-value{
    align-items:flex-start;
    flex-direction:column;
  }

  .handoff{
    margin-top:.75rem;
  }

  .term-lines div{
    font-size:.7rem;
  }

  .home-page .d-section-head{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    gap:var(--d-space-3);
    margin-bottom:var(--d-space-3);
  }

  .node-grid,
  .cap-grid,
  .quotes,
  .delivery-notes{
    grid-template-columns:minmax(0,1fr);
  }

  .node:last-child{
    grid-column:auto;
  }

  .node-follow{
    align-items:stretch;
    flex-direction:column;
  }

  .node-follow .c-btn{
    width:100%;
  }

  .cap+.cap,
  .quote+.quote{
    border-left:0;
    border-top:1px solid var(--d-line);
  }

  .quote{
    min-height:0;
  }

  .delivery-notes article{
    min-height:0;
  }

  .home-closing .c-cta-inner{
    align-items:stretch;
  }

  .closing-actions{
    width:100%;
    min-width:0;
  }
}

@media (max-width:24.375rem){
  .queue-stage{
    padding:var(--d-space-2);
  }

  .queue-row{
    grid-template-columns:minmax(0,1fr);
  }

  .queue-key{
    padding-bottom:.35rem;
  }

  .queue-value{
    padding-top:.35rem;
  }

  .stage-bar strong{
    flex-direction:column;
  }

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

@media (prefers-reduced-motion:reduce){
  .term-lines,
  .stage-track:after{
    animation:none;
    transform:none;
  }
}
