/* ── Pay Per Appointment page ── */
#pp-hero{position:relative;padding:170px 24px 70px;overflow:hidden;}
.pp-orb{position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(var(--accent-rgb),.22),transparent 65%);top:-140px;right:-120px;pointer-events:none;}
.pp-orb.b{left:-160px;top:200px;right:auto;background:radial-gradient(circle,rgba(var(--accent-rgb),.13),transparent 65%);}
.pp-inner{max-width:940px;margin:0 auto;text-align:center;position:relative;}
.pp-eyebrow{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-light);border:1px solid var(--border);border-radius:100px;padding:7px 18px;margin-bottom:22px;background:var(--bg-card);}
#pp-hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--accent),var(--accent-light));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pp-sub{max-width:660px;margin:20px auto 0;}
.pp-trust-band{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:38px;}
.pp-trust{display:flex;flex-direction:column;align-items:center;gap:2px;padding:16px 22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);min-width:150px;}
.pp-trust strong{font-family:'Outfit',sans-serif;font-size:1.5rem;color:var(--text);}
.pp-trust span{font-size:.72rem;color:var(--text-secondary);text-align:center;max-width:150px;}

/* two models */
.pp-models-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:44px;text-align:left;}
.pp-model{padding:28px 26px;}
.pp-model h3{font-family:'Outfit',sans-serif;font-size:1.25rem;color:var(--text);margin:0 0 4px;}
.pp-model-tag{font-size:.82rem;color:var(--accent-light);font-weight:600;margin:0 0 16px;}
.pp-model ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;}
.pp-model li{position:relative;padding-left:22px;font-size:.92rem;color:var(--text-secondary);line-height:1.55;}
.pp-model li::before{content:'—';position:absolute;left:0;color:var(--accent-light);}
.pp-model-hl{border-color:var(--accent);}

/* math */
.pp-math-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:44px;text-align:left;}
.pp-math-card{padding:28px 26px;}
.pp-math-label{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);}
.pp-math-calc{font-family:'Outfit',sans-serif;font-size:1rem;color:var(--accent-light);margin-top:14px;}
.pp-math-total{font-family:'Outfit',sans-serif;font-weight:800;font-size:2.4rem;color:var(--text);margin:6px 0 12px;}
.pp-math-total span{font-size:1rem;font-weight:600;color:var(--text-secondary);}
.pp-math-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0;}
.pp-math-hl{border-color:var(--accent);}
.pp-math-note{max-width:640px;margin:34px auto 0;text-align:center;font-size:.95rem;color:var(--text-secondary);border:1px dashed var(--border);border-radius:var(--radius);padding:16px 22px;background:var(--bg-card);}

/* video proof — same facade pattern as /reviews */
.pp-video-wrap{max-width:640px;margin:44px auto 0;}
.pp-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .3s ease,border-color .3s ease;}
.pp-card:hover{transform:translateY(-4px);border-color:var(--accent);}
.pp-embed{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;cursor:pointer;}
.pp-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease,opacity .3s ease;}
.pp-card:hover .pp-poster{transform:scale(1.04);}
.pp-embed::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.5) 100%);opacity:.85;transition:opacity .3s ease;}
.pp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-light));display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 6px 22px rgba(0,0,0,.45);transition:transform .3s ease,box-shadow .3s ease,opacity .3s ease;}
.pp-play svg{width:26px;height:26px;margin-left:3px;}
.pp-card:hover .pp-play{transform:translate(-50%,-50%) scale(1.1);box-shadow:0 8px 28px rgba(var(--accent-rgb),.55);}
.pp-dur{position:absolute;right:10px;bottom:10px;z-index:2;font-size:.72rem;font-weight:600;color:#fff;background:rgba(0,0,0,.65);border-radius:100px;padding:3px 9px;letter-spacing:.02em;transition:opacity .3s ease;}
.pp-embed:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px;}
.pp-embed iframe{position:absolute;inset:0;z-index:3;width:100%;height:100%;border:0;}
.pp-embed.is-playing{cursor:default;}
.pp-embed.is-playing .pp-play,
.pp-embed.is-playing .pp-dur,
.pp-embed.is-playing::after{opacity:0;pointer-events:none;}
.pp-embed.is-playing .pp-poster{opacity:0;}
.pp-card-meta{padding:20px 22px 24px;display:flex;flex-direction:column;gap:4px;text-align:left;}
.pp-stat{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.9rem;color:var(--text);line-height:1.1;}
.pp-stat-sub{font-size:.85rem;color:var(--text-secondary);}
.pp-name{margin-top:10px;font-size:.85rem;font-weight:600;color:var(--text);}
.pp-more-reviews{text-align:center;margin-top:26px;}
.pp-more-reviews a{color:var(--accent-light);font-weight:600;font-size:.92rem;}

/* faq */
.pp-faq-list{display:flex;flex-direction:column;gap:14px;margin-top:44px;max-width:760px;margin-left:auto;margin-right:auto;text-align:left;}
.pp-faq-item{padding:0;overflow:hidden;}
.pp-faq-item summary{cursor:pointer;list-style:none;padding:20px 24px;font-family:'Outfit',sans-serif;font-weight:600;font-size:1rem;color:var(--text);position:relative;padding-right:52px;}
.pp-faq-item summary::-webkit-details-marker{display:none;}
.pp-faq-item summary::after{content:'+';position:absolute;right:24px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--accent-light);transition:transform .25s ease;}
.pp-faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.pp-faq-item p{padding:0 24px 22px;margin:0;font-size:.93rem;color:var(--text-secondary);line-height:1.65;max-width:66ch;}

@media(max-width:640px){
  #pp-hero{padding-top:130px;}
  .pp-trust{min-width:44%;}
  .pp-math-total{font-size:2rem;}
}
@media(prefers-reduced-motion:reduce){
  .pp-card,.pp-poster,.pp-play,.pp-faq-item summary::after{transition:none;}
  .pp-card:hover{transform:none;}
  .pp-card:hover .pp-poster{transform:none;}
  .pp-card:hover .pp-play{transform:translate(-50%,-50%);}
}
