.pg-page{
  --pg-bg:#fafbfd;
  --pg-surface:#ffffff;
  --pg-ink:#0a1426;
  --pg-text:#2a3548;
  --pg-muted:#6d7d93;
  --pg-line:rgba(15,29,57,.10);
  --pg-navy:#0f1d39;
  --pg-navy-2:#1f3b73;
  --pg-gold:#d4a02e;
  background:var(--pg-bg);
  color:var(--pg-text);
  padding:48px 0 72px;
}
.pg-shell{ width:min(1100px, calc(100% - 32px)); margin:0 auto; }

.pg-hero{ margin-bottom:40px; }
.pg-hero__label{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.78rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--pg-muted); font-weight:700; margin-bottom:14px;
}
.pg-hero__label::before{
  content:""; width:28px; height:2px; background:var(--pg-gold); border-radius:2px;
}
.pg-hero__title{
  font-size:clamp(2rem, 4.5vw, 2.75rem);
  font-weight:800; color:var(--pg-ink); line-height:1.12;
  letter-spacing:-.02em; margin:0 0 14px;
}
.pg-hero__sub{
  font-size:1.05rem; color:var(--pg-muted); line-height:1.65;
  max-width:62ch; margin:0;
}
.pg-hero__note{
  margin-top:20px; padding:14px 16px;
  background:rgba(31,59,115,.06); border:1px solid var(--pg-line);
  border-radius:12px; font-size:.92rem; color:var(--pg-text); line-height:1.55;
}
.pg-hero__note i{ color:var(--pg-navy-2); margin-right:6px; }

.pg-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}
@media (max-width: 767.98px){
  .pg-grid{ grid-template-columns:1fr; }
}

.pg-card{
  background:var(--pg-surface);
  border:1px solid var(--pg-line);
  border-radius:16px;
  padding:22px 22px 20px;
  display:flex; flex-direction:column; gap:14px;
  box-shadow:0 10px 28px rgba(15,29,57,.05);
  transition:box-shadow .15s ease, border-color .15s ease;
}
.pg-card:hover{
  border-color:rgba(31,59,115,.18);
  box-shadow:0 14px 36px rgba(15,29,57,.08);
}
.pg-card__head{
  display:flex; gap:14px; align-items:flex-start;
}
.pg-card__icon{
  flex:0 0 auto; width:44px; height:44px; border-radius:12px;
  background:rgba(31,59,115,.08); color:var(--pg-navy-2);
  display:flex; align-items:center; justify-content:center; font-size:20px;
}
.pg-card__meta{ min-width:0; flex:1; }
.pg-card__pill{
  display:inline-block; font-size:.68rem; font-weight:700;
  letter-spacing:.02em; padding:3px 10px; border-radius:999px;
  margin-bottom:8px;
}
.pg-card__pill.pill-silver   { background:#eef1f5; color:#475569; }
.pg-card__pill.pill-gold     { background:#fbf3df; color:#a87c1a; }
.pg-card__pill.pill-platinum { background:#eaf0ff; color:#37579f; }
.pg-card__pill.pill-plus     { background:#e6f7f0; color:#0e7c52; }
.pg-card__title{
  font-size:1.12rem; font-weight:800; color:var(--pg-ink);
  line-height:1.25; margin:0 0 6px;
}
.pg-card__desc{
  font-size:.9rem; color:var(--pg-muted); line-height:1.55; margin:0;
}
.pg-card__actions{
  display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; padding-top:4px;
}
.pg-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:10px 16px; border-radius:10px; font-weight:700; font-size:.88rem;
  text-decoration:none; transition:filter .12s ease, background .12s ease;
}
.pg-btn--ghost{
  border:1px solid var(--pg-line); color:var(--pg-navy);
  background:var(--pg-surface);
}
.pg-btn--ghost:hover{ background:rgba(31,59,115,.04); color:var(--pg-navy); }
.pg-btn--primary{
  background:var(--pg-navy-2); border:1px solid var(--pg-navy-2); color:#fff;
}
.pg-btn--primary:hover{ filter:brightness(.95); color:#fff; }
.pg-card__plan-link{
  font-size:.82rem; font-weight:600; color:var(--pg-navy-2);
  text-decoration:none; margin-top:2px;
}
.pg-card__plan-link:hover{ text-decoration:underline; }

.pg-empty{
  text-align:center; padding:48px 24px;
  background:var(--pg-surface); border:1px dashed var(--pg-line);
  border-radius:16px;
}
.pg-empty__title{ font-weight:800; color:var(--pg-ink); margin-bottom:8px; }
.pg-empty__sub{ color:var(--pg-muted); max-width:42ch; margin:0 auto 18px; line-height:1.55; }

.pg-cta{
  margin-top:40px; text-align:center;
  padding:28px 24px; border-radius:16px;
  background:linear-gradient(135deg, rgba(31,59,115,.08), rgba(31,59,115,.03));
  border:1px solid var(--pg-line);
}
.pg-cta__title{ font-weight:800; color:var(--pg-ink); margin-bottom:8px; }
.pg-cta__sub{ color:var(--pg-muted); margin-bottom:16px; }
.pg-cta .pg-btn--primary{ margin:0 6px 8px; }
.pg-cta .pg-btn--ghost{ margin:0 6px 8px; }
