/* ════════════════════════════════════
   MEMBERSHIP TIERS — Silver / Golden / Platinum Paw
   "PAW LISTING PLANS" — client-provided design
════════════════════════════════════ */
.ppw-root{
  --paper:#EDE6D6;
  --ink:#3D2B1F;
  --ink-soft:#6B5847;
  --silver:#8A8580;
  --gold:#A8780F;
  --platinum:#2C3E5C;
  --line:#C9BFA8;
  --card-bg:#FBF8F0;

  font-family:'Inter', Arial, sans-serif;
  background:var(--paper);
  background-image:
    radial-gradient(circle at 20% 20%, rgba(61,43,31,0.03) 0%, transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(61,43,31,0.03) 0%, transparent 40%);
  color:var(--ink);
  padding:60px 24px;
  box-sizing:border-box;
}

.ppw-root *{ box-sizing:border-box; }
.ppw-root img{ max-width:none; }

.ppw-eyebrow{
  text-align:center;
  font-size:13px;
  font-weight:600;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin:0 0 10px;
}

.ppw-eyebrow i{ color:var(--gold); margin:0 6px; }

.ppw-headline{
  text-align:center;
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:42px;
  color:var(--ink);
  margin:0 0 8px;
  letter-spacing:-0.01em;
  line-height:1.2;
}

.ppw-subhead{
  text-align:center;
  font-size:15px;
  color:var(--ink-soft);
  max-width:520px;
  margin:0 auto 50px;
  line-height:1.6;
}

.ppw-wrap{
  display:flex;
  max-width:1180px;
  margin:0 auto;
  gap:0;
  align-items:stretch;
}

.ppw-features{
  flex:1.1;
  background:transparent;
}

.ppw-features .ppw-head{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:20px;
  color:var(--ink);
  padding:0 20px 24px;
  height:172px;
  margin:0;
  display:flex;
  align-items:flex-end;
}

.ppw-row{
  padding:17px 20px;
  border-top:1px dashed var(--line);
  font-size:13.5px;
  color:var(--ink-soft);
  display:flex;
  align-items:center;
  height:54px;
  font-weight:500;
  margin:0;
  line-height:normal;
}

.ppw-row.ppw-last{ border-bottom:1px dashed var(--line); }

.ppw-plan{
  flex:1;
  text-align:center;
  background:var(--card-bg);
  position:relative;
  border-radius:16px;
  margin:0 8px;
  box-shadow:0 1px 2px rgba(61,43,31,0.06);
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease;
  border:1px solid var(--line);
}

.ppw-plan:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 32px rgba(61,43,31,0.14);
}

.ppw-plan:hover .ppw-stamp{
  transform:rotate(0deg) scale(1.05);
}

.ppw-plan-head{
  padding:28px 18px 22px;
  border-bottom:1px dashed var(--line);
  height:172px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  position:relative;
}

.ppw-stamp{
  width:46px;
  height:46px;
  border:2px solid currentColor;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  margin-bottom:10px;
  transform:rotate(-8deg);
  transition:transform .35s ease;
}

.ppw-silver-tier .ppw-stamp{ color:var(--silver); }
.ppw-gold-tier .ppw-stamp{ color:var(--gold); }
.ppw-platinum-tier .ppw-stamp{ color:var(--platinum); }

.ppw-plan h2{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:21px;
  color:var(--ink);
  margin:0 0 2px;
  line-height:1.3;
}

.ppw-plan .ppw-tagline{
  font-size:12px;
  color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-weight:600;
}

.ppw-price{
  font-family:'Fraunces', Georgia, serif;
  font-size:34px;
  font-weight:600;
  color:var(--ink);
  margin-top:12px;
}

.ppw-price span{
  font-family:'Inter', Arial, sans-serif;
  font-size:13px;
  font-weight:500;
  color:var(--ink-soft);
}

.ppw-plan .ppw-row{
  justify-content:center;
  font-size:13.5px;
  color:var(--ink);
  font-weight:500;
}

.ppw-check{ color:#3F7A4E; font-size:16px; }
.ppw-cross{ color:#C9BFA8; font-size:16px; }

.ppw-popular{
  background:#FBF8F0;
  border:1.5px solid var(--gold);
  z-index:2;
}

.ppw-ribbon{
  position:absolute;
  top:-13px;
  left:50%;
  transform:translateX(-50%);
  background:var(--gold);
  color:#fff;
  padding:6px 16px;
  font-size:11px;
  font-weight:700;
  letter-spacing:0.06em;
  border-radius:20px;
  text-transform:uppercase;
  box-shadow:0 4px 10px rgba(168,120,15,0.35);
  white-space:nowrap;
}

.ppw-btn{
  display:inline-block;
  margin:24px 0 26px;
  padding:13px 28px;
  border-radius:10px;
  text-decoration:none;
  color:#fff !important;
  font-weight:600;
  font-size:13.5px;
  letter-spacing:0.01em;
  transition:opacity .2s, transform .2s;
  border:none;
}

.ppw-btn:hover{ opacity:0.92; transform:translateY(-1px); color:#fff !important; }

.ppw-silver-btn{ background:var(--silver); }
.ppw-gold-btn{ background:var(--gold); box-shadow:0 6px 16px rgba(168,120,15,0.28); }
.ppw-platinum-btn{ background:var(--platinum); }

@media(max-width:900px){
  .ppw-wrap{ flex-direction:column; gap:18px; }
  .ppw-features{ display:none; }
  .ppw-plan{ margin:0; }
  .ppw-headline{ font-size:32px; }
}

.ppw-selectable {
  cursor: pointer;
  display: block;
}
.ppw-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.ppw-select-pill {
  display: block;
  margin: 24px 0 26px;
  padding: 13px 28px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 13.5px;
  text-align: center;
  transition: opacity .2s, transform .2s, box-shadow .2s;
  color: #fff;
}
.ppw-selectable.ppw-tier-checked {
  box-shadow: 0 0 0 2px var(--gold);
}
.ppw-selectable.ppw-tier-checked .ppw-select-pill::before {
  content: '✓ ';
}

.ppw-continue-wrap {
  text-align: center;
  margin-top: 32px;
}
.ppw-continue-btn {
  background: var(--platinum);
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 14px 40px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: opacity .2s, transform .2s;
}
.ppw-continue-btn:hover { opacity: .9; transform: translateY(-1px); }
.ppw-continue-btn:disabled { opacity: .6; cursor: not-allowed; transform: none; }
