.pp-hub{max-width:960px;margin:0 auto;padding:0 20px;}
.pp-hero{text-align:center;padding:60px 20px 40px;background:linear-gradient(180deg,#f4f1eb 0%,var(--cream,#FAF8F2) 100%);border-radius:0 0 32px 32px;margin:-20px -20px 40px;}
.pp-hero h1{font-family:var(--font-display,'Cormorant Garamond',Georgia,serif);font-size:clamp(2rem,5vw,2.8rem);font-weight:400;color:var(--green-deep,#1B2660);margin:0 0 12px;line-height:1.2;}
.pp-hero p{font-size:1.05rem;color:var(--text-mid,#3F3F50);max-width:600px;margin:0 auto;line-height:1.6;}

.pp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:0 0 48px;}
.pp-card{background:#fff;border-radius:16px;padding:28px 24px;border:1px solid var(--border,#DFDCee);transition:border-color 0.25s,box-shadow 0.25s;text-decoration:none;display:block;color:inherit;}
.pp-card:hover{border-color:var(--amber,#B8900A);box-shadow:0 8px 30px rgba(184,144,10,0.1);}
.pp-card-emoji{font-size:28px;margin-bottom:10px;display:block;}
.pp-card h3{font-family:var(--font-display,'Cormorant Garamond',Georgia,serif);font-size:1.25rem;font-weight:600;color:var(--text-dark,#1A1A1A);margin:0 0 6px;line-height:1.3;}
.pp-card .pp-hook{font-size:0.92rem;font-weight:500;color:var(--amber,#B8900A);margin:0 0 8px;font-style:italic;}
.pp-card p:last-child{font-size:0.88rem;color:var(--text-light,#78788A);margin:0;line-height:1.55;}
.pp-card .pp-arrow{display:inline-block;margin-top:12px;font-size:0.82rem;font-weight:600;color:var(--green-deep,#1B2660);letter-spacing:0.03em;}

.pp-bottom{text-align:center;padding:40px 20px;background:#fff;border-radius:20px;border:1px solid var(--border,#DFDCee);margin-bottom:40px;}
.pp-bottom h2{font-family:var(--font-display,'Cormorant Garamond',Georgia,serif);font-size:1.5rem;font-weight:400;color:var(--text-dark,#1A1A1A);margin:0 0 8px;}
.pp-bottom p{font-size:0.95rem;color:var(--text-mid,#3F3F50);margin:0 0 20px;}
.pp-bottom a.pp-btn{display:inline-block;background:linear-gradient(135deg,var(--green-deep,#1B2660),var(--green-mid,#293B82));color:#fff;padding:12px 32px;border-radius:10px;font-size:0.92rem;font-weight:600;text-decoration:none;letter-spacing:0.02em;transition:opacity 0.2s;}
.pp-bottom a.pp-btn:hover{opacity:0.88;}
.pp-bottom .pp-ohip{display:block;margin-top:14px;font-size:0.8rem;color:var(--amber,#B8900A);letter-spacing:0.04em;}

/* The theme underlines all content links (.page-content-wrap .entry-content a,
   specificity 0,2,1) which beats .pp-card/.pp-btn (0,1,0) — match it to keep
   the cards and button clean. Prose links elsewhere on the page stay underlined. */
.page-content-wrap .entry-content a.pp-card,
.page-content-wrap .entry-content a.pp-btn{text-decoration:none;}
