.plans-hero{
  padding-block:var(--vm-space-5) var(--vm-space-6);
  color:var(--vm-ink);
  background:var(--vm-paper)
}

.plans-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(22rem,.96fr);
  gap:var(--vm-space-5);
  align-items:start
}

.plans-hero-grid>*{
  min-width:0
}

.plans-hero-copy{
  display:grid;
  gap:var(--vm-space-2);
  align-items:start
}

.plans-hero-copy h1{
  max-width:18ch;
  font-size:clamp(2.4rem,4.8vw,3.15rem);
  line-height:1.16
}

.plans-hero-lead{
  max-width:42rem;
  font-size:var(--vm-fs-3);
  line-height:1.55
}

.plans-hero-note{
  max-width:43rem;
  color:var(--vm-muted)
}

.plans-hero-copy .c-actions{
  margin-top:var(--vm-space-2);
  justify-content:flex-start
}

.plans-hero-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:var(--vm-space-3) 0 0;
  padding:var(--vm-space-2) 0 0;
  border-top:1px solid var(--vm-line-soft)
}

.plans-hero-stats div{
  min-width:0;
  padding-inline:var(--vm-space-2)
}

.plans-hero-stats div:first-child{
  padding-left:0
}

.plans-hero-stats div+div{
  border-left:1px solid var(--vm-line-soft)
}

.plans-hero-stats dt{
  font-size:var(--vm-fs-3)
}

.plans-hero-stats dd{
  margin-top:.375rem;
  color:var(--vm-muted)
}

.plans-hero-stage{
  min-width:0;
  height:clamp(28rem,42vw,32rem);
  padding:var(--vm-space-2);
  color:#FFFDF8;
  background:#20242B;
  border-radius:var(--vm-radius-lg);
  box-shadow:var(--vm-shadow)
}

.plans-run-sheet{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  color:#20242B;
  background:#FFFDF8;
  border-radius:var(--vm-radius-md)
}

.plans-run-sheet-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  padding:var(--vm-space-2) var(--vm-space-3);
  color:#20242B;
  background:#FFB21A;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-1);
  font-weight:700
}

.plans-run-sheet-head .c-badge{
  flex:0 0 auto
}

.plans-run-sheet-model{
  display:grid;
  grid-template-columns:minmax(0,1fr) 5rem;
  gap:var(--vm-space-2);
  align-items:center;
  padding:var(--vm-space-3)
}

.plans-run-sheet-model div{
  min-width:0
}

.plans-run-sheet-model small{
  display:block;
  color:#656A72
}

.plans-run-sheet-model strong{
  display:block;
  margin-top:.375rem;
  font-size:var(--vm-fs-4);
  overflow-wrap:anywhere
}

.plans-sundial{
  position:relative;
  width:5rem;
  height:5rem;
  border-radius:50%;
  background:#FFE6A8
}

.plans-sundial::before{
  content:"";
  position:absolute;
  inset:.75rem;
  border-radius:50%;
  background:#FFB21A
}

.plans-sundial span{
  position:absolute;
  left:50%;
  bottom:50%;
  z-index:1;
  width:.25rem;
  height:2rem;
  background:#20242B;
  transform-origin:bottom;
  transform:rotate(32deg)
}

.plans-run-sheet-specs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  padding-inline:var(--vm-space-3)
}

.plans-run-sheet-specs div{
  min-width:0;
  padding:var(--vm-space-2) 0;
  border-top:1px solid var(--vm-line-soft)
}

.plans-run-sheet-specs div:nth-child(odd){
  padding-right:var(--vm-space-2)
}

.plans-run-sheet-specs div:nth-child(even){
  padding-left:var(--vm-space-2)
}

.plans-run-sheet-specs dt{
  color:#656A72;
  font-size:var(--vm-fs-0)
}

.plans-run-sheet-specs dd{
  margin-top:.375rem;
  color:#20242B;
  font-family:var(--vm-font-heading);
  font-weight:700
}

.plans-run-sheet-route{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.5rem;
  margin:var(--vm-space-2) var(--vm-space-3)
}

.plans-run-sheet-route span{
  min-width:0;
  padding:.55rem .35rem;
  color:#20242B;
  background:#F6F1E7;
  border-radius:var(--vm-radius-sm);
  font-family:var(--vm-font-mono);
  font-size:var(--vm-fs-1);
  text-align:center
}

.plans-run-sheet-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  margin-top:auto;
  padding:var(--vm-space-3);
  color:#FFFDF8;
  background:#20242B
}

.plans-run-sheet-foot strong{
  color:#FFB21A;
  font-size:var(--vm-fs-3)
}

.plans-section-head{
  margin-bottom:var(--vm-space-4)
}

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

.plans-section-head>p{
  max-width:39rem;
  color:var(--vm-muted)
}

.plans-heading-stack{
  display:grid;
  gap:.5rem;
  align-items:start
}

.plans-heading-stack .c-kicker,
.plans-addon-head .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.plans-primary-card{
  display:grid;
  gap:var(--vm-space-3);
  box-shadow:var(--vm-shadow-soft)
}

.plans-primary-summary{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:var(--vm-space-4);
  align-items:start
}

.plans-primary-summary h3{
  font-size:var(--vm-fs-5)
}

.plans-primary-summary p{
  color:var(--vm-muted)
}

.plans-spec-list{
  display:grid;
  gap:.625rem;
  margin:0;
  padding:0;
  list-style:none
}

.plans-spec-list li{
  position:relative;
  min-width:0;
  padding-left:1.5rem
}

.plans-spec-list li::before{
  content:"";
  position:absolute;
  top:.62em;
  left:0;
  width:.5rem;
  height:.5rem;
  border-radius:50%;
  background:var(--vm-amber)
}

.c-price-cell span{
  display:block;
  margin-top:.5rem;
  color:var(--vm-muted);
  font-size:var(--vm-fs-0);
  line-height:1.5
}

.plans-card-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-3);
  padding-top:var(--vm-space-3);
  border-top:1px solid var(--vm-line-soft)
}

.plans-card-action p{
  max-width:44rem;
  color:var(--vm-muted)
}

.plans-card-action .c-btn{
  flex:0 0 auto
}

.plans-cycle-table{
  min-width:48rem
}

.plans-cycle-table caption,
.plans-region-table caption{
  padding:0 0 var(--vm-space-2);
  color:var(--vm-muted);
  font-size:var(--vm-fs-1);
  text-align:left
}

.plans-cycle-table th:nth-child(2),
.plans-cycle-table td:nth-child(2){
  text-align:left
}

.plans-cycle-note{
  display:flex;
  align-items:flex-start;
  gap:.5rem;
  margin-top:var(--vm-space-3)
}

.plans-cycle-note strong{
  flex:0 0 auto
}

.plans-kicker-ink{
  color:#20242B
}

.plans-kicker-amber{
  color:#FFB21A
}

.plans-addon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));
  gap:var(--vm-space-2);
  align-items:start
}

.plans-addon-card{
  min-width:0;
  padding:var(--vm-space-3);
  color:#20242B;
  background:#FFFDF8;
  border-radius:var(--vm-radius-md)
}

.plans-addon-head{
  display:grid;
  gap:.5rem
}

.plans-addon-head p{
  color:#656A72
}

.plans-addon-prices{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:var(--vm-space-3) 0 0
}

.plans-addon-prices div{
  min-width:0;
  padding:var(--vm-space-2) 0;
  border-top:1px solid var(--vm-line-soft)
}

.plans-addon-prices div:nth-child(odd){
  padding-right:var(--vm-space-2)
}

.plans-addon-prices div:nth-child(even){
  padding-left:var(--vm-space-2)
}

.plans-addon-prices dt{
  color:#656A72;
  font-size:var(--vm-fs-0)
}

.plans-addon-prices dd{
  margin-top:.375rem;
  color:#20242B;
  font-size:var(--vm-fs-3);
  font-weight:700
}

.plans-addon-footnote{
  margin-top:var(--vm-space-3);
  color:#20242B
}

.plans-section-head-dark h2{
  color:#FFFDF8
}

.plans-section-head-dark>p{
  color:#C4C8CF
}

.plans-billing-layout{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(18rem,.92fr);
  gap:var(--vm-space-3);
  align-items:stretch
}

.plans-billing-layout>*{
  min-width:0
}

.plans-invoice{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  color:#20242B;
  background:#FFFDF8;
  border-radius:var(--vm-radius-lg)
}

.plans-invoice-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  color:#20242B;
  background:#FFB21A
}

.plans-invoice-head div{
  min-width:0
}

.plans-invoice-head small{
  display:block;
  color:#20242B
}

.plans-invoice-head h3{
  margin-top:.375rem;
  color:#20242B
}

.plans-invoice-lines{
  margin:0;
  padding-inline:var(--vm-space-3)
}

.plans-invoice-lines div{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(6rem,auto);
  gap:var(--vm-space-2);
  align-items:center;
  padding-block:var(--vm-space-2);
  border-bottom:1px solid var(--vm-line-soft)
}

.plans-invoice-lines dt,
.plans-invoice-lines dd{
  min-width:0;
  color:#20242B
}

.plans-invoice-lines dd{
  text-align:right;
  overflow-wrap:anywhere
}

.plans-invoice-total{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  margin-top:auto;
  padding:var(--vm-space-3);
  color:#FFFDF8;
  background:#2B3039
}

.plans-invoice-total strong{
  color:#FFB21A;
  font-size:var(--vm-fs-3);
  text-align:right
}

.plans-billing-notes{
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:var(--vm-space-2)
}

.plans-billing-notes article{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  align-items:start;
  padding:var(--vm-space-3);
  color:#20242B;
  background:#F6F1E7;
  border-radius:var(--vm-radius-md)
}

.plans-billing-notes article div{
  min-width:0
}

.plans-billing-notes h3{
  color:#20242B;
  font-size:var(--vm-fs-3)
}

.plans-billing-notes p{
  margin-top:.5rem;
  color:#656A72
}

.plans-note-index{
  width:2rem;
  height:2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#20242B;
  background:#FFB21A;
  border-radius:50%;
  line-height:1
}

.plans-check-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));
  gap:var(--vm-space-2);
  align-items:start
}

.plans-check-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  align-items:start;
  min-width:0;
  padding:var(--vm-space-3);
  color:#20242B;
  background:#F6F1E7;
  border-radius:var(--vm-radius-md)
}

.plans-check-card svg{
  width:1.5rem;
  height:1.5rem;
  color:var(--vm-orange);
  flex:0 0 auto
}

.plans-check-card div{
  display:grid;
  gap:.5rem;
  min-width:0
}

.plans-check-card h3{
  color:#20242B;
  font-size:var(--vm-fs-3)
}

.plans-check-card p{
  color:#656A72
}

.plans-region-table{
  min-width:52rem
}

.plans-region-table th,
.plans-region-table td{
  text-align:center
}

.plans-region-table th:first-child,
.plans-region-table td:first-child{
  text-align:left
}

.plans-region-table small{
  color:var(--vm-muted);
  font-weight:400
}

.plans-region-table .c-badge{
  margin-inline:auto
}

.plans-region-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));
  gap:var(--vm-space-2);
  margin-top:var(--vm-space-3)
}

.plans-region-link{
  display:grid;
  gap:.375rem;
  min-width:0;
  padding:var(--vm-space-2);
  color:#20242B;
  background:#FFFDF8;
  border-radius:var(--vm-radius-md);
  transition:background-color .2s,transform .2s var(--vm-ease)
}

.plans-region-link:hover{
  background:#FFF5D9;
  transform:translateY(-2px)
}

.plans-region-link strong{
  font-family:var(--vm-font-heading)
}

.plans-region-link span{
  color:#656A72;
  font-size:var(--vm-fs-1)
}

.plans-payment-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(20rem,.85fr);
  gap:var(--vm-space-5);
  align-items:stretch
}

.plans-payment-layout>*{
  min-width:0
}

.plans-payment-copy{
  display:grid;
  gap:var(--vm-space-2);
  align-content:start;
  color:#20242B
}

.plans-payment-copy h2,
.plans-payment-copy p{
  color:#20242B
}

.plans-payment-copy .c-actions{
  justify-content:flex-start;
  margin-top:var(--vm-space-2)
}

.plans-payment-steps{
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:var(--vm-space-2)
}

.plans-payment-steps article{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  align-items:start;
  padding:var(--vm-space-3);
  color:#20242B;
  background:#FFFDF8;
  border-radius:var(--vm-radius-md)
}

.plans-payment-steps article>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  color:#FFFDF8;
  background:#20242B;
  border-radius:50%;
  line-height:1
}

.plans-payment-steps article div{
  display:grid;
  gap:.5rem;
  min-width:0
}

.plans-payment-steps h3{
  color:#20242B;
  font-size:var(--vm-fs-3)
}

.plans-payment-steps p{
  color:#656A72
}

.plans-faq{
  display:grid;
  gap:0
}

.plans-faq .c-faq{
  color:#20242B;
  background:#FFFDF8;
  border-radius:0;
  border-bottom:1px solid var(--vm-line-soft)
}

.plans-faq .c-faq:first-child{
  border-top:1px solid var(--vm-line-soft)
}

.plans-faq .c-faq-body{
  padding:1rem 1.5rem 1.5rem;
  color:#656A72;
  background:#FFFDF8;
  border-top:1px solid var(--vm-line-soft)
}

.plans-faq .c-faq-body p{
  max-width:62rem;
  color:#656A72
}

.plans-closing-section{
  padding-bottom:var(--vm-space-5)
}

.plans-closing-copy{
  display:grid;
  gap:.5rem;
  min-width:0;
  max-width:43rem
}

.plans-closing-copy h2{
  color:#FFFDF8
}

.plans-closing-copy p{
  color:#C4C8CF
}

.plans-closing-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:.625rem;
  flex:0 0 auto
}

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

.plans-closing-actions .c-btn-ghost{
  color:#FFFDF8;
  border-color:rgba(255,255,255,.45)
}

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

  .plans-hero-copy h1{
    max-width:22ch
  }

  .plans-hero-stage{
    width:100%;
    height:auto;
    min-height:30rem;
    overflow:visible
  }

  .plans-run-sheet{
    height:auto;
    min-height:28rem
  }

  .plans-primary-summary,
  .plans-billing-layout,
  .plans-payment-layout{
    grid-template-columns:1fr
  }

  .plans-billing-notes,
  .plans-payment-steps{
    grid-template-rows:none
  }
}

@media (max-width:44rem){
  .plans-hero{
    padding-block:var(--vm-space-5)
  }

  .plans-hero-copy h1{
    max-width:none;
    font-size:clamp(2.15rem,11vw,2.8rem)
  }

  .plans-hero-copy .c-actions,
  .plans-payment-copy .c-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch
  }

  .plans-hero-copy .c-btn,
  .plans-payment-copy .c-btn{
    width:100%
  }

  .plans-hero-stats{
    grid-template-columns:1fr
  }

  .plans-hero-stats div{
    padding:var(--vm-space-2) 0
  }

  .plans-hero-stats div+div{
    border-top:1px solid var(--vm-line-soft);
    border-left:0
  }

  .plans-hero-stage{
    min-height:0;
    padding:.75rem
  }

  .plans-run-sheet{
    min-height:0
  }

  .plans-run-sheet-head,
  .plans-run-sheet-foot,
  .plans-card-action,
  .plans-invoice-head,
  .plans-invoice-total{
    align-items:flex-start;
    flex-direction:column
  }

  .plans-run-sheet-model{
    grid-template-columns:minmax(0,1fr) 4rem
  }

  .plans-sundial{
    width:4rem;
    height:4rem
  }

  .plans-run-sheet-specs{
    grid-template-columns:1fr
  }

  .plans-run-sheet-specs div:nth-child(odd),
  .plans-run-sheet-specs div:nth-child(even){
    padding-inline:0
  }

  .plans-run-sheet-route{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .plans-run-sheet-foot strong,
  .plans-invoice-total strong{
    text-align:left
  }

  .plans-primary-card{
    padding:var(--vm-space-3)
  }

  .plans-card-action{
    display:flex
  }

  .plans-card-action .c-btn{
    width:100%
  }

  .plans-cycle-note{
    display:grid
  }

  .plans-cycle-note strong{
    flex:auto
  }

  .plans-addon-prices{
    grid-template-columns:1fr
  }

  .plans-addon-prices div:nth-child(odd),
  .plans-addon-prices div:nth-child(even){
    padding-inline:0
  }

  .plans-invoice-lines div{
    grid-template-columns:1fr
  }

  .plans-invoice-lines dd{
    text-align:left
  }

  .plans-closing-actions{
    width:100%
  }
}

@media (max-width:24rem){
  .plans-run-sheet-model{
    grid-template-columns:1fr
  }

  .plans-sundial{
    display:none
  }

  .plans-run-sheet-route{
    grid-template-columns:1fr
  }

  .plans-billing-notes article,
  .plans-check-card,
  .plans-payment-steps article{
    grid-template-columns:1fr
  }
}
