.compare-page main{background:var(--color-paper);color:var(--color-ink)}

.compare-hero[data-hero-form="terminal"]{
  padding-block:var(--hero-pad);
  background:var(--color-paper);
  color:var(--color-ink)
}

.compare-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,32rem);
  align-items:start;
  gap:var(--space-9)
}

.compare-hero-copy{min-width:0}

.compare-hero-copy .c-kicker,
.compare-section-head .c-kicker{
  margin-bottom:var(--space-4)
}

.compare-hero-copy h1{max-width:45rem}

.compare-hero-lead{
  max-width:43rem;
  margin-top:var(--space-5);
  color:var(--color-muted);
  font-size:var(--text-lg);
  line-height:var(--leading-loose)
}

.compare-hero-actions{
  justify-content:flex-start;
  margin-top:var(--space-5)
}

.compare-hero-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:var(--space-7) 0 var(--space-5);
  padding-top:var(--space-5);
  border-top:1px solid var(--color-line)
}

.compare-hero-stats div{
  min-width:0;
  padding-inline:var(--space-4);
  border-left:1px solid var(--color-line)
}

.compare-hero-stats div:first-child{
  padding-left:0;
  border-left:0
}

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

.compare-hero-stats dt{
  color:var(--color-ink);
  font-family:var(--font-mono);
  font-size:var(--text-lg);
  line-height:1.3;
  font-variant-numeric:tabular-nums
}

.compare-hero-stats dd{
  margin-top:var(--space-2);
  color:var(--color-muted);
  font-size:var(--text-sm);
  line-height:1.45
}

.compare-selector-stage{
  width:100%;
  max-width:none;
  min-width:0;
  height:auto;
  padding:0;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:var(--color-cream);
  color:var(--color-cream-ink);
  box-shadow:var(--shadow-soft);
  text-align:left
}

.compare-stage-strip{
  min-height:3.25rem;
  padding:var(--space-3) var(--space-6);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  background:#59155f;
  color:#fff;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  line-height:1.4;
  letter-spacing:.08em
}

.compare-stage-body{
  padding:var(--space-6);
  background:var(--color-cream);
  color:var(--color-cream-ink)
}

.compare-stage-intro .c-badge{margin-bottom:var(--space-4)}

.compare-stage-intro h2{
  font-size:clamp(1.55rem,3vw,2rem);
  line-height:var(--leading-heading)
}

.compare-stage-intro p{
  margin-top:var(--space-3);
  color:#5e554a;
  font-size:var(--text-sm)
}

.compare-stage-records{
  display:grid;
  margin-top:var(--space-6)
}

.compare-stage-record{
  min-width:0;
  display:grid;
  grid-template-columns:2.5rem minmax(0,1fr) auto;
  gap:var(--space-3);
  align-items:center;
  padding-block:var(--space-4);
  border-top:1px solid color-mix(in srgb,#29231d 14%,transparent)
}

.compare-stage-record:last-child{
  border-bottom:1px solid color-mix(in srgb,#29231d 14%,transparent)
}

.compare-stage-code{
  width:2.5rem;
  height:2.5rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:#fff;
  color:#59155f;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  line-height:1;
  font-weight:700
}

.compare-stage-record div,
.compare-stage-record strong,
.compare-stage-record span,
.compare-stage-record b{
  min-width:0;
  overflow-wrap:anywhere
}

.compare-stage-record strong{
  display:block;
  color:#29231d;
  font-size:var(--text-sm);
  line-height:1.35
}

.compare-stage-record div span{
  display:block;
  margin-top:var(--space-1);
  color:#675e53;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  line-height:1.4
}

.compare-stage-record b{
  width:fit-content;
  padding:.4em .9em;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  background:#19151b;
  color:#fff;
  font-size:var(--text-xs);
  line-height:1
}

.compare-stage-foot{
  margin-top:var(--space-5);
  padding:var(--space-4);
  border-radius:var(--radius-md);
  display:grid;
  gap:var(--space-2);
  background:#fff;
  color:#19151b
}

.compare-stage-foot span{
  color:#6a626a;
  font-size:var(--text-xs);
  line-height:1.4;
  letter-spacing:.06em
}

.compare-stage-foot strong{
  font-size:var(--text-sm);
  line-height:1.5;
  overflow-wrap:anywhere
}

.compare-section-head{
  max-width:49rem;
  margin-bottom:var(--space-8)
}

.compare-section-head h2{max-width:46rem}

.compare-section-head > p{
  max-width:47rem;
  margin-top:var(--space-4);
  color:var(--color-muted);
  font-size:var(--text-lg)
}

.compare-workload-section .compare-section-head > p{
  color:#45575c
}

.compare-migration-section .compare-section-head > p{
  color:#625b50
}

.compare-table-wrap{
  border-radius:var(--radius-md);
  box-shadow:0 .8rem 2rem rgba(25,21,27,.05)
}

.compare-page .c-table caption{
  padding:var(--space-4) var(--space-5);
  background:var(--color-neutral);
  color:var(--color-ink);
  font-size:var(--text-sm);
  line-height:1.5;
  font-weight:700;
  text-align:left
}

.compare-page .c-table th,
.compare-page .c-table td{
  min-width:8rem;
  overflow-wrap:break-word
}

.compare-page .c-table th:first-child,
.compare-page .c-table td:first-child{
  min-width:11rem
}

.compare-spec-table{min-width:72rem}

.compare-spec-table th:last-child,
.compare-spec-table td:last-child{
  min-width:19rem;
  font-family:var(--font-body)
}

.compare-table-focus th,
.compare-table-focus td{
  background:var(--color-blue);
  color:var(--color-blue-ink)
}

.compare-spec-note{margin-top:var(--space-6)}

.compare-matrix-table{min-width:64rem}

.compare-matrix-table th:last-child,
.compare-matrix-table td:last-child{
  min-width:18rem;
  font-family:var(--font-body)
}

.compare-fit{
  width:fit-content;
  display:inline-flex;
  align-items:center;
  padding:.4em .9em;
  border-radius:999px;
  font-family:var(--font-body);
  font-size:var(--text-xs);
  line-height:1;
  font-weight:700
}

.compare-fit-good{
  background:#edf2e8;
  color:#1d2b1a
}

.compare-fit-ready{
  background:#eaf1f3;
  color:#19292e
}

.compare-fit-check{
  background:#f5ece7;
  color:#30201b
}

.compare-workload-guides{
  margin-top:var(--space-7);
  align-items:stretch
}

.compare-guide-card{
  min-width:0;
  padding:var(--space-6);
  background:#fff;
  color:#19151b
}

.compare-guide-index{
  display:block;
  margin-bottom:var(--space-3);
  color:#59155f;
  font-size:var(--text-sm);
  line-height:1
}

.compare-guide-card h3{
  font-size:var(--text-h3);
  line-height:var(--leading-heading)
}

.compare-guide-card p{
  margin-top:var(--space-3);
  color:#5f565f;
  opacity:1
}

.compare-guide-card .c-badge{
  margin-top:var(--space-6)
}

.compare-cost-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
  align-items:stretch
}

.compare-cost-card{
  min-width:0;
  height:100%;
  padding:var(--space-6);
  border-radius:var(--radius-lg);
  display:flex;
  flex-direction:column
}

.compare-cost-card-cream{
  background:var(--color-cream);
  color:var(--color-cream-ink)
}

.compare-cost-card-blue{
  background:var(--color-blue);
  color:var(--color-blue-ink)
}

.compare-cost-card-peach{
  background:var(--color-peach);
  color:var(--color-peach-ink)
}

.compare-cost-head{
  min-width:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-4)
}

.compare-cost-head > div{min-width:0}

.compare-cost-head .c-badge{margin-bottom:var(--space-4)}

.compare-cost-head h3{
  font-size:var(--text-h3);
  line-height:var(--leading-heading)
}

.compare-cost-code{
  flex:0 0 auto;
  padding:.5rem;
  border-radius:var(--radius-sm);
  background:#fff;
  color:#59155f;
  font-size:var(--text-xs);
  line-height:1
}

.compare-period-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  margin:var(--space-6) 0 var(--space-5)
}

.compare-period-grid div{
  min-width:0;
  padding:var(--space-4);
  border-radius:var(--radius-sm);
  background:#fff;
  color:#19151b
}

.compare-period-grid dt{
  color:#6a626a;
  font-size:var(--text-xs);
  line-height:1.35
}

.compare-period-grid dd{
  margin-top:var(--space-2);
  color:#19151b;
  font-family:var(--font-mono);
  font-size:var(--text-lg);
  line-height:1.2;
  font-weight:700;
  font-variant-numeric:tabular-nums
}

.compare-cost-card > p{
  margin-top:auto;
  color:inherit;
  opacity:.78
}

.compare-cycle-rules{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:var(--space-7);
  border-top:1px solid var(--color-line);
  border-bottom:1px solid var(--color-line)
}

.compare-cycle-rules div{
  min-width:0;
  padding:var(--space-5);
  border-left:1px solid var(--color-line)
}

.compare-cycle-rules div:first-child{border-left:0}

.compare-cycle-rules strong{
  display:block;
  color:var(--color-ink);
  font-size:var(--text-base);
  line-height:1.4
}

.compare-cycle-rules span{
  display:block;
  margin-top:var(--space-2);
  color:var(--color-muted);
  font-size:var(--text-sm);
  line-height:1.55;
  overflow-wrap:anywhere
}

.compare-migration-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
  align-items:stretch;
  margin:0;
  padding:0;
  list-style:none
}

.compare-migration-card{
  min-width:0;
  height:100%;
  padding:var(--space-6);
  border-radius:var(--radius-lg);
  display:flex;
  flex-direction:column;
  background:#fff;
  color:#19151b
}

.compare-migration-mark{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  margin-bottom:var(--space-4)
}

.compare-migration-mark svg{
  width:2.75rem;
  height:2.75rem;
  padding:.7rem;
  border-radius:.75rem;
  background:#dfcee4;
  color:#59155f
}

.compare-step-number{
  width:2.75rem;
  height:2.75rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.75rem;
  background:#59155f;
  color:#fff;
  font-size:var(--text-sm);
  line-height:1
}

.compare-migration-card h3{
  font-size:var(--text-h3);
  line-height:var(--leading-heading)
}

.compare-migration-card > p{
  margin-top:var(--space-3);
  color:#5f565f
}

.compare-migration-card ul{
  display:grid;
  gap:var(--space-2);
  margin:var(--space-5) 0 0;
  padding-left:1.2rem
}

.compare-migration-card li{
  color:#4d474e;
  font-size:var(--text-sm)
}

.compare-acceptance{
  margin-top:auto;
  padding-top:var(--space-5)
}

.compare-acceptance span{
  width:fit-content;
  display:inline-flex;
  align-items:center;
  padding:.4em .9em;
  border-radius:999px;
  background:#19151b;
  color:#fff;
  font-size:var(--text-xs);
  line-height:1;
  font-weight:700
}

.compare-acceptance strong{
  display:block;
  margin-top:var(--space-3);
  color:#19151b;
  font-size:var(--text-sm);
  line-height:1.55
}

.compare-addon-table{min-width:0}

.compare-addon-table th:last-child,
.compare-addon-table td:last-child{
  min-width:22rem;
  font-family:var(--font-body)
}

.compare-addon-cards{
  margin-top:var(--space-7);
  align-items:stretch
}

.compare-addon-card{
  min-width:0;
  padding:var(--space-6)
}

.compare-addon-card .c-badge{margin-bottom:var(--space-4)}

.compare-addon-card h3{
  font-size:var(--text-h3);
  line-height:var(--leading-heading)
}

.compare-addon-card p{
  margin-top:var(--space-3);
  color:inherit;
  opacity:.78
}

.compare-addon-foot{
  margin-top:var(--space-6);
  padding-top:var(--space-4);
  border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);
  color:inherit;
  font-size:var(--text-sm);
  line-height:1.5
}

.compare-addon-actions{
  justify-content:flex-start;
  margin-top:var(--space-6)
}

.compare-faq-layout{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  align-items:start;
  gap:var(--space-9)
}

.compare-faq-head{
  margin-bottom:0;
  position:sticky;
  top:8rem
}

.compare-faq-checks{
  display:grid;
  margin-top:var(--space-6)
}

.compare-faq-checks div{
  min-width:0;
  padding-block:var(--space-4);
  display:grid;
  grid-template-columns:minmax(5rem,auto) minmax(0,1fr);
  gap:var(--space-4);
  border-top:1px solid var(--color-line)
}

.compare-faq-checks div:last-child{
  border-bottom:1px solid var(--color-line)
}

.compare-faq-checks strong{
  color:var(--color-ink);
  font-size:var(--text-sm);
  line-height:1.5
}

.compare-faq-checks span{
  min-width:0;
  color:var(--color-muted);
  font-size:var(--text-sm);
  line-height:1.5;
  overflow-wrap:anywhere
}

.compare-faq-list{gap:0}

.compare-faq-list .c-faq{
  padding:var(--space-5) 0;
  border-radius:0;
  border-bottom:1px solid var(--color-line);
  background:var(--color-neutral);
  color:var(--color-ink)
}

.compare-faq-list .c-faq:first-child{
  border-top:1px solid var(--color-line)
}

.compare-faq-list .c-faq summary{
  padding-inline:var(--space-5);
  padding-bottom:var(--space-3)
}

.compare-faq-list .c-faq__body{
  margin-inline:var(--space-5);
  padding:var(--space-4) 0 0;
  border-top:1px solid var(--color-line);
  color:var(--color-muted)
}

.compare-faq-list .c-faq__body p{
  color:var(--color-muted);
  font-size:var(--text-sm)
}

.compare-final-section{
  background:var(--color-paper);
  color:var(--color-ink)
}

.compare-dark-kicker{
  margin-bottom:var(--space-4);
  padding:.45rem .8rem;
  border-radius:999px;
  background:#fff;
  color:#19151b
}

.compare-dark-kicker::before{background:#59155f}

.compare-closing-actions{
  min-width:12rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:var(--space-3)
}

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

.compare-closing-actions .c-btn-ghost{
  border-color:color-mix(in srgb,#fff 45%,transparent);
  color:#fff
}

@media(max-width:64rem){
  .compare-hero-grid{
    grid-template-columns:1fr;
    gap:var(--space-7)
  }

  .compare-selector-stage{
    width:min(100%,42rem);
    height:auto;
    overflow:hidden
  }

  .compare-cost-grid,
  .compare-migration-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .compare-cost-card:last-child,
  .compare-migration-card:last-child{
    grid-column:1/-1
  }

  .compare-cycle-rules{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .compare-cycle-rules div:nth-child(3){
    border-left:0;
    border-top:1px solid var(--color-line)
  }

  .compare-cycle-rules div:nth-child(4){
    border-top:1px solid var(--color-line)
  }

  .compare-faq-layout{
    grid-template-columns:1fr;
    gap:var(--space-7)
  }

  .compare-faq-head{
    position:static;
    max-width:49rem
  }
}

@media(max-width:42rem){
  .compare-hero[data-hero-form="terminal"]{padding-block:var(--hero-pad)}

  .compare-hero-grid{gap:var(--space-6)}

  .compare-hero-stats{
    grid-template-columns:1fr;
    gap:var(--space-4);
    margin-bottom:var(--space-4)
  }

  .compare-hero-stats div,
  .compare-hero-stats div:first-child{
    padding:0 0 var(--space-4);
    border-left:0;
    border-bottom:1px solid var(--color-line)
  }

  .compare-hero-stats div:last-child{
    padding-bottom:0;
    border-bottom:0
  }

  .compare-selector-stage{
    width:min(calc(100% - var(--gutter)*2),100%);
    margin-inline:auto;
    height:auto;
    overflow:hidden;
    transform:none
  }

  .compare-stage-strip,
  .compare-stage-body{
    padding-inline:var(--space-5)
  }

  .compare-stage-record{
    grid-template-columns:2.5rem minmax(0,1fr)
  }

  .compare-stage-record > b{
    grid-column:2;
    justify-self:start
  }

  .compare-section-head{margin-bottom:var(--space-7)}

  .compare-section-head > p{font-size:var(--text-base)}

  .compare-cost-grid,
  .compare-migration-grid,
  .compare-cycle-rules{
    grid-template-columns:1fr
  }

  .compare-cost-card:last-child,
  .compare-migration-card:last-child{
    grid-column:auto
  }

  .compare-cycle-rules div,
  .compare-cycle-rules div:first-child,
  .compare-cycle-rules div:nth-child(3),
  .compare-cycle-rules div:nth-child(4){
    border-left:0;
    border-top:1px solid var(--color-line)
  }

  .compare-cycle-rules div:first-child{border-top:0}

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

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

  .compare-faq-checks div{
    grid-template-columns:1fr;
    gap:var(--space-2)
  }

  .compare-faq-list .c-faq summary{
    padding-inline:var(--space-4)
  }

  .compare-faq-list .c-faq__body{
    margin-inline:var(--space-4)
  }

  .compare-closing-actions{
    width:100%;
    align-items:stretch
  }
}
