.pr-hero{padding:80px var(--pad-x) 60px}
.pr-hero .eyebrow{margin-bottom:42px}
.pr-hero h1{
  font-family:var(--font-display);
  font-size:clamp(56px,11vw,160px);
  line-height:.86;letter-spacing:-.035em;text-transform:uppercase;
  max-width:12ch;
}
.pr-hero h1 .e{color:var(--ember)}
.pr-hero h1 .out{-webkit-text-stroke:var(--border) var(--bone);color:transparent}
.pr-hero .lead{
  margin-top:42px;max-width:60ch;
  font-family:var(--font-mono);font-size:14px;line-height:1.85;color:var(--steel);
}
.pr-hero .lead b{color:var(--bone);font-weight:500}

.tiers{
  display:grid;grid-template-columns:repeat(3,1fr);
  background:var(--line-d);gap:var(--border);
  border-top:var(--border) solid var(--line-d);
  border-bottom:var(--border) solid var(--line-d);
}
.tier{
  background:var(--graphite);
  padding:48px var(--pad-x) 56px;
  display:flex;flex-direction:column;
  position:relative;
  transition:background var(--dur-fast);
}
.tier:hover{background:var(--graphite-soft)}
.tier.featured{background:var(--graphite-soft);position:relative}
.tier.featured::before{
  content:"— most chosen";
  position:absolute;top:0;left:0;right:0;
  padding:8px 0;text-align:center;
  background:var(--ember);color:var(--graphite);
  font-family:var(--font-mono);font-size:11px;font-weight:600;
  letter-spacing:.3em;text-transform:uppercase;
}
.tier.featured{padding-top:80px}

.tier .name{
  font-family:var(--font-mono);font-size:12px;
  letter-spacing:.3em;text-transform:uppercase;color:var(--ember);
}
.tier h3{
  font-family:var(--font-display);
  font-size:42px;letter-spacing:-.025em;text-transform:uppercase;
  font-weight:400;margin:8px 0 4px;line-height:1;
}
.tier .for{
  font-family:var(--font-mono);font-size:12px;color:var(--slate);
  letter-spacing:.06em;
}

.tier .price{
  margin:32px 0 24px;
  padding-bottom:24px;border-bottom:var(--border) solid var(--line-d);
}
.tier .price .big{
  font-family:var(--font-display);font-weight:400;
  font-size:64px;line-height:.9;letter-spacing:-.035em;color:var(--bone);
}
.tier .price .big .e{color:var(--ember)}
.tier .price .unit{
  font-family:var(--font-mono);font-size:12px;color:var(--slate);
  letter-spacing:.06em;margin-top:8px;
}
.tier .price .unit b{color:var(--steel);font-weight:500}

.tier ul{
  list-style:none;
  font-family:var(--font-mono);font-size:13px;line-height:1.9;
  color:var(--steel);
  flex:1;
}
.tier ul li{padding-left:24px;position:relative}
.tier ul li::before{content:"→";position:absolute;left:0;color:var(--ember);font-weight:500}
.tier ul li b{color:var(--bone);font-weight:500}

.tier .cta{margin-top:32px}
.tier .cta .btn{width:100%;min-width:0}

.calc{
  padding:80px var(--pad-x);
  background:var(--bone);color:var(--graphite);
  border-bottom:var(--border) solid var(--graphite);
}
.calc .frame{
  max-width:1080px;margin:0 auto;
  display:grid;grid-template-columns:1fr 1.4fr;gap:64px;
  align-items:center;
}
.calc .copy h2{
  font-family:var(--font-display);
  font-size:clamp(36px,4.8vw,68px);
  text-transform:uppercase;letter-spacing:-.03em;line-height:.95;
  font-weight:400;
}
.calc .copy h2 .e{color:var(--ember)}
.calc .copy p{
  margin-top:20px;font-family:var(--font-mono);font-size:13px;line-height:1.85;
  color:var(--slate);max-width:38ch;
}
.calc .copy p b{color:var(--graphite);font-weight:500}

.calc .panel{
  background:var(--graphite);color:var(--bone);
  padding:36px;
  border:var(--border) solid var(--graphite);
}
.calc .control{margin-bottom:24px}
.calc .control label{
  display:flex;justify-content:space-between;align-items:baseline;
  font-family:var(--font-mono);font-size:12px;
  text-transform:uppercase;letter-spacing:.16em;color:var(--steel);
  margin-bottom:12px;
}
.calc .control label b{color:var(--ember);font-family:var(--font-display);font-weight:400;font-size:26px;letter-spacing:-.02em}
.calc .control input[type="range"]{
  -webkit-appearance:none;appearance:none;
  width:100%;height:var(--border);
  background:var(--line-d);outline:none;
}
.calc .control input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:18px;height:18px;background:var(--ember);
  cursor:pointer;border-radius:0;
  border:var(--border) solid var(--bone);
}
.calc .control input[type="range"]::-moz-range-thumb{
  width:18px;height:18px;background:var(--ember);
  cursor:pointer;border-radius:0;border:var(--border) solid var(--bone);
}

.calc .out{
  margin-top:32px;padding-top:24px;
  border-top:var(--border) solid var(--line-d);
  display:grid;grid-template-columns:1fr 1fr;gap:24px;
}
.calc .out .row-out{display:flex;flex-direction:column;gap:6px}
.calc .out .lbl{
  font-family:var(--font-mono);font-size:11px;
  color:var(--slate);letter-spacing:.18em;text-transform:uppercase;
}
.calc .out .v{
  font-family:var(--font-display);font-weight:400;
  font-size:42px;line-height:.95;letter-spacing:-.025em;color:var(--bone);
}
.calc .out .v .e{color:var(--ember)}
.calc .out .v small{
  font-family:var(--font-mono);font-size:13px;
  color:var(--slate);letter-spacing:.04em;font-weight:400;
}
.calc .out .v.dd{color:var(--slate);font-size:32px}

.compare{
  padding:60px var(--pad-x);
  background:var(--graphite);
  border-bottom:var(--border) solid var(--line-d);
}
.compare h2{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(32px,4vw,56px);
  text-transform:uppercase;letter-spacing:-.025em;
  margin-bottom:8px;line-height:.95;
}
.compare h2 .e{color:var(--ember)}
.compare .sub{
  font-family:var(--font-mono);font-size:12px;color:var(--slate);
  letter-spacing:.16em;text-transform:uppercase;margin-bottom:36px;
}
.compare table{
  width:100%;border-collapse:collapse;
  font-family:var(--font-mono);font-size:13px;
}
.compare th,.compare td{
  text-align:left;padding:18px 16px;
  border-bottom:var(--border) solid var(--line-d);
}
.compare th{
  font-weight:500;color:var(--slate);
  text-transform:uppercase;letter-spacing:.16em;font-size:11px;
}
.compare th.us{color:var(--ember)}
.compare td{color:var(--steel);vertical-align:top}
.compare td.us{color:var(--bone)}
.compare td.us b{color:var(--ember);font-family:var(--font-display);font-weight:400;font-size:18px;letter-spacing:-.01em}
.compare td b{color:var(--bone);font-weight:500}
.compare .feature{color:var(--bone);font-weight:500}
.compare tr:hover td{background:var(--graphite-soft)}

.faq{
  padding:80px var(--pad-x) 100px;
  background:var(--bone);color:var(--graphite);
  border-bottom:var(--border) solid var(--graphite);
}
.faq h2{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(40px,5vw,72px);
  text-transform:uppercase;letter-spacing:-.03em;line-height:.95;
  margin-bottom:48px;
}
.faq h2 .e{color:var(--ember)}
.faq details{
  border-top:var(--border) solid var(--graphite);
  padding:24px 0;
}
.faq details:last-of-type{border-bottom:var(--border) solid var(--graphite)}
.faq summary{
  list-style:none;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(22px,2.4vw,32px);
  text-transform:uppercase;letter-spacing:-.015em;line-height:1.1;
  padding-right:24px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";
  font-family:var(--font-display);font-size:28px;color:var(--ember);
  margin-left:24px;transition:transform var(--dur-fast) var(--ease);
}
.faq details[open] summary::after{content:"−"}
.faq details[open] summary{color:var(--ember)}
.faq .answer{
  margin-top:18px;font-family:var(--font-mono);
  font-size:13px;line-height:1.85;color:var(--slate);max-width:72ch;
}
.faq .answer b{color:var(--graphite);font-weight:500}
.faq .answer code{
  background:var(--graphite);color:var(--bone);
  padding:2px 8px;font-size:12px;
}

@media (max-width:900px){
  .tiers{grid-template-columns:1fr}
  .calc .frame{grid-template-columns:1fr;gap:32px}
  .calc .out{grid-template-columns:1fr 1fr}
  .compare table{font-size:11px}
  .compare th,.compare td{padding:12px 8px}
}
