.home-facts{
  border-bottom:1px solid var(--md-line);
  background:var(--md-surface)
}

.home-facts__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr))
}

.home-fact{
  min-width:0;
  padding:1.6rem;
  border-right:1px solid var(--md-line)
}

.home-fact:first-child{padding-left:0}
.home-fact:last-child{border-right:0}

.home-fact small{
  display:block;
  margin-bottom:.5rem;
  color:var(--md-muted);
  font:600 var(--md-fs-0)/1.3 var(--md-font-mono);
  letter-spacing:.08em
}

.home-fact strong{
  font:600 var(--md-fs-3)/1.3 var(--md-font-mono);
  font-variant-numeric:tabular-nums
}

.access-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--md-ink)
}

.access-card{
  min-width:0;
  min-height:340px;
  padding:1.75rem;
  border-right:1px solid var(--md-line);
  border-bottom:1px solid var(--md-line)
}

.access-card:first-child{padding-left:0}
.access-card:last-child{border-right:0}

.access-card h3{
  margin:2.75rem 0 .75rem
}

.access-card p{
  color:var(--md-muted)
}

.access-note{
  margin-top:var(--md-space-4)
}

.hardware-grid{
  display:grid;
  grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  gap:var(--md-space-5)
}

.hardware-grid>*{min-width:0}

.hardware-visual{
  position:relative;
  min-height:440px;
  padding:2rem;
  overflow:hidden;
  border:1px solid var(--md-ink);
  background:var(--md-surface)
}

.hardware-visual::after{
  position:absolute;
  right:-.2rem;
  bottom:-1rem;
  max-width:100%;
  color:var(--md-surface-strong);
  font:700 clamp(3rem,7vw,5.5rem)/1 var(--md-font-mono);
  letter-spacing:-.08em;
  content:"DEDICATED"
}

.chip{
  display:grid;
  width:180px;
  max-width:72%;
  aspect-ratio:1;
  margin:3.5rem auto;
  place-items:center;
  border:1px solid var(--md-line-strong);
  border-radius:var(--md-radius-3);
  background:var(--md-paper);
  transform:rotate(45deg)
}

.chip span{
  display:grid;
  width:82%;
  height:82%;
  place-items:center;
  border:1px solid var(--md-primary);
  border-radius:var(--md-radius-3);
  color:var(--md-primary-deep);
  background:var(--md-accent-soft);
  font:700 2.75rem/1 var(--md-font-mono);
  transform:rotate(-45deg)
}

.hardware-meta{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--md-line-strong);
  font:500 var(--md-fs-0)/1.5 var(--md-font-mono)
}

.hardware-meta span{
  min-width:0;
  padding:1rem;
  border-right:1px solid var(--md-line);
  text-align:center
}

.hardware-meta span:last-child{border:0}

.spec-list{
  margin:0;
  border-top:1px solid var(--md-ink)
}

.spec-list div{
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:1rem;
  padding:1.25rem 0;
  border-bottom:1px solid var(--md-line)
}

.spec-list dt{
  color:var(--md-muted);
  font:600 var(--md-fs-0)/1.5 var(--md-font-mono)
}

.spec-list dd{
  min-width:0;
  margin:0
}

.plan-layout{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(0,1fr);
  gap:var(--md-space-3)
}

.plan-layout>*{min-width:0}

.order-facts{
  display:flex;
  min-width:0;
  flex-direction:column
}

.order-facts ul{
  margin:1rem 0 1.5rem;
  padding:0;
  list-style:none;
  border-top:1px solid var(--md-line-strong)
}

.order-facts li{
  display:flex;
  min-width:0;
  justify-content:space-between;
  gap:1rem;
  padding:.8rem 0;
  border-bottom:1px solid var(--md-line);
  font:500 var(--md-fs-0)/1.4 var(--md-font-mono)
}

.order-facts li span{
  min-width:0
}

.order-facts li span:last-child{
  color:var(--md-primary);
  text-align:right
}

.order-facts .c-btn{
  width:100%;
  margin-top:auto
}

.plan-footnote{
  max-width:var(--md-container-narrow);
  margin-top:var(--md-space-3);
  color:var(--md-muted)
}

.timeline-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--md-space-5)
}

.timeline-layout>*{min-width:0}

.timeline{
  position:relative;
  margin:0;
  padding:0;
  list-style:none
}

.timeline::before{
  position:absolute;
  top:18px;
  bottom:18px;
  left:17px;
  width:1px;
  background:var(--md-line-strong);
  content:""
}

.timeline li{
  position:relative;
  display:grid;
  min-width:0;
  min-height:84px;
  grid-template-columns:52px minmax(0,1fr) 78px;
  gap:.5rem
}

.timeline__node{
  position:relative;
  z-index:1;
  display:grid;
  width:35px;
  height:35px;
  place-items:center;
  border:1px solid var(--md-line-strong);
  border-radius:50%;
  background:var(--md-paper);
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1 var(--md-font-mono)
}

.timeline li:last-child .timeline__node{
  border-color:var(--md-primary);
  background:var(--md-accent)
}

.timeline h3{
  margin:.3rem 0;
  font-family:var(--md-font-body);
  font-size:var(--md-fs-2);
  letter-spacing:0
}

.timeline p{
  color:var(--md-muted);
  font-size:var(--md-fs-1)
}

.timeline time{
  padding-top:.5rem;
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1 var(--md-font-mono);
  text-align:right;
  font-variant-numeric:tabular-nums
}

.timeline-total{
  display:flex;
  justify-content:space-between;
  gap:var(--md-space-2);
  padding:1rem 0;
  border-top:1px solid var(--md-ink);
  border-bottom:1px solid var(--md-line);
  font:600 var(--md-fs-1)/1 var(--md-font-mono)
}

.timeline-total b{
  color:var(--md-primary);
  font-size:var(--md-fs-3)
}

.terminal{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--md-ink);
  border-radius:var(--md-radius-2);
  background:var(--md-ink);
  box-shadow:var(--md-shadow-2)
}

.terminal__bar{
  display:flex;
  height:42px;
  min-width:0;
  align-items:center;
  padding:0 1rem;
  border-bottom:1px solid var(--md-ink-soft);
  background:var(--md-primary-deep)
}

.terminal__lights{
  display:flex;
  flex:0 0 auto;
  gap:7px
}

.terminal__lights i{
  width:9px;
  height:9px;
  border-radius:50%
}

.terminal__lights i:nth-child(1){background:var(--md-danger)}
.terminal__lights i:nth-child(2){background:var(--md-warning)}
.terminal__lights i:nth-child(3){background:var(--md-success)}

.terminal__title{
  min-width:0;
  flex:1;
  color:var(--md-line-strong);
  text-align:center;
  font:500 var(--md-fs-0)/1 var(--md-font-mono)
}

.terminal pre{
  min-height:330px;
  max-width:100%;
  padding:1.5rem;
  overflow-x:auto;
  color:var(--md-surface-strong);
  font:500 var(--md-fs-1)/1.9 var(--md-font-mono)
}

.term-green{
  color:var(--md-accent)
}

.usecase-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--md-ink)
}

.usecase{
  min-width:0;
  min-height:330px;
  padding:1.5rem;
  border-right:1px solid var(--md-line);
  border-bottom:1px solid var(--md-line)
}

.usecase:last-child{border-right:0}

.usecase small{
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1 var(--md-font-mono)
}

.usecase h3{
  margin:3rem 0 .75rem
}

.usecase p{
  color:var(--md-muted);
  font-size:var(--md-fs-1)
}

.migration{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:var(--md-space-4);
  border:1px solid var(--md-line-strong)
}

.migration article{
  position:relative;
  min-width:0;
  padding:1.75rem;
  border-right:1px solid var(--md-line)
}

.migration article:last-child{border:0}

.migration article:not(:last-child)::after{
  position:absolute;
  z-index:2;
  top:1.5rem;
  right:-13px;
  display:grid;
  width:25px;
  height:25px;
  place-items:center;
  border:1px solid var(--md-line);
  border-radius:50%;
  background:var(--md-paper);
  color:var(--md-primary);
  content:"→"
}

.migration small{
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1 var(--md-font-mono)
}

.migration h3{
  margin:1.3rem 0 .6rem;
  font-family:var(--md-font-body);
  font-size:var(--md-fs-3)
}

.migration p{
  color:var(--md-muted);
  font-size:var(--md-fs-1)
}

.region-layout{
  display:grid;
  grid-template-columns:minmax(0,4fr) minmax(0,8fr);
  gap:var(--md-space-4)
}

.region-layout>*{min-width:0}

.region-list{
  border-top:1px solid var(--md-ink)
}

.region-list a{
  display:grid;
  min-width:0;
  min-height:68px;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:1rem;
  border-bottom:1px solid var(--md-line);
  transition:color var(--md-duration) var(--md-ease),padding var(--md-duration) var(--md-ease)
}

.region-list a:hover{
  padding-left:var(--md-space-1);
  color:var(--md-primary)
}

.region-list span{
  color:var(--md-muted);
  font:500 var(--md-fs-0)/1.3 var(--md-font-mono)
}

.stock{
  display:inline-flex!important;
  align-items:center;
  color:var(--md-ink)!important
}

.stock::before{
  width:7px;
  height:7px;
  margin-right:.45rem;
  border-radius:50%;
  background:var(--md-accent);
  content:""
}

.stock-dot{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--md-accent);
  box-shadow:0 0 0 3px var(--md-accent-soft)
}

.measure{
  margin-top:.75rem;
  color:var(--md-muted);
  font:500 var(--md-fs-0)/1.6 var(--md-font-mono)
}

.control-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--md-space-3)
}

.control-grid>*{min-width:0}

.control-grid h3{
  margin-top:var(--md-space-3)
}

.control-grid ol{
  margin-bottom:0;
  color:var(--md-muted)
}

.control-grid li+li{
  margin-top:var(--md-space-1)
}

.control-action{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:var(--md-space-3);
  margin-top:var(--md-space-3)
}

.control-action>*{min-width:0}

.control-action p{
  margin:.35rem 0 0
}

.control-action .c-btn{
  flex:0 0 auto
}

.payment-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--md-space-3)
}

.payment-grid>*{min-width:0}

.payment-code{
  display:block;
  color:var(--md-primary);
  font-size:var(--md-fs-1);
  font-weight:600
}

.payment-grid h3{
  margin:var(--md-space-3) 0 var(--md-space-1)
}

.payment-grid p{
  color:var(--md-muted)
}

.payment-line{
  margin-top:var(--md-space-4);
  padding-top:var(--md-space-3);
  border-top:1px solid var(--md-line);
  color:var(--md-muted)
}

.knowledge-feature{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  border-top:1px solid var(--md-ink)
}

.knowledge-feature>*{min-width:0}

.article-large{
  min-height:450px;
  padding:2.25rem;
  border-right:1px solid var(--md-line);
  border-bottom:1px solid var(--md-line);
  background:radial-gradient(circle at 90% 12%,var(--md-accent-soft),transparent 34%),var(--md-surface)
}

.article-large h3{
  max-width:620px;
  margin:7rem 0 1rem;
  font-size:var(--md-fs-5)
}

.article-large p{
  max-width:680px;
  color:var(--md-ink-soft)
}

.article-tag{
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1 var(--md-font-mono)
}

.article-stack{
  display:grid;
  grid-template-rows:repeat(2,minmax(0,1fr))
}

.article-small{
  min-width:0;
  padding:1.75rem;
  border-bottom:1px solid var(--md-line)
}

.article-small h3{
  margin:2.5rem 0 .6rem
}

.article-index{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr))
}

.article-index article{
  min-width:0;
  padding:1.5rem;
  border-right:1px solid var(--md-line);
  border-bottom:1px solid var(--md-line)
}

.article-index article:last-child{border-right:0}

.article-index h3{
  margin:1.8rem 0 .5rem;
  font-size:var(--md-fs-3)
}

.glossary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  border-top:1px solid var(--md-ink)
}

.glossary div{
  min-width:0;
  padding:1.25rem;
  border-bottom:1px solid var(--md-line)
}

.glossary div:nth-child(odd){
  padding-left:0;
  border-right:1px solid var(--md-line)
}

.glossary dt{
  margin-bottom:.4rem;
  font:650 var(--md-fs-1)/1.3 var(--md-font-mono)
}

.glossary dd{
  margin:0;
  color:var(--md-muted);
  font-size:var(--md-fs-1)
}

@media (max-width:900px){
  .home-facts__grid,
  .usecase-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .home-fact:nth-child(2),
  .usecase:nth-child(2){
    border-right:0
  }

  .home-fact:nth-child(-n+2){
    border-bottom:1px solid var(--md-line)
  }

  .hardware-grid,
  .plan-layout,
  .timeline-layout,
  .region-layout{
    grid-template-columns:1fr
  }

  .knowledge-feature{
    grid-template-columns:1fr
  }

  .article-large{
    border-right:0
  }

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

  .article-index article:nth-child(2){
    border-right:0
  }

  .article-index article:last-child{
    border-right:1px solid var(--md-line)
  }

  .control-grid{
    grid-template-columns:1fr
  }
}

@media (max-width:768px){
  .access-grid{
    grid-template-columns:1fr
  }

  .access-card,
  .access-card:first-child{
    min-height:0;
    padding:1.5rem 0;
    border-right:0
  }

  .access-card h3{
    margin-top:1.75rem
  }

  .timeline-layout{
    gap:var(--md-space-4)
  }

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

  .control-action .c-btn{
    width:100%
  }
}

@media (max-width:680px){
  .home-facts__grid,
  .usecase-grid,
  .migration,
  .article-index,
  .glossary,
  .payment-grid{
    grid-template-columns:1fr
  }

  .home-fact{
    padding:1.25rem 0;
    border-right:0;
    border-bottom:1px solid var(--md-line)
  }

  .home-fact:last-child{
    border-bottom:0
  }

  .hardware-visual{
    min-height:380px;
    padding:var(--md-space-3)
  }

  .chip{
    width:150px;
    margin:3rem auto
  }

  .chip span{
    font-size:var(--md-fs-5)
  }

  .spec-list div{
    grid-template-columns:1fr;
    gap:.35rem
  }

  .timeline li{
    min-height:96px;
    grid-template-columns:44px minmax(0,1fr) 62px
  }

  .timeline time{
    font-size:var(--md-fs-0)
  }

  .terminal pre{
    min-height:0;
    padding:var(--md-space-2)
  }

  .usecase{
    min-height:0;
    padding:1.5rem 0;
    border-right:0
  }

  .usecase h3{
    margin-top:1.75rem
  }

  .migration article{
    border-right:0;
    border-bottom:1px solid var(--md-line)
  }

  .migration article:not(:last-child)::after{
    display:none
  }

  .region-list a{
    grid-template-columns:minmax(0,1fr) auto
  }

  .region-list .stock{
    grid-column:1/-1;
    padding-bottom:.8rem
  }

  .article-large{
    min-height:0;
    padding:var(--md-space-3)
  }

  .article-large h3{
    margin:var(--md-space-5) 0 var(--md-space-2);
    font-size:var(--md-fs-4)
  }

  .article-small,
  .article-index article{
    padding:var(--md-space-3) 0;
    border-right:0
  }

  .article-index article:last-child{
    border-right:0
  }

  .glossary div,
  .glossary div:nth-child(odd){
    padding:1.25rem 0;
    border-right:0
  }
}

@media (max-width:390px){
  .hardware-meta{
    grid-template-columns:1fr
  }

  .hardware-meta span{
    border-right:0;
    border-bottom:1px solid var(--md-line)
  }

  .hardware-meta span:last-child{
    border-bottom:0
  }

  .timeline li{
    grid-template-columns:38px minmax(0,1fr)
  }

  .timeline time{
    grid-column:2;
    padding:0 0 var(--md-space-2);
    text-align:left
  }

  .timeline::before{
    left:17px
  }

  .timeline-total{
    align-items:flex-start;
    flex-direction:column
  }

  .order-facts li{
    align-items:flex-start;
    flex-direction:column;
    gap:.3rem
  }

  .order-facts li span:last-child{
    text-align:left
  }
}
