.dc-page{
  background:
    radial-gradient(48rem 34rem at 82% 10%,color-mix(in srgb,var(--vm-accent) 14%,transparent),transparent 72%),
    var(--vm-bg);
}

.dc-hero{
  display:block;
  padding-block:var(--vm-hero-pad);
  color:#ecebe6;
  background:
    radial-gradient(42rem 30rem at 78% 24%,color-mix(in srgb,var(--vm-accent) 22%,transparent),transparent 72%),
    linear-gradient(180deg,#030405,#050608);
}

.dc-hero .c-page-hero-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  align-items:start;
  gap:var(--vm-space-5);
}

.dc-hero .c-page-hero-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
  color:#ecebe6;
}

.dc-hero .c-page-hero-copy h1{
  max-width:15ch;
  color:#f4f2ed;
  font-size:clamp(2.5rem,4.5vw,3.75rem);
  line-height:1.16;
}

.dc-hero .c-page-hero-copy p{
  max-width:42rem;
  color:#aeb3bc;
}

.dc-kicker-block{
  display:grid;
  min-width:0;
  gap:var(--vm-space-2);
}

.dc-kicker-block .c-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.dc-hero-lead{
  margin-top:var(--vm-space-3);
  color:#d5d7db!important;
  font-size:var(--vm-text-3);
}

.dc-hero-lead+p{
  margin-top:var(--vm-space-2);
}

.dc-hero-actions{
  justify-content:flex-start;
  margin-block:var(--vm-space-3);
}

.dc-hero-facts{
  display:grid;
  width:100%;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  margin:0 0 var(--vm-space-3);
  padding:var(--vm-space-2) 0;
  border-top:1px solid #20242b;
  border-bottom:1px solid #20242b;
  color:#ecebe6;
}

.dc-hero-facts div{
  min-width:0;
  padding-inline:var(--vm-space-2);
  border-left:1px solid #20242b;
}

.dc-hero-facts div:first-child{
  padding-left:0;
  border-left:0;
}

.dc-hero-facts dt,
.dc-hero-facts dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.dc-hero-facts dt{
  color:#969ca5;
}

.dc-hero-facts dd{
  margin-top:.35rem;
  color:#f4f2ed;
}

.dc-hero-stage{
  min-width:0;
  height:auto;
  align-self:start;
  overflow:visible;
}

.dc-routing-board{
  width:100%;
  max-width:none;
  overflow:hidden;
  border:1px solid #20242b;
  border-radius:var(--vm-radius-lg);
  color:#ecebe6;
  background:#080a0d;
  box-shadow:var(--vm-shadow-panel);
}

.dc-routing-board-head{
  display:flex;
  min-width:0;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  border-bottom:1px solid #20242b;
  color:#ecebe6;
  background:#0d1015;
}

.dc-routing-board-head>div{
  min-width:0;
}

.dc-routing-board-head h2{
  margin-top:.5rem;
  color:#f4f2ed;
  font-family:var(--vm-font-body);
  font-size:var(--vm-text-4);
  font-weight:600;
}

.dc-board-label{
  color:#7fa7ff;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-0);
  letter-spacing:.08em;
}

.dc-routing-board-body{
  padding-inline:var(--vm-space-3);
  color:#ecebe6;
  background:#080a0d;
}

.dc-routing-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--vm-space-2);
  padding-block:1.15rem;
  border-bottom:1px solid #15181e;
}

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

.dc-routing-row>div{
  min-width:0;
}

.dc-routing-row strong,
.dc-routing-row small{
  display:block;
  overflow-wrap:anywhere;
}

.dc-routing-row strong{
  color:#ecebe6;
  font-size:var(--vm-text-2);
}

.dc-routing-row small{
  margin-top:.25rem;
  color:#969ca5;
}

.dc-route-code{
  display:inline-flex;
  width:2.5rem;
  height:2.5rem;
  align-items:center;
  justify-content:center;
  border-radius:var(--vm-radius-sm);
  color:#ffffff;
  background:#173c9e;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  font-weight:600;
}

.dc-route-count{
  color:#82c9a4;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  white-space:nowrap;
}

.dc-routing-board-foot{
  display:grid;
  gap:.35rem;
  padding:var(--vm-space-3);
  border-top:1px solid #20242b;
  color:#ecebe6;
  background:#0a0c10;
}

.dc-routing-board-foot span{
  color:#969ca5;
  font-size:var(--vm-text-1);
}

.dc-routing-board-foot strong{
  color:#d9dce1;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  font-weight:500;
  overflow-wrap:anywhere;
}

.dc-section-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.75fr);
  align-items:end;
  gap:var(--vm-space-4);
  margin-bottom:var(--vm-space-4);
}

.dc-section-head>div,
.dc-section-head>p{
  min-width:0;
}

.dc-section-head p{
  color:#969ca5;
}

.dc-overview{
  color:#ecebe6;
  background:#050608;
}

.dc-overview h2,
.dc-overview h3{
  color:#f4f2ed;
}

.dc-overview p{
  color:#969ca5;
}

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

.dc-overview-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:var(--vm-space-3);
  color:#ecebe6;
  background:#0a0c10;
}

.dc-overview-card h3{
  margin-top:var(--vm-space-2);
  color:#f4f2ed;
}

.dc-overview-card p{
  margin-top:.5rem;
  color:#969ca5;
}

.dc-overview-number{
  color:#7fa7ff;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  font-variant-numeric:tabular-nums;
}

.dc-status-section{
  color:#ecebe6;
  background:
    radial-gradient(38rem 24rem at 12% 40%,color-mix(in srgb,var(--vm-primary) 12%,transparent),transparent 76%),
    #030405;
}

.dc-status-section h2{
  color:#f4f2ed;
}

.dc-status-section p{
  color:#969ca5;
}

.dc-status-table-wrap{
  color:#ecebe6;
  background:#080a0d;
}

.dc-status-table{
  color:#ecebe6;
  background:#080a0d;
}

.dc-status-table th{
  color:#aeb3bc;
  background:#0d1015;
}

.dc-status-table td{
  color:#d4d6d8;
  background:#080a0d;
  vertical-align:middle;
}

.dc-status-table td strong{
  display:block;
  color:#ecebe6;
}

.dc-status-table .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.dc-cell-code{
  display:block;
  margin-top:.25rem;
  color:#7fa7ff;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-0);
}

.dc-status-note{
  display:grid;
  gap:.5rem;
  margin-top:var(--vm-space-3);
  color:#ecebe6;
  background:#0b0e13;
  border-color:#20242b;
}

.dc-status-note strong{
  color:#f4f2ed;
}

.dc-status-note p{
  color:#aeb3bc;
}

.dc-region-section{
  color:#ecebe6;
  background:#030405;
}

.dc-region-section:nth-of-type(even){
  background:
    radial-gradient(34rem 22rem at 88% 50%,color-mix(in srgb,var(--vm-accent) 9%,transparent),transparent 76%),
    #050608;
}

.dc-region-layout{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  align-items:stretch;
  gap:var(--vm-space-4);
}

.dc-region-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
  color:#ecebe6;
}

.dc-region-heading{
  display:grid;
  min-width:0;
  gap:var(--vm-space-2);
}

.dc-region-heading h2{
  max-width:20ch;
  color:#f4f2ed;
}

.dc-region-code{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:#7fa7ff;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  letter-spacing:.06em;
}

.dc-region-copy>p{
  max-width:43rem;
  color:#aeb3bc;
}

.dc-region-heading+p{
  margin-top:var(--vm-space-3);
}

.dc-region-copy>p+p{
  margin-top:var(--vm-space-2);
}

.dc-region-actions{
  justify-content:flex-start;
  margin-top:var(--vm-space-3);
}

.dc-region-panel{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  color:#ecebe6;
  background:#0a0c10;
}

.dc-region-panel h3{
  color:#f4f2ed;
}

.dc-task-list{
  display:grid;
  margin:var(--vm-space-3) 0 0;
  padding:0;
  list-style:none;
}

.dc-task-list li{
  display:grid;
  min-width:0;
  gap:.35rem;
  padding-block:var(--vm-space-2);
  border-top:1px solid #20242b;
  color:#ecebe6;
}

.dc-task-list strong{
  color:#ecebe6;
}

.dc-task-list span{
  color:#969ca5;
}

.dc-region-specs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--vm-space-1);
  margin:auto 0 0;
  padding-top:var(--vm-space-3);
}

.dc-region-specs div{
  min-width:0;
  padding:var(--vm-space-2);
  border-radius:var(--vm-radius-sm);
  color:#ecebe6;
  background:#0d1015;
}

.dc-region-specs dt,
.dc-region-specs dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.dc-region-specs dt{
  color:#969ca5;
}

.dc-region-specs dd{
  margin-top:.35rem;
  color:#f4f2ed;
}

.dc-choice-section{
  color:#ecebe6;
  background:
    radial-gradient(40rem 26rem at 50% 20%,color-mix(in srgb,var(--vm-primary) 11%,transparent),transparent 76%),
    #050608;
}

.dc-choice-section h2,
.dc-choice-section h3{
  color:#f4f2ed;
}

.dc-choice-section p{
  color:#969ca5;
}

.dc-choice-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  gap:var(--vm-space-2);
  margin:0;
  padding:0;
  list-style:none;
}

.dc-choice-card{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  color:#ecebe6;
  background:#0a0c10;
}

.dc-choice-card h3{
  margin-top:var(--vm-space-2);
  color:#f4f2ed;
}

.dc-choice-card p{
  margin-top:.5rem;
  color:#969ca5;
}

.dc-choice-step{
  color:#7fa7ff;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-text-1);
  font-variant-numeric:tabular-nums;
}

.dc-choice-alert{
  display:grid;
  gap:.5rem;
  margin-top:var(--vm-space-3);
  color:#211f13;
  background:#e7d889;
  border-color:color-mix(in srgb,#211f13 18%,transparent);
}

.dc-choice-alert strong,
.dc-choice-alert p{
  color:#211f13;
}

.dc-final-section{
  padding-top:var(--vm-space-section);
  padding-bottom:var(--vm-space-5);
  color:#ecebe6;
  background:#030405;
}

.dc-final-band{
  align-items:center;
  color:#ecebe6;
  background:
    radial-gradient(30rem 18rem at 80% 25%,color-mix(in srgb,var(--vm-accent) 20%,transparent),transparent 72%),
    #080a0d;
  border-color:#20242b;
}

.dc-final-band>div{
  min-width:0;
}

.dc-final-band h2{
  max-width:22ch;
  color:#f4f2ed;
}

.dc-final-band p{
  max-width:48rem;
  margin-top:var(--vm-space-2);
  color:#aeb3bc;
}

.dc-final-actions{
  min-width:min(100%,14rem);
  flex:0 0 auto;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  margin-top:0;
}

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

@media (max-width:64rem){
  .dc-hero .c-page-hero-inner,
  .dc-region-layout{
    grid-template-columns:1fr;
  }

  .dc-hero-stage{
    height:auto;
    overflow:visible;
  }

  .dc-section-head{
    grid-template-columns:1fr;
    align-items:start;
    gap:var(--vm-space-2);
  }

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

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

  .dc-region-panel{
    min-height:0;
  }

  .dc-region-specs{
    margin-top:var(--vm-space-3);
  }
}

@media (max-width:44rem){
  .dc-hero{
    padding-block:var(--vm-space-6);
  }

  .dc-hero .c-page-hero-inner{
    gap:var(--vm-space-4);
  }

  .dc-hero .c-page-hero-copy h1{
    max-width:none;
    font-size:clamp(2.35rem,12vw,3.1rem);
  }

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

  .dc-hero-facts div{
    padding:var(--vm-space-2);
    border-left:0;
    border-top:1px solid #20242b;
  }

  .dc-hero-facts div:nth-child(-n+2){
    border-top:0;
  }

  .dc-hero-facts div:nth-child(even){
    border-left:1px solid #20242b;
  }

  .dc-hero-facts div:first-child{
    padding:var(--vm-space-2);
  }

  .dc-routing-board-head{
    display:grid;
  }

  .dc-routing-board-head .c-badge{
    width:fit-content;
    align-self:flex-start;
  }

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

  .dc-route-count{
    grid-column:2;
  }

  .dc-overview-grid,
  .dc-choice-grid,
  .dc-region-specs{
    grid-template-columns:1fr;
  }

  .dc-region-heading h2{
    max-width:none;
  }

  .dc-region-actions{
    width:100%;
  }

  .dc-final-band{
    gap:var(--vm-space-3);
  }

  .dc-final-actions{
    width:100%;
  }
}

@media (max-width:24.375rem){
  .dc-hero-facts{
    grid-template-columns:1fr;
  }

  .dc-hero-facts div,
  .dc-hero-facts div:nth-child(-n+2),
  .dc-hero-facts div:nth-child(even){
    padding:var(--vm-space-2) 0;
    border-top:1px solid #20242b;
    border-left:0;
  }

  .dc-hero-facts div:first-child{
    padding:var(--vm-space-2) 0;
    border-top:0;
  }

  .dc-routing-row{
    gap:var(--vm-space-1);
  }
}

.dc-routing-row{border-bottom-color:rgba(236,235,230,.18)}
.dc-overview-grid .c-card{background:#151a22}

@media (prefers-reduced-motion:reduce){
  .dc-page *,
  .dc-page *::before,
  .dc-page *::after{
    animation:none!important;
    transition-duration:.01ms!important;
  }
}
