.ptc-wrap{
  --ptc-ink:#1a1210;
  --ptc-muted:#7a706c;
  --ptc-line:#f0e2e0;
  --ptc-card-bg:#ffffff;
  --ptc-accent:#d90429;
  --ptc-accent-2:#ff4d5e;
  --ptc-accent-dark:#a30021;
  --ptc-feat-bg:#fff1f2;
  --ptc-radius:18px;
  max-width:1240px;
  margin:0 auto;
  padding:56px 24px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ptc-ink);
  box-sizing:border-box;
  background:#ffffff;
}
.ptc-wrap *{box-sizing:border-box;}
.ptc-heading{
  text-align:center;
  margin-bottom:48px;
}
.ptc-heading h2{
  font-size:36px;
  font-weight:800;
  margin:0 0 10px;
  letter-spacing:-0.5px;
  background:linear-gradient(135deg,var(--ptc-accent-dark),var(--ptc-accent) 55%,var(--ptc-accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  display:inline-block;
}
.ptc-heading p{
  color:var(--ptc-muted);
  font-size:16px;
  margin:0;
}
.ptc-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  align-items:start;
}
.ptc-card{
  background:var(--ptc-card-bg);
  border:1px solid var(--ptc-line);
  border-radius:var(--ptc-radius);
  padding:30px 26px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-shadow:0 2px 10px rgba(217,4,41,0.05);
  transition:transform .2s ease, box-shadow .2s ease;
}
.ptc-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 32px rgba(217,4,41,0.12);
}
.ptc-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg,var(--ptc-accent-dark),var(--ptc-accent),var(--ptc-accent-2));
  opacity:0;
  transition:opacity .2s ease;
}
.ptc-card:hover::before{opacity:1;}
.ptc-card.ptc-featured{
  border:2px solid var(--ptc-accent);
  background:linear-gradient(180deg,#fff5f6 0%,#ffffff 60%);
  box-shadow:0 20px 44px rgba(217,4,41,0.20);
  transform:scale(1.04);
}
.ptc-card.ptc-featured::before{opacity:1;}
.ptc-card.ptc-featured:hover{
  transform:scale(1.04) translateY(-4px);
}
.ptc-badge{
  position:absolute;
  top:18px;
  right:-40px;
  background:linear-gradient(135deg,var(--ptc-accent-2),var(--ptc-accent-dark));
  color:#fff;
  font-size:12px;
  font-weight:800;
  padding:7px 46px;
  transform:rotate(45deg);
  letter-spacing:0.4px;
  text-transform:uppercase;
  box-shadow:0 4px 10px rgba(163,0,33,0.35);
}
.ptc-plan-name{
  font-size:15px;
  font-weight:700;
  margin:0 0 14px;
  text-transform:uppercase;
  letter-spacing:0.8px;
  color:var(--ptc-accent-dark);
}
.ptc-price-row{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-bottom:4px;
  flex-wrap:wrap;
}
.ptc-price{
  font-size:40px;
  font-weight:800;
  letter-spacing:-0.5px;
  color:var(--ptc-ink);
}
.ptc-period{
  font-size:13px;
  color:var(--ptc-muted);
  font-weight:500;
}
.ptc-tagline{
  font-size:14px;
  color:var(--ptc-muted);
  margin:10px 0 20px;
  line-height:1.5;
}
.ptc-promo{
  background:var(--ptc-feat-bg);
  border-left:3px solid var(--ptc-accent);
  border-radius:8px;
  padding:12px 14px;
  margin-bottom:20px;
}
.ptc-promo strong{
  display:block;
  color:var(--ptc-accent-dark);
  font-size:14px;
}
.ptc-features{
  list-style:none;
  padding:0;
  margin:0 0 24px;
  flex-grow:1;
}
.ptc-features li{
  position:relative;
  padding:9px 0 9px 28px;
  font-size:14px;
  border-bottom:1px solid #faf1f1;
  color:#403936;
}
.ptc-features li:last-child{border-bottom:none;}
.ptc-features li::before{
  content:"\2713";
  position:absolute;
  left:0;
  top:9px;
  width:18px;
  height:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--ptc-accent);
  color:#fff;
  font-size:11px;
  font-weight:700;
}
.ptc-cta{
  display:block;
  text-align:center;
  padding:14px;
  border-radius:10px;
  background:#ffffff;
  color:var(--ptc-accent-dark);
  font-weight:700;
  font-size:15px;
  text-decoration:none;
  border:2px solid var(--ptc-accent);
  cursor:pointer;
  transition:all .18s ease;
}
.ptc-cta:hover{
  background:var(--ptc-accent);
  color:#fff;
  border-color:var(--ptc-accent);
}
.ptc-card.ptc-featured .ptc-cta{
  background:linear-gradient(135deg,var(--ptc-accent),var(--ptc-accent-dark));
  color:#fff;
  border:none;
  box-shadow:0 8px 20px rgba(217,4,41,0.35);
}
.ptc-card.ptc-featured .ptc-cta:hover{
  opacity:0.92;
  background:linear-gradient(135deg,var(--ptc-accent),var(--ptc-accent-dark));
}
@media (max-width:980px){
  .ptc-grid{grid-template-columns:repeat(2,1fr);}
  .ptc-card.ptc-featured{transform:none;}
  .ptc-card.ptc-featured:hover{transform:translateY(-4px);}
}
@media (max-width:600px){
  .ptc-grid{grid-template-columns:1fr;}
}
