:root{
  --pricing-hero-space:clamp(68px,8vw,104px);
  --pricing-hero-copy:920px;
  --pricing-band-gap:18px;
  --pricing-card-gap:20px;
  --pricing-panel-padding:clamp(22px,4vw,38px);
  --pricing-icon-size:54px;
  --pricing-table-min:920px;
  --pricing-copy-narrow:760px;
  --pricing-border-width:1px;
  --pricing-accent-width:5px;
  --pricing-section-gap:28px;
  --pricing-panel-min:320px;
  --pricing-fact-label-size:11px;
  --pricing-summary-size:15px;
  --pricing-small-size:13px;
}
.pricing-hero{
  position:relative;
  overflow-x:clip;
  padding-top:var(--pricing-hero-space);
  padding-bottom:var(--pricing-hero-space);
}
.pricing-hero::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:100%;
  background:
    radial-gradient(circle at 18% 12%,var(--color-wash-orange),transparent 38%),
    radial-gradient(circle at 82% 18%,var(--color-wash-blue),transparent 40%),
    linear-gradient(90deg,var(--color-wash-pink),var(--color-wash-violet));
  mask-image:linear-gradient(var(--color-black),transparent);
  pointer-events:none;
}
.pricing-hero-inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.pricing-hero h1{
  max-width:var(--pricing-hero-copy);
  margin-top:18px;
  margin-bottom:0;
  color:transparent;
  background:var(--gradient-brand);
  background-clip:text;
  -webkit-background-clip:text;
}
.pricing-hero .hero-sub{
  max-width:var(--pricing-hero-copy);
}
.pricing-fact-band{
  display:grid;
  width:100%;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--pricing-band-gap);
  margin-top:34px;
  padding:var(--pricing-panel-padding);
  border:var(--pricing-border-width) solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-panel);
  box-shadow:var(--shadow-panel);
  text-align:left;
}
.pricing-fact-band > div{
  min-width:0;
  padding-left:18px;
  border-left:var(--pricing-accent-width) solid var(--color-accent);
}
.pricing-fact-band strong{
  display:block;
  overflow-wrap:anywhere;
  font-size:15px;
}
.pricing-fact-label{
  display:block;
  margin-bottom:5px;
  color:var(--color-muted);
  font-family:var(--font-mono);
  font-size:var(--pricing-fact-label-size);
  font-weight:700;
}
.plan-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  max-width:100%;
  margin-bottom:30px;
}
.plan-panel-head > div{
  min-width:0;
  max-width:var(--pricing-copy-narrow);
}
.plan-panel-head h3{
  margin-bottom:8px;
}
.plan-panel-head p{
  margin-bottom:0;
  color:var(--color-muted);
}
.price-summary{
  color:var(--color-muted);
  font-size:var(--pricing-summary-size);
}
.price-card .price-features{
  margin-top:auto;
}
.price-card .price-features + .btn{
  margin-top:0;
}
.pricing-soft-section{
  background:linear-gradient(180deg,var(--color-panel-soft),var(--color-bg));
}
.included-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--pricing-card-gap);
}
.included-card{
  position:relative;
  min-width:0;
  padding:var(--pricing-panel-padding);
  overflow:hidden;
  border:var(--pricing-border-width) solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-panel);
  box-shadow:var(--shadow-float);
}
.included-card::after{
  content:"";
  position:absolute;
  right:-20%;
  bottom:-40%;
  width:55%;
  aspect-ratio:1;
  border-radius:50%;
  background:var(--gradient-violet);
  filter:blur(28px);
  pointer-events:none;
}
.included-card h3,
.included-card p,
.included-icon{
  position:relative;
  z-index:1;
}
.included-card h3{
  font-size:23px;
}
.included-card p{
  margin-bottom:0;
  color:var(--color-muted);
}
.included-icon{
  display:grid;
  width:var(--pricing-icon-size);
  height:var(--pricing-icon-size);
  margin-bottom:18px;
  place-items:center;
  border-radius:var(--radius-md);
  background:var(--color-tint-blue);
  color:var(--color-accent);
}
.platform-note{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  margin-top:var(--pricing-section-gap);
  padding:24px;
  border:var(--pricing-border-width) solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-panel);
  box-shadow:var(--shadow-float);
}
.platform-note strong{
  color:var(--color-accent);
}
.platform-note p{
  min-width:0;
  margin:0;
  color:var(--color-muted);
}
.compare-table{
  min-width:var(--pricing-table-min);
}
.payment-refund-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(var(--pricing-panel-min),1fr));
  gap:var(--pricing-section-gap);
}
.payment-panel,
.refund-panel{
  min-width:0;
  padding:var(--pricing-panel-padding);
}
.payment-panel h2,
.refund-panel h2{
  font-size:clamp(30px,4vw,44px);
}
.payment-panel p,
.refund-panel p{
  color:var(--color-muted);
}
.payment-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:24px 0;
}
.refund-panel{
  background:linear-gradient(145deg,var(--color-panel),var(--color-tint-violet));
}
.refund-badge{
  display:inline-flex;
  align-items:center;
  margin-bottom:20px;
  padding:8px 14px;
  border-radius:var(--radius-pill);
  background:var(--color-text);
  color:var(--color-white);
  font-family:var(--font-mono);
  font-size:var(--pricing-small-size);
  font-weight:800;
}
.faq-wrap{
  max-width:calc(var(--pricing-copy-narrow) + var(--gutter) * 2);
}
.faq-wrap .end-promo{
  max-width:var(--content-width);
}
@media (max-width:840px){
  .pricing-fact-band{
    grid-template-columns:1fr;
  }
  .pricing-fact-band > div{
    padding-top:10px;
    padding-bottom:10px;
  }
  .included-layout,
  .payment-refund-grid{
    grid-template-columns:1fr;
  }
  .platform-note{
    grid-template-columns:1fr;
  }
  .platform-note .btn{
    width:max-content;
  }
}
@media (max-width:640px){
  .pricing-hero{
    padding-top:64px;
    padding-bottom:64px;
  }
  .pricing-fact-band{
    padding:20px;
  }
  .plan-panel-head{
    flex-direction:column;
  }
  .included-card{
    padding:22px;
  }
  .platform-note .btn{
    width:100%;
  }
  .payment-panel,
  .refund-panel{
    padding:22px;
  }
}