.plans-hero{
  padding-block:var(--sm-hero-pad);
  background:#EEF5F6;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,241,232,.96),transparent 34%),
    radial-gradient(circle at 86% 12%,rgba(242,238,250,.94),transparent 36%),
    radial-gradient(circle at 54% 88%,rgba(238,245,246,.98),transparent 42%);
  color:#18252A;
  background-size:140% 140%;
  animation:plans-gradient-shift 18s ease-in-out infinite alternate;
}

.plans-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  align-items:start;
  gap:var(--sm-space-5);
}

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

.plans-hero-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  color:#18252A;
}

.plans-hero-copy .plans-hero-lead,
.plans-hero-copy .plans-hero-stats dt,
.plans-hero-copy .plans-hero-stats dd{
  color:#050708;
}

.plans-hero-copy .c-kicker{
  margin-bottom:var(--sm-space-2);
}

.plans-hero-copy h1{
  max-width:15ch;
  color:#18252A;
  overflow-wrap:anywhere;
}

.plans-hero-lead{
  max-width:42rem;
  margin-top:var(--sm-space-2);
  color:#26373C;
}

.plans-hero-actions{
  justify-content:flex-start;
  margin-top:var(--sm-space-3);
  margin-bottom:var(--sm-space-3);
}

.plans-hero-stats{
  width:100%;
  margin:0;
  padding-top:var(--sm-space-3);
  border-top:1px solid rgba(24,37,42,.13);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--sm-space-2) var(--sm-space-3);
  color:#18252A;
}

.plans-hero-stats div{
  min-width:0;
}

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

.plans-hero-stats dt{
  color:#304147;
}

.plans-hero-stats dd{
  margin-top:.35rem;
  color:#18252A;
  font-weight:700;
}

.plans-stage{
  height:auto;
  min-width:0;
  align-self:start;
  overflow:hidden;
  border-radius:var(--sm-radius-lg);
  background:#FFFFFF;
  color:#18252A;
  box-shadow:var(--sm-shadow-float);
}

.plans-board{
  width:100%;
  overflow:hidden;
  border-radius:var(--sm-radius-lg);
  background:#FFFFFF;
  color:#18252A;
}

.plans-board-head{
  min-width:0;
  padding:var(--sm-space-3);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--sm-space-2);
  background:#18252A;
  color:#F9FBFA;
}

.plans-board-head div{
  min-width:0;
}

.plans-board-head span{
  display:block;
  color:#B8C2C4;
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-0);
  line-height:1.5;
  letter-spacing:.04em;
  overflow-wrap:anywhere;
}

.plans-board-head strong{
  display:block;
  margin-top:.35rem;
  color:#F9FBFA;
  font-family:var(--sm-font-heading);
  font-size:var(--sm-text-3);
  line-height:1.3;
  overflow-wrap:anywhere;
}

.plans-board-head .plans-board-code{
  flex:0 1 auto;
  padding:.4rem .6rem;
  border-radius:var(--sm-radius-sm);
  background:#FFF7D8;
  color:#4B3A08;
  white-space:normal;
  text-align:center;
}

.plans-board-body{
  background:#FFFFFF;
  color:#18252A;
}

.plans-board-route{
  padding:var(--sm-space-2) var(--sm-space-3);
  background:#FFF1E8;
  color:#572B1B;
}

.plans-board-route span{
  display:block;
  color:#744433;
  font-size:var(--sm-text-0);
  line-height:1.5;
}

.plans-board-route strong{
  display:block;
  margin-top:.35rem;
  color:#572B1B;
  font-size:var(--sm-text-1);
  line-height:1.5;
  overflow-wrap:anywhere;
}

.plans-board-row{
  min-width:0;
  padding:var(--sm-space-2) var(--sm-space-3);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:var(--sm-space-2);
  border-bottom:1px solid #E8EBEA;
  background:#FFFFFF;
  color:#18252A;
}

.plans-board-row>div{
  min-width:0;
}

.plans-board-label{
  display:block;
  color:#667278;
  font-size:var(--sm-text-0);
  line-height:1.45;
}

.plans-board-row strong{
  display:block;
  margin-top:.25rem;
  color:#18252A;
  font-size:var(--sm-text-1);
  line-height:1.45;
  overflow-wrap:anywhere;
}

.plans-board-row small{
  display:block;
  margin-top:.25rem;
  color:#667278;
  overflow-wrap:anywhere;
}

.plans-board-period{
  min-width:0;
  color:#18252A;
  font-size:var(--sm-text-1);
  font-weight:700;
  overflow-wrap:anywhere;
}

.plans-board-status,
.plans-stock{
  width:fit-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.38rem .58rem;
  border-radius:999px;
  background:#EAF4F0;
  color:#185844;
  font-size:var(--sm-text-0);
  line-height:1.2;
  font-weight:700;
}

.plans-board-status::before,
.plans-stock::before{
  content:"";
  width:.42rem;
  height:.42rem;
  margin-right:.35rem;
  border-radius:50%;
  background:#27614E;
}

.plans-board-foot{
  padding:var(--sm-space-2) var(--sm-space-3) var(--sm-space-3);
  background:#F2EEFA;
  color:#33284F;
}

.plans-board-foot span{
  display:block;
  color:#5D5175;
  font-size:var(--sm-text-0);
  line-height:1.5;
}

.plans-board-foot strong{
  display:block;
  margin-top:.35rem;
  color:#33284F;
  font-size:var(--sm-text-1);
  line-height:1.5;
  overflow-wrap:anywhere;
}

.plans-section{
  padding-block:var(--sm-section);
}

.plans-section-head{
  max-width:48rem;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.plans-section-head .c-kicker{
  margin-bottom:var(--sm-space-2);
}

.plans-section-head h2{
  color:inherit;
  overflow-wrap:anywhere;
}

.plans-section-head p{
  margin-top:var(--sm-space-1);
  color:inherit;
  opacity:.78;
}

.plans-section-head+.c-price-grid,
.plans-section-head+.table-scroll,
.plans-section-head+.plans-billing-layout,
.plans-section-head+.c-card-grid{
  margin-top:var(--sm-space-4);
}

.plans-price-grid{
  align-items:start;
}

.plans-price-grid>*{
  height:auto;
}

.plans-price-note{
  color:#667278;
  font-size:var(--sm-text-1);
  line-height:1.65;
}

.plans-card-action{
  margin-top:var(--sm-space-3);
}

.plans-spec-table{
  min-width:68rem;
}

.plans-spec-table caption,
.plans-addon-table caption{
  padding:0 0 var(--sm-space-2);
  color:#667278;
  font-size:var(--sm-text-1);
  line-height:1.55;
  text-align:left;
}

.plans-spec-table th,
.plans-spec-table td{
  min-width:7rem;
  text-align:left;
}

.plans-spec-table th:nth-child(5),
.plans-spec-table td:nth-child(5){
  min-width:17rem;
}

.plans-table-note{
  margin-top:var(--sm-space-3);
}

.plans-addon-table{
  min-width:0;
}

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

.plans-addon-table th[data-number],
.plans-addon-table td[data-number]{
  text-align:right;
}

.plans-addon-notes{
  margin-top:var(--sm-space-4);
  align-items:start;
}

.plans-addon-notes>*{
  height:auto;
}

.plans-note-card,
.plans-advice-card,
.plans-rule-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.plans-note-card .c-badge,
.plans-advice-card .c-badge,
.plans-rule-card .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  margin-bottom:var(--sm-space-2);
}

.plans-note-card h3,
.plans-advice-card h3,
.plans-rule-card h3{
  overflow-wrap:anywhere;
}

.plans-note-card h3{
  font-size:var(--sm-text-3);
}

.plans-note-card p,
.plans-advice-card p,
.plans-rule-card p{
  margin-top:var(--sm-space-1);
  color:inherit;
  opacity:.82;
}

.plans-billing-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  align-items:stretch;
  gap:var(--sm-space-3);
}

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

.plans-invoice{
  min-width:0;
  overflow:hidden;
  border-radius:var(--sm-radius-md);
  background:#FFFFFF;
  color:#18252A;
  box-shadow:var(--sm-shadow-soft);
}

.plans-invoice-head{
  min-width:0;
  padding:var(--sm-space-3);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--sm-space-2);
  background:#18252A;
  color:#F9FBFA;
}

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

.plans-invoice-head span{
  display:block;
  color:#B8C2C4;
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-0);
  line-height:1.5;
  overflow-wrap:anywhere;
}

.plans-invoice-head strong{
  display:block;
  margin-top:.35rem;
  color:#F9FBFA;
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-3);
  line-height:1.35;
  overflow-wrap:anywhere;
}

.plans-invoice-head .plans-invoice-state{
  width:fit-content;
  max-width:44%;
  padding:.4rem .6rem;
  border-radius:999px;
  background:#FFF7D8;
  color:#4B3A08;
  font-family:var(--sm-font-body);
  font-weight:700;
  text-align:center;
}

.plans-invoice-meta{
  padding:var(--sm-space-3);
  background:#F2EEFA;
  color:#33284F;
}

.plans-invoice-meta dl{
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--sm-space-2);
}

.plans-invoice-meta dl div,
.plans-invoice-meta dt,
.plans-invoice-meta dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.plans-invoice-meta dt{
  color:#5D5175;
}

.plans-invoice-meta dd{
  margin-top:.3rem;
  color:#33284F;
  font-weight:650;
}

.plans-invoice-lines{
  padding-inline:var(--sm-space-3);
  background:#FFFFFF;
  color:#18252A;
}

.plans-invoice-line{
  min-width:0;
  padding-block:var(--sm-space-2);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--sm-space-2);
  border-bottom:1px solid #E8EBEA;
}

.plans-invoice-line>div,
.plans-invoice-line strong,
.plans-invoice-line span,
.plans-invoice-line b{
  min-width:0;
  overflow-wrap:anywhere;
}

.plans-invoice-line strong{
  display:block;
  color:#18252A;
  font-size:var(--sm-text-1);
  line-height:1.5;
}

.plans-invoice-line span{
  display:block;
  margin-top:.25rem;
  color:#667278;
  font-size:var(--sm-text-0);
  line-height:1.5;
}

.plans-invoice-line b{
  color:#18252A;
  font-size:var(--sm-text-1);
}

.plans-invoice-total{
  min-width:0;
  padding:var(--sm-space-3);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--sm-space-2);
  background:#FFF7D8;
  color:#4B3A08;
}

.plans-invoice-total span,
.plans-invoice-total strong{
  min-width:0;
  overflow-wrap:anywhere;
}

.plans-invoice-total span{
  color:#4B3A08;
  font-size:var(--sm-text-1);
  font-weight:650;
}

.plans-invoice-total strong{
  color:#4B3A08;
  font-size:var(--sm-text-4);
  line-height:1.2;
}

.plans-billing-rules{
  min-width:0;
  display:grid;
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:var(--sm-space-3);
  align-items:stretch;
}

.plans-billing-rules>*{
  min-height:0;
  justify-content:space-between;
  background:#FFFFFF;
  color:#18252A;
}

.plans-rule-card .c-badge,
.plans-rule-card h3,
.plans-rule-card p{
  flex:0 0 auto;
}

.plans-advice-grid{
  align-items:start;
}

.plans-advice-grid>*{
  height:auto;
}

.plans-card-mark{
  width:100%;
  display:flex;
  align-items:center;
  gap:var(--sm-space-1);
  flex-wrap:wrap;
  margin-bottom:var(--sm-space-2);
}

.plans-card-mark .c-badge{
  margin:0;
}

.plans-icon-chip{
  width:2.25rem;
  height:2.25rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--sm-radius-sm);
  background:#FFFFFF;
  color:#075D70;
}

.plans-icon-chip svg{
  width:1.125rem;
  height:1.125rem;
}

.plans-advice-card ul{
  width:100%;
  margin:var(--sm-space-2) 0 0;
  padding-left:1.15rem;
  color:inherit;
}

.plans-advice-card li+li{
  margin-top:.4rem;
}

.plans-advice-action{
  width:100%;
  margin-top:var(--sm-space-3);
}

.plans-settlement{
  padding:var(--sm-space-4);
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:start;
  gap:var(--sm-space-4);
  border-radius:var(--sm-radius-lg);
  background:#FFF7D8;
  color:#4B3A08;
}

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

.plans-settlement-copy .c-kicker{
  margin-bottom:var(--sm-space-2);
}

.plans-settlement-copy h2{
  color:#4B3A08;
  overflow-wrap:anywhere;
}

.plans-settlement-copy p{
  margin-top:var(--sm-space-1);
  color:#604D16;
}

.plans-payment-list{
  min-width:0;
  display:grid;
  gap:0;
  background:#FFFFFF;
  color:#18252A;
  border-radius:var(--sm-radius-md);
  overflow:hidden;
}

.plans-payment-list div{
  min-width:0;
  padding:var(--sm-space-3);
  background:#FFFFFF;
  color:#18252A;
}

.plans-payment-list div+div{
  border-top:1px solid #E8EBEA;
}

.plans-payment-list span,
.plans-payment-list strong,
.plans-payment-list small{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}

.plans-payment-list span{
  color:#667278;
  font-size:var(--sm-text-0);
  line-height:1.5;
}

.plans-payment-list strong{
  margin-top:.35rem;
  color:#18252A;
  font-size:var(--sm-text-2);
  line-height:1.5;
}

.plans-payment-list small{
  margin-top:.25rem;
  color:#667278;
}

.plans-closing-section{
  padding-top:var(--sm-section);
  padding-bottom:var(--sm-space-4);
  background:#FCFCFB;
  color:#18252A;
}

.plans-closing-section .c-closing{
  background:#18252A;
  color:#F9FBFA;
}

.plans-closing-section .c-closing h2{
  color:#F9FBFA;
}

.plans-closing-section .c-closing p{
  color:#B8C2C4;
}

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

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

.plans-closing-actions .c-btn--primary{
  border-color:#FFFFFF;
  background:#FFFFFF;
  color:#18252A;
}

.plans-closing-actions .c-btn--primary:hover{
  border-color:#EEF5F6;
  background:#EEF5F6;
  color:#18252A;
}

.plans-closing-actions .c-btn--ghost{
  border-color:rgba(249,251,250,.38);
  background:transparent;
  color:#F9FBFA;
}

@keyframes plans-gradient-shift{
  0%{background-position:0% 20%}
  100%{background-position:100% 80%}
}

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

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

  .plans-billing-rules{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
  }

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

@media(max-width:48rem){
  .plans-hero-layout{
    grid-template-columns:minmax(0,1fr);
  }

  .plans-stage,
  .plans-board{
    height:auto;
    overflow:hidden;
  }

  .plans-hero-copy h1{
    max-width:none;
  }

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

@media(max-width:42rem){
  .plans-board-head,
  .plans-invoice-head{
    flex-direction:column;
    align-items:flex-start;
  }

  .plans-board-head .plans-board-code,
  .plans-invoice-head .plans-invoice-state{
    max-width:100%;
  }

  .plans-board-row{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
  }

  .plans-board-period,
  .plans-board-status{
    justify-self:start;
  }

  .plans-hero-stats,
  .plans-invoice-meta dl{
    grid-template-columns:minmax(0,1fr);
  }

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

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

  .plans-settlement{
    padding:var(--sm-space-3);
  }

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

@media(max-width:24.375rem){
  .plans-board-head,
  .plans-board-route,
  .plans-board-row,
  .plans-board-foot,
  .plans-invoice-head,
  .plans-invoice-meta,
  .plans-invoice-total,
  .plans-payment-list div{
    padding-inline:var(--sm-space-3);
  }

  .plans-invoice-total strong{
    font-size:var(--sm-text-3);
  }
}

@media(prefers-reduced-motion:reduce){
  .plans-hero{
    animation:none;
  }
}
