.pricing-hero{
  position:relative;
  border-bottom:1px solid var(--color-border);
  background:var(--color-panel);
}
.pricing-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(var(--color-grid) 1px,transparent 1.4px);
  background-size:22px 22px;
  opacity:.45;
  pointer-events:none;
}
.pricing-hero-inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding-top:76px;
  padding-bottom:76px;
  text-align:center;
}
.pricing-hero h1{
  max-width:850px;
  margin-top:20px;
}
.pricing-lead{
  max-width:730px;
  margin-top:20px;
  color:var(--color-muted);
  font-size:18px;
}
.pricing-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:28px;
}
.pricing-facts{
  display:flex;
  max-width:100%;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:28px;
}
.pricing-facts span{
  padding:7px 13px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-pill);
  background:var(--color-bg);
  color:var(--color-muted);
  font-family:var(--font-mono);
  font-size:12px;
  box-shadow:var(--shadow-chip);
}
.billing-switch-section{
  padding-top:28px;
  padding-bottom:10px;
}
.billing-switch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px 16px 14px 22px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-bg);
  box-shadow:var(--shadow-chip);
}
.billing-switch p{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:baseline;
}
.billing-switch p span{
  color:var(--color-muted);
  font-size:14px;
}
.billing-choice-list{
  display:flex;
  flex:0 0 auto;
  gap:5px;
  padding:5px;
  border-radius:var(--radius-pill);
  background:var(--color-panel);
}
.billing-choice{
  min-height:40px;
  padding:7px 18px;
  border:0;
  border-radius:var(--radius-pill);
  background:transparent;
  color:var(--color-muted);
  font-weight:750;
}
.billing-choice.is-active{
  background:var(--color-bg);
  color:var(--color-text);
  box-shadow:var(--shadow-chip);
}
.section-heading{
  max-width:760px;
  margin-bottom:34px;
}
.section-heading h2{
  margin-top:8px;
}
.section-heading>p:last-child{
  margin-top:14px;
  color:var(--color-muted);
  font-size:17px;
}
.pricing-section{
  padding-top:72px;
}
.monthly-grid .plan-card{
  display:flex;
  flex-direction:column;
}
.monthly-grid .plan-summary{
  min-height:136px;
  margin-top:20px;
  color:var(--color-muted);
}
.monthly-grid .plan-features{
  flex:1;
}
.monthly-grid .plan-action{
  width:100%;
}
.monthly-note{
  margin-top:24px;
}
.traffic-section{
  background:var(--color-panel);
}
.traffic-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.traffic-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:28px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-bg);
  box-shadow:var(--shadow-card);
  transform-style:preserve-3d;
}
.traffic-volume{
  font-family:var(--font-display);
  font-size:30px;
  font-weight:850;
  line-height:1.1;
}
.traffic-rule{
  margin-top:7px;
  color:var(--color-success);
  font-size:13px;
  font-weight:750;
}
.traffic-price{
  margin-top:26px;
  font-family:var(--font-display);
  font-size:42px;
  font-weight:850;
  line-height:1;
}
.traffic-card>p:not(.traffic-price){
  margin-top:20px;
  color:var(--color-muted);
}
.traffic-card .btn{
  width:100%;
  margin-top:auto;
}
.traffic-card>p:not(.traffic-price)+.btn{
  margin-top:26px;
}
.usage-guidance{
  display:grid;
  grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);
  gap:48px;
  margin-top:30px;
  padding:34px;
}
.usage-guidance h3{
  margin-top:8px;
}
.usage-copy{
  display:grid;
  gap:18px;
  color:var(--color-muted);
}
.usage-copy strong{
  color:var(--color-text);
}
.included-ledger{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid var(--color-border);
}
.included-item{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:18px;
  padding:28px 24px;
  border-bottom:1px solid var(--color-border);
}
.included-item:nth-child(odd){
  border-right:1px solid var(--color-border);
}
.included-index{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:var(--radius-sm);
  background:var(--color-text);
  color:var(--color-white);
  font-family:var(--font-mono);
  font-weight:800;
}
.included-item h3{
  font-size:21px;
}
.included-item p{
  margin-top:9px;
  color:var(--color-muted);
}
.comparison-section{
  background:var(--color-panel);
}
.comparison-caption{
  margin-top:18px;
  color:var(--color-muted);
  font-size:14px;
}
.payment-layout{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:68px;
  align-items:start;
}
.payment-copy{
  position:sticky;
  top:92px;
}
.payment-copy h2{
  margin-top:8px;
}
.payment-copy>p:last-of-type{
  margin-top:16px;
  color:var(--color-muted);
}
.payment-methods{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}
.payment-methods span{
  padding:9px 15px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-pill);
  background:var(--color-panel);
  font-weight:750;
}
.checkout-steps{
  display:grid;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:checkout;
}
.checkout-steps li{
  position:relative;
  min-height:122px;
  padding:4px 0 28px 74px;
  counter-increment:checkout;
  border-bottom:1px solid var(--color-border);
}
.checkout-steps li+li{
  padding-top:28px;
}
.checkout-steps li::before{
  content:counter(checkout);
  position:absolute;
  top:0;
  left:0;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:var(--radius-sm);
  background:var(--color-panel-strong);
  color:var(--color-text);
  font-family:var(--font-mono);
  font-weight:850;
}
.checkout-steps li+li::before{
  top:24px;
}
.checkout-steps strong{
  font-size:20px;
}
.checkout-steps p{
  margin-top:8px;
  color:var(--color-muted);
}
.refund-section{
  padding-top:32px;
  padding-bottom:32px;
}
.refund-panel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  padding:38px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-panel-strong);
  box-shadow:var(--shadow-card);
}
.refund-mark{
  width:78px;
  height:78px;
  display:grid;
  place-items:center;
  border-radius:var(--radius-md);
  background:var(--color-bg);
  color:var(--color-teal);
  box-shadow:var(--shadow-chip);
}
.refund-panel h2{
  margin-top:7px;
}
.refund-panel p:not(.eyebrow){
  margin-top:12px;
  color:var(--color-muted);
}
.faq-section{
  padding-top:72px;
}
.faq-layout{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:64px;
  align-items:start;
}
.faq-heading{
  position:sticky;
  top:92px;
}
.faq-heading h2{
  margin-top:8px;
}
.faq-heading>p:last-child{
  margin-top:16px;
  color:var(--color-muted);
}
.pricing-close{
  padding-top:24px;
  padding-bottom:24px;
}
@media (max-width:980px){
  .traffic-grid{
    grid-template-columns:1fr;
  }
  .monthly-grid .plan-summary{
    min-height:0;
  }
  .payment-layout,
  .faq-layout{
    grid-template-columns:1fr;
    gap:36px;
  }
  .payment-copy,
  .faq-heading{
    position:static;
  }
  .refund-panel{
    grid-template-columns:auto minmax(0,1fr);
  }
  .refund-panel .btn{
    grid-column:2;
    justify-self:start;
  }
}
@media (max-width:768px){
  .pricing-hero-inner{
    padding-top:54px;
    padding-bottom:54px;
  }
  .pricing-lead{
    font-size:16px;
  }
  .pricing-hero-actions{
    width:100%;
    flex-direction:column;
  }
  .billing-switch{
    align-items:flex-start;
    flex-direction:column;
  }
  .billing-choice-list{
    width:100%;
  }
  .billing-choice{
    flex:1;
  }
  .usage-guidance{
    grid-template-columns:1fr;
    gap:24px;
    padding:26px;
  }
  .included-ledger{
    grid-template-columns:1fr;
  }
  .included-item:nth-child(odd){
    border-right:0;
  }
  .refund-panel{
    grid-template-columns:1fr;
    padding:28px;
  }
  .refund-panel .btn{
    grid-column:auto;
    justify-self:stretch;
  }
  .refund-panel h2 .no-break{
    white-space:normal;
  }
  .plan-ribbon{
    position:static;
    display:table;
    margin:0 0 12px auto;
  }
}
@media (max-width:640px){
  .pricing-facts{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
  }
  .pricing-facts span{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
  }
  .billing-choice-list{
    flex-direction:column;
    border-radius:var(--radius-md);
  }
  .traffic-card{
    padding:24px 20px;
  }
  .included-item{
    grid-template-columns:40px minmax(0,1fr);
    gap:14px;
    padding-inline:0;
  }
  .included-index{
    width:38px;
    height:38px;
  }
  .checkout-steps li{
    padding-left:58px;
  }
  .checkout-steps li::before{
    width:40px;
    height:40px;
  }
  .refund-mark{
    width:64px;
    height:64px;
  }
}
@media (max-width:390px){
  .pricing-facts{
    grid-template-columns:1fr;
  }
}